mirror of
https://gitlab.bixilon.de/bixilon/pixlyzer.git
synced 2025-09-25 21:24:02 -04:00
basic data test
This commit is contained in:
parent
13a6612b57
commit
31ce0b4557
@ -9,8 +9,6 @@ import net.minecraft.entity.Entity
|
||||
import net.minecraft.entity.EntityType
|
||||
import net.minecraft.entity.EyeOfEnderEntity
|
||||
import net.minecraft.entity.decoration.ItemFrameEntity
|
||||
import net.minecraft.entity.projectile.ArrowEntity
|
||||
import net.minecraft.entity.projectile.SpectralArrowEntity
|
||||
import net.minecraft.entity.projectile.thrown.*
|
||||
import net.minecraft.scoreboard.Scoreboard
|
||||
import net.minecraft.world.World
|
||||
@ -42,7 +40,7 @@ object EntitySpawner {
|
||||
return entity
|
||||
}
|
||||
|
||||
// ToDo: This crashed in 21w13a?
|
||||
// ToDo: This crashes in 21w13a?
|
||||
when (entityType) {
|
||||
EntityType.EGG -> return OBJENSIS.newInstance(EggEntity::class.java) as Entity
|
||||
EntityType.SNOWBALL -> return OBJENSIS.newInstance(SnowballEntity::class.java) as Entity
|
||||
@ -50,8 +48,6 @@ object EntitySpawner {
|
||||
EntityType.EYE_OF_ENDER -> return OBJENSIS.newInstance(EyeOfEnderEntity::class.java) as Entity
|
||||
EntityType.EXPERIENCE_BOTTLE -> return OBJENSIS.newInstance(ExperienceBottleEntity::class.java) as Entity
|
||||
EntityType.POTION -> return OBJENSIS.newInstance(PotionEntity::class.java) as Entity
|
||||
EntityType.ARROW -> return OBJENSIS.newInstance(ArrowEntity::class.java) as Entity
|
||||
EntityType.SPECTRAL_ARROW -> return OBJENSIS.newInstance(SpectralArrowEntity::class.java) as Entity
|
||||
}
|
||||
|
||||
TODO("Entity type: $entityType")
|
||||
|
@ -77,9 +77,15 @@ object PixLyzer {
|
||||
println("Skipping ${generator.name}: ${exception.message}")
|
||||
continue
|
||||
}
|
||||
if (generator.data.size() == 0 && !generator.allowEmpty) {
|
||||
error("${generator.name} has 0 entries!")
|
||||
if (generator.data.size() == 0) {
|
||||
if (generator.allowEmpty) {
|
||||
continue
|
||||
} else {
|
||||
error("${generator.name} has 0 entries!")
|
||||
}
|
||||
}
|
||||
generator.test()
|
||||
println("Tests succeeded for ${generator.name}")
|
||||
|
||||
println("Saving to ${outputDirectory.absolutePath}/${generator.name}.json")
|
||||
|
||||
|
@ -13,4 +13,6 @@ abstract class Generator(
|
||||
val data = JsonObject()
|
||||
|
||||
abstract fun generate()
|
||||
|
||||
open fun test() {}
|
||||
}
|
||||
|
@ -139,4 +139,12 @@ object BiomeGenerator : Generator(
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
|
||||
override fun test() {
|
||||
data["minecraft:ocean"].asJsonObject
|
||||
data["minecraft:taiga"].asJsonObject
|
||||
|
||||
check(data["minecraft:swamp"].asJsonObject["foliage_color_override"].asInt == 6975545)
|
||||
}
|
||||
}
|
||||
|
@ -76,6 +76,21 @@ object DimensionGenerator : Generator(
|
||||
dimensionData.addProperty("ambient_light", it.getFloat(dimension))
|
||||
}
|
||||
|
||||
DIMENSION_BIOME_ZOOMER_FIELD?.get(dimension)?.let {
|
||||
when (it::class.java.simpleName) {
|
||||
"VoronoiBiomeAccessType" -> {
|
||||
dimensionData.addProperty("supports_3d_biomes", true)
|
||||
}
|
||||
"HorizontalVoronoiBiomeAccessType" -> {
|
||||
dimensionData.addProperty("supports_3d_biomes", false)
|
||||
}
|
||||
else -> {
|
||||
TODO("Can not check if dimension $resourceLocation supports 3d biomes!")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
data.add(resourceLocation.toString(), dimensionData)
|
||||
}
|
||||
}
|
||||
@ -93,7 +108,7 @@ object DimensionGenerator : Generator(
|
||||
private val BED_WORKS_FIELD = getField(DIMENSION_TYPE_CLASS, "bedWorks")
|
||||
private val RESPAWN_ANCHOR_WORKS_FIELD = getField(DIMENSION_TYPE_CLASS, "respawnAnchorWorks")
|
||||
private val HAS_RAIDS_FIELD = getField(DIMENSION_TYPE_CLASS, "hasRaids")
|
||||
private val MIN_Y_FIELD = getField(DIMENSION_TYPE_CLASS, "minY")
|
||||
private val MIN_Y_FIELD = getField(DIMENSION_TYPE_CLASS, "minimumY")
|
||||
private val HEIGHT_FIELD = getField(DIMENSION_TYPE_CLASS, "height")
|
||||
private val LOGICAL_HEIGHT_FIELD = getField(DIMENSION_TYPE_CLASS, "logicalHeight")
|
||||
private val INFINIBURN_FIELD = getField(DIMENSION_TYPE_CLASS, "infiniburn")
|
||||
@ -105,6 +120,8 @@ object DimensionGenerator : Generator(
|
||||
|
||||
private val RESOURCE_KEY_LOCATION_METHOD = RESOURCE_KEY_CLASS?.getDeclaredMethod("location")
|
||||
|
||||
private val DIMENSION_BIOME_ZOOMER_FIELD = getField(DimensionType::class.java, "biomeAccessType")
|
||||
|
||||
|
||||
private fun getDimensions(): MutableSet<Triple<Identifier, Int?, DimensionType>> {
|
||||
val types: MutableSet<Triple<Identifier, Int?, DimensionType>> = mutableSetOf()
|
||||
@ -151,4 +168,11 @@ object DimensionGenerator : Generator(
|
||||
|
||||
return types
|
||||
}
|
||||
|
||||
|
||||
override fun test() {
|
||||
check(data["minecraft:overworld"].asJsonObject["has_sky_light"].asBoolean)
|
||||
check(!data["minecraft:the_nether"].asJsonObject["has_sky_light"].asBoolean)
|
||||
check(!data["minecraft:the_end"].asJsonObject["has_sky_light"].asBoolean)
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user