diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fe8553f..fb925d2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -23,13 +23,13 @@ stages:
build:
stage: build
script:
- - "cd wrapper && python3 PixLyzer.py --only-version=22w14a --dont-compile --only-map"
+ - "cd wrapper && python3 PixLyzer.py --only-version=22w15a --dont-compile --only-map"
- 'cd ../ && mvn clean $MAVEN_CLI_OPTS verify'
latest:
stage: latest
script:
- - "cd wrapper && python3 PixLyzer.py --only-version=22w14a --dont-compile"
+ - "cd wrapper && python3 PixLyzer.py --only-version=22w15a --dont-compile"
1.18.2:
stage: 1.18.2
diff --git a/pom.xml b/pom.xml
index e8dc940..03833d0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,7 +17,7 @@
1.8
1.8
1.8
- 22w14a
+ 22w15a
@@ -248,9 +248,9 @@
com.mojang
datafixerupper
- 4.1.27
+ 5.0.28
system
- ${project.basedir}/wrapper/data/data/dependencies/libraries/com/mojang/datafixerupper/4.1.27/datafixerupper-4.1.27.jar
+ ${project.basedir}/wrapper/data/data/dependencies/libraries/com/mojang/datafixerupper/5.0.28/datafixerupper-5.0.28.jar
diff --git a/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/BlockGenerator.kt b/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/BlockGenerator.kt
index a3058b3..ffbe2e3 100644
--- a/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/BlockGenerator.kt
+++ b/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/BlockGenerator.kt
@@ -87,13 +87,7 @@ object BlockGenerator : Generator(
}
- val offsetType = OFFSET_TYPE_NAME_METHOD.invoke(BLOCK_GET_OFFSET_TYPE.invoke(block)) as String
- if (offsetType != "NONE") {
- blockData["offset_type"] = offsetType.lowercase(Locale.getDefault())
- BLOCK_GET_MAX_OFFSET?.invoke(block)?.let {
- blockData["max_model_offset"] = it as Float
- }
- }
+ block.putOffsetType(blockData)
if (block::class.java.of("CampfireBlock")) {
block.variable("emitsParticles")?.let {
@@ -205,6 +199,8 @@ object BlockGenerator : Generator(
for (state in stateMap[block]!!) {
val stateData = compound()
+ state.putOffsetType(stateData)
+
if (state.luminance != 0) {
stateData["luminance"] = state.luminance
}
@@ -423,6 +419,20 @@ object BlockGenerator : Generator(
private val EMPTY_BLOCK_POSITION = BlockPos(0, 0, 0)
+ private fun Any.putOffsetType(data: MutableMap) {
+ if ((this is Block && BLOCK_GET_OFFSET_TYPE == null) || (this is BlockState && BLOCK_STATE_OFFSET_FIELD == null)) {
+ return
+ }
+ val type = (BLOCK_GET_OFFSET_TYPE ?: BLOCK_STATE_OFFSET_FIELD)?.invoke(this) ?: return
+ val offsetType = OFFSET_TYPE_NAME_METHOD.invoke(type) as String
+ if (offsetType != "NONE") {
+ data["offset_type"] = offsetType.lowercase(Locale.getDefault())
+ BLOCK_GET_MAX_OFFSET?.invoke(this)?.let {
+ data["max_model_offset"] = it as Float
+ }
+ }
+ }
+
private val BLOCK_STATE_GET_RAYCAST_SHAPE = try {
BlockState::class.java.getMethod("getRaycastShape", World::class.java, BlockPos::class.java)
} catch (exception: Exception) {
@@ -439,7 +449,7 @@ object BlockGenerator : Generator(
private val BLOCK_SETTINGS_FIELD = getField(getClass("net.minecraft.block.AbstractBlock"), "settings")
private val BLOCK_GET_MAX_OFFSET = getGetter(getClass("net.minecraft.block.AbstractBlock"), "getMaxModelOffset")
- private val BLOCK_GET_OFFSET_TYPE = getClass("net.minecraft.block.AbstractBlock", "net.minecraft.block.Block")!!.getMethod("getOffsetType")
+ private val BLOCK_GET_OFFSET_TYPE = getClass("net.minecraft.block.AbstractBlock", "net.minecraft.block.Block")!!.getGetter("getOffsetType")
private val OFFSET_TYPE_NAME_METHOD = getClass("net.minecraft.block.AbstractBlock\$OffsetType", "net.minecraft.block.Block\$OffsetType")!!.getMethod("name")
@@ -480,6 +490,7 @@ object BlockGenerator : Generator(
private val BLOCK_STATE_CACHE_FIELD = BLOCK_STATE_BASE_CLASS.getDeclaredField("shapeCache")
private val REQUIRES_CORRECT_TOOL_FOR_DROP_FIELDS = getField(getClass("net.minecraft.block.AbstractBlock\$AbstractBlockState", "net.minecraft.block.BlockState"), "toolRequired")
+ private val BLOCK_STATE_OFFSET_FIELD = BLOCK_STATE_BASE_CLASS.getGetter("getOffsetType", "method_43280")
private lateinit var BLOCK_STATE_CACHE_CLASS: Class<*>
diff --git a/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/EntityDataDataTypeGenerator.kt b/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/EntityDataDataTypeGenerator.kt
index 729125f..b9bf336 100644
--- a/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/EntityDataDataTypeGenerator.kt
+++ b/src/main/kotlin/de/bixilon/pixlyzer/generator/generators/EntityDataDataTypeGenerator.kt
@@ -56,12 +56,13 @@ object EntityDataDataTypeGenerator : Generator(
"FACING" -> "DIRECTION"
"OPTIONAL_UUID" -> "OPTIONAL_UUID"
"field_38825" -> "GLOBAL_POSITION"
+ "OPTIONAL_GLOBAL_POS" -> "OPTIONAL_GLOBAL_POSITION"
"NBT_COMPOUND", "TAG_COMPOUND" -> "NBT"
"VILLAGER_DATA" -> "VILLAGER_DATA"
"OPTIONAL_INT" -> "OPTIONAL_INTEGER"
"ENTITY_POSE" -> "POSE"
- "field_38826" -> "CAT_VARIANT"
- "field_38827" -> "FROG_VARIANT"
+ "field_38826", "CAT_VARIANT" -> "CAT_VARIANT"
+ "field_38827", "FROG_VARIANT" -> "FROG_VARIANT"
"FIREWORK_DATA", "field_17910" -> "FIREWORK_DATA"
else -> TODO("Unknown meta data type: $this")
}
diff --git a/src/main/resources/entities_metadata_mappings.json b/src/main/resources/entities_metadata_mappings.json
index a50360f..5fab764 100644
--- a/src/main/resources/entities_metadata_mappings.json
+++ b/src/main/resources/entities_metadata_mappings.json
@@ -171,7 +171,8 @@
"LEFT_SHOULDER_ENTITY": "PLAYER_LEFT_SHOULDER_DATA",
"RIGHT_SHOULDER_ENTITY": "PLAYER_RIGHT_SHOULDER_DATA",
"field_38536": "22W13A_PLAYER_CARRIED_BLOCK",
- "field_38745": "PLAYER_LAST_DEATH_POSITION"
+ "field_38745": "PLAYER_LAST_DEATH_POSITION",
+ "LAST_DEATH_POS": "PLAYER_LAST_DEATH_POSITION"
}
},
"BatEntity": {
@@ -224,6 +225,7 @@
"CatEntity": {
"data": {
"CAT_TYPE": "CAT_VARIANT",
+ "CAT_VARIANT": "CAT_VARIANT",
"SLEEPING_WITH_OWNER": "CAT_IS_LYING",
"IN_SLEEPING_POSE": "CAT_IS_LYING",
"HEAD_DOWN": "CAT_IS_RELAXED",
diff --git a/wrapper/pom.py b/wrapper/pom.py
index 224d01b..90e700f 100644
--- a/wrapper/pom.py
+++ b/wrapper/pom.py
@@ -1,4 +1,4 @@
-dependencies = """/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/logging/1.0.0/logging-1.0.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/blocklist/1.0.10/blocklist-1.0.10.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/patchy/2.2.10/patchy-2.2.10.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/github/oshi/oshi-core/5.8.5/oshi-core-5.8.5.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/java/dev/jna/jna/5.10.0/jna-5.10.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/java/dev/jna/jna-platform/5.10.0/jna-platform-5.10.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/slf4j/slf4j-api/1.8.0-beta4/slf4j-api-1.8.0-beta4.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-slf4j18-impl/2.17.0/log4j-slf4j18-impl-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/ibm/icu/icu4j/70.1/icu4j-70.1.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/javabridge/1.2.24/javabridge-1.2.24.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/io/netty/netty-all/4.1.68.Final/netty-all-4.1.68.Final.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/guava/guava/31.0.1-jre/guava-31.0.1-jre.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/brigadier/1.0.18/brigadier-1.0.18.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/datafixerupper/4.1.27/datafixerupper-4.1.27.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/code/gson/gson/2.8.9/gson-2.8.9.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/authlib/3.3.39/authlib-3.3.39.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/httpcomponents/httpcore/4.4.14/httpcore-4.4.14.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/it/unimi/dsi/fastutil/8.5.6/fastutil-8.5.6.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-api/2.17.0/log4j-api-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-core/2.17.0/log4j-core-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/text2speech/1.13.9/text2speech-1.13.9.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/text2speech/1.13.9/text2speech-1.13.9-natives-linux.jar"""
+dependencies = """/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/logging/1.0.0/logging-1.0.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/blocklist/1.0.10/blocklist-1.0.10.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/patchy/2.2.10/patchy-2.2.10.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/github/oshi/oshi-core/5.8.5/oshi-core-5.8.5.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/java/dev/jna/jna/5.10.0/jna-5.10.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/java/dev/jna/jna-platform/5.10.0/jna-platform-5.10.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/slf4j/slf4j-api/1.8.0-beta4/slf4j-api-1.8.0-beta4.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-slf4j18-impl/2.17.0/log4j-slf4j18-impl-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/ibm/icu/icu4j/70.1/icu4j-70.1.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/javabridge/1.2.24/javabridge-1.2.24.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/io/netty/netty-all/4.1.68.Final/netty-all-4.1.68.Final.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/guava/guava/31.0.1-jre/guava-31.0.1-jre.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/brigadier/1.0.18/brigadier-1.0.18.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/datafixerupper/5.0.28/datafixerupper-5.0.28.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/google/code/gson/gson/2.8.9/gson-2.8.9.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/authlib/3.3.39/authlib-3.3.39.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/httpcomponents/httpcore/4.4.14/httpcore-4.4.14.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/it/unimi/dsi/fastutil/8.5.6/fastutil-8.5.6.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-api/2.17.0/log4j-api-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/apache/logging/log4j/log4j-core/2.17.0/log4j-core-2.17.0.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-linux.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/text2speech/1.13.9/text2speech-1.13.9.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/com/mojang/text2speech/1.13.9/text2speech-1.13.9-natives-linux.jar"""
dependencies = dependencies.replace("/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/data/dependencies/libraries/", "")
out = ""