mirror of
https://gitlab.bixilon.de/bixilon/pixlyzer.git
synced 2025-09-27 14:10:01 -04:00
port to 1.17
This commit is contained in:
parent
42c3285643
commit
c6bebbbd94
@ -14,9 +14,10 @@ import de.bixilon.pixlyzer.util.ReflectionUtil.invoke
|
|||||||
import de.bixilon.pixlyzer.util.ReflectionUtil.variable
|
import de.bixilon.pixlyzer.util.ReflectionUtil.variable
|
||||||
import de.bixilon.pixlyzer.util.Util
|
import de.bixilon.pixlyzer.util.Util
|
||||||
import net.minecraft.Bootstrap
|
import net.minecraft.Bootstrap
|
||||||
import net.minecraft.tag.ItemTags
|
import net.minecraft.tag.*
|
||||||
import net.minecraft.util.registry.Registry
|
import net.minecraft.util.registry.Registry
|
||||||
import java.io.*
|
import java.io.*
|
||||||
|
import java.lang.reflect.Field
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.zip.GZIPOutputStream
|
import java.util.zip.GZIPOutputStream
|
||||||
|
|
||||||
@ -29,6 +30,13 @@ object PixLyzer {
|
|||||||
lateinit var outputDirectory: File
|
lateinit var outputDirectory: File
|
||||||
|
|
||||||
|
|
||||||
|
private fun initializeTags(tags: Field) {
|
||||||
|
val list = tags.get(null)?.variable<Iterable<Any>>("tags") ?: return
|
||||||
|
for (tag in list) {
|
||||||
|
getField(tag::class.java, "delegate")!!.set(tag, TAG_CLASS!!.invoke("of", arrayOf(Set::class.java), arrayOf(setOf<Any>())))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun main(args: Array<String>) {
|
fun main(args: Array<String>) {
|
||||||
println("Starting PixLyzer")
|
println("Starting PixLyzer")
|
||||||
@ -69,11 +77,11 @@ object PixLyzer {
|
|||||||
|
|
||||||
Util.forceClassInit(Registry::class.java)
|
Util.forceClassInit(Registry::class.java)
|
||||||
|
|
||||||
getField(ItemTags::class.java, "REQUIRED_TAGS")?.get(null)?.variable<Iterable<Any>>("tags")?.let {
|
getField(FluidTags::class.java, "REQUIRED_TAGS")?.let { initializeTags(it) }
|
||||||
for (tag in it) {
|
getField(ItemTags::class.java, "REQUIRED_TAGS")?.let { initializeTags(it) }
|
||||||
getField(tag::class.java, "delegate")!!.set(tag, TAG_CLASS!!.invoke("of", arrayOf(Set::class.java), arrayOf(setOf<Any>())))
|
getField(BlockTags::class.java, "REQUIRED_TAGS")?.let { initializeTags(it) }
|
||||||
}
|
getField(GameEventTags::class.java, "REQUIRED_TAGS")?.let { initializeTags(it) }
|
||||||
}
|
getField(EntityTypeTags::class.java, "REQUIRED_TAGS")?.let { initializeTags(it) }
|
||||||
|
|
||||||
println("Class loading done in ${System.currentTimeMillis() - classesLoadStartTime}ms")
|
println("Class loading done in ${System.currentTimeMillis() - classesLoadStartTime}ms")
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user