fix dimension generating, change default java path

This commit is contained in:
Bixilon 2021-03-10 15:23:41 +01:00
parent 6c37e8ed42
commit 3d62b167c7
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
2 changed files with 31 additions and 16 deletions

View File

@ -4,6 +4,7 @@ import com.google.gson.JsonObject
import de.bixilon.pixlyzer.generator.Generator
import de.bixilon.pixlyzer.util.ReflectionUtil.getClass
import de.bixilon.pixlyzer.util.ReflectionUtil.getField
import net.minecraft.core.Registry
import net.minecraft.resources.ResourceLocation
import net.minecraft.world.level.dimension.DimensionType
import java.lang.reflect.Modifier
@ -108,6 +109,20 @@ object DimensionGenerator : Generator(
private fun getDimensions(): MutableSet<Triple<ResourceLocation, Int?, DimensionType>> {
val types: MutableSet<Triple<ResourceLocation, Int?, DimensionType>> = mutableSetOf()
val dimensionRegistry = getField(Registry::class.java, "DIMENSION_TYPE")
dimensionRegistry?.get(null)?.let {
check(it is Registry<*>)
val registryGetKeyMethod = Registry::class.java.getDeclaredMethod("getKey", Object::class.java)
val dimensionTypeGetIdMethod = DimensionType::class.java.getDeclaredMethod("getId")
for (entry in it) {
check(entry is DimensionType)
types.add(Triple(registryGetKeyMethod.invoke(it, entry) as ResourceLocation, dimensionTypeGetIdMethod.invoke(entry) as Int, entry))
}
}
if (types.isEmpty()) {
for (field in DimensionType::class.java.declaredFields) {
if (field.type != DimensionType::class.java) {
continue
@ -125,7 +140,7 @@ object DimensionGenerator : Generator(
}
types.add(Triple(resourceLocation, null, field.get(null) as DimensionType))
}
}
if (types.isEmpty()) {
val field = getField(DimensionType::class.java, "BUILTIN") ?: return types

View File

@ -15,7 +15,7 @@ OUT_FOLDER = os.path.abspath("data/version/") + "/"
DATA_FOLDER = os.path.abspath("data/data/") + "/"
MC_REMAPPER_EXECUTABLE = "/home/moritz/Games/Minecraft/MC-Remapper/build/install/MC-Remapper/bin/MC-Remapper"
JAVA_PATH = "/usr/lib/jvm/java-8-openjdk-amd64/bin/java"
JAVA_PATH = "/usr/lib/jvm/graalvm-ce-java11-21.0.0.2/bin/java"
ADDITIONAL_CLASSPATH = "/home/moritz/kotlin-stdlib-1.4.30.jar:/home/moritz/Games/Minecraft/PixLyzer/wrapper/data/objenesis-tck-3.1.jar"
VERSION_MANIFEST_URL = "https://launchermeta.mojang.com/mc/game/version_manifest.json"