diff --git a/src/main/kotlin/com/steelextractor/SteelExtractor.kt b/src/main/kotlin/com/steelextractor/SteelExtractor.kt index 628458b..f22b145 100644 --- a/src/main/kotlin/com/steelextractor/SteelExtractor.kt +++ b/src/main/kotlin/com/steelextractor/SteelExtractor.kt @@ -21,6 +21,7 @@ import com.steelextractor.extractors.MultiNoiseBiomeParameters import com.steelextractor.extractors.BiomeHashes import com.steelextractor.extractors.ChunkStageHashes import com.steelextractor.extractors.Weathering +import com.steelextractor.extractors.Strippables import net.minecraft.resources.ResourceKey import net.minecraft.server.level.ServerLevel import net.minecraft.world.level.ChunkPos @@ -92,8 +93,9 @@ object SteelExtractor : ModInitializer { LevelEvents(), Tags(), StructureStarts(), - Waxables(), + Strippables(), Weathering(), + Waxables(), PoiTypesExtractor() ) diff --git a/src/main/kotlin/com/steelextractor/extractors/Strippables.kt b/src/main/kotlin/com/steelextractor/extractors/Strippables.kt new file mode 100644 index 0000000..f8d31eb --- /dev/null +++ b/src/main/kotlin/com/steelextractor/extractors/Strippables.kt @@ -0,0 +1,32 @@ +package com.steelextractor.extractors + +import com.google.gson.JsonArray +import com.google.gson.JsonElement +import com.google.gson.JsonObject +import com.steelextractor.SteelExtractor +import net.fabricmc.fabric.mixin.content.registry.AxeItemAccessor +import net.minecraft.core.registries.BuiltInRegistries +import net.minecraft.server.MinecraftServer +import org.slf4j.LoggerFactory + + +class Strippables : SteelExtractor.Extractor { + private val logger = LoggerFactory.getLogger("steel-extractor-strippables") + + override fun fileName(): String { + return "steel-core/build/strippables.json" + } + + override fun extract(server: MinecraftServer): JsonElement { + val topLevelJson = JsonObject() + + for ((normal, stripped) in AxeItemAccessor.getStrippedBlocks()) { + topLevelJson.addProperty( + BuiltInRegistries.BLOCK.getKey(normal).path, + BuiltInRegistries.BLOCK.getKey(stripped).path + ) + } + + return topLevelJson + } +}