From dec453b78cbcb043500dd8902da8b3e7af042af4 Mon Sep 17 00:00:00 2001 From: CuzImClicks Date: Tue, 17 Mar 2026 14:03:29 +0100 Subject: [PATCH 1/2] extract map for Candle -> CandleCake --- .../com/steelextractor/SteelExtractor.kt | 4 +++- .../steelextractor/extractors/CandleCakes.kt | 22 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt diff --git a/src/main/kotlin/com/steelextractor/SteelExtractor.kt b/src/main/kotlin/com/steelextractor/SteelExtractor.kt index 0bd4cde..17474e7 100644 --- a/src/main/kotlin/com/steelextractor/SteelExtractor.kt +++ b/src/main/kotlin/com/steelextractor/SteelExtractor.kt @@ -19,6 +19,7 @@ import com.steelextractor.extractors.SoundEvents import com.steelextractor.extractors.SoundTypes import com.steelextractor.extractors.MultiNoiseBiomeParameters import com.steelextractor.extractors.BiomeHashes +import com.steelextractor.extractors.CandleCakes import com.steelextractor.extractors.ChunkStageHashes import com.steelextractor.extractors.Weathering import net.minecraft.resources.ResourceKey @@ -92,7 +93,8 @@ object SteelExtractor : ModInitializer { Tags(), StructureStarts(), Weathering(), - PoiTypesExtractor() + PoiTypesExtractor(), + CandleCakes(), ) diff --git a/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt b/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt new file mode 100644 index 0000000..3b317ac --- /dev/null +++ b/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt @@ -0,0 +1,22 @@ +package com.steelextractor.extractors + +import com.google.gson.JsonElement +import com.google.gson.JsonObject +import com.steelextractor.SteelExtractor +import net.minecraft.core.registries.BuiltInRegistries +import net.minecraft.server.MinecraftServer +import net.minecraft.world.level.block.CandleBlock +import net.minecraft.world.level.block.CandleCakeBlock + +class CandleCakes : SteelExtractor.Extractor { + override fun fileName(): String { + return "steel-core/build/candle_cakes.json" + } + + override fun extract(server: MinecraftServer): JsonElement { + val field = CandleCakeBlock::class.java.getDeclaredField("BY_CANDLE") + field.isAccessible = true + @Suppress("UNCHECKED_CAST") val BY_CANDLES: Map = field.get(null) as Map + return JsonObject().apply { BY_CANDLES.forEach { (key, value) -> addProperty(BuiltInRegistries.BLOCK.getKey(key).path, BuiltInRegistries.BLOCK.getKey(value).path, ) } } + } +} \ No newline at end of file From 6a47a30425b7784c885855f155da3179ddd2a71e Mon Sep 17 00:00:00 2001 From: 4lve Date: Wed, 20 May 2026 23:00:06 +0200 Subject: [PATCH 2/2] fix --- .../kotlin/com/steelextractor/SteelExtractor.kt | 8 ++++++-- .../com/steelextractor/extractors/CandleCakes.kt | 14 +++++++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/com/steelextractor/SteelExtractor.kt b/src/main/kotlin/com/steelextractor/SteelExtractor.kt index f4729d8..5c207f5 100644 --- a/src/main/kotlin/com/steelextractor/SteelExtractor.kt +++ b/src/main/kotlin/com/steelextractor/SteelExtractor.kt @@ -153,7 +153,6 @@ object SteelExtractor : ModInitializer { StructureStarts(), Strippables(), Weathering(), - PoiTypesExtractor(), CandleCakes(), Waxables(), PoiTypesExtractor() @@ -344,7 +343,12 @@ object SteelExtractor : ModInitializer { manuallyMarked++ } } - chunkStageExtractor.captureFinalFeatureHashes(server, dim.dimId, cluster.positions, cluster.featureChunks) + chunkStageExtractor.captureFinalFeatureHashes( + server, + dim.dimId, + cluster.positions, + cluster.featureChunks + ) dim.clusters.removeFirst() } diff --git a/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt b/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt index 3b317ac..d91c38f 100644 --- a/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt +++ b/src/main/kotlin/com/steelextractor/extractors/CandleCakes.kt @@ -16,7 +16,15 @@ class CandleCakes : SteelExtractor.Extractor { override fun extract(server: MinecraftServer): JsonElement { val field = CandleCakeBlock::class.java.getDeclaredField("BY_CANDLE") field.isAccessible = true - @Suppress("UNCHECKED_CAST") val BY_CANDLES: Map = field.get(null) as Map - return JsonObject().apply { BY_CANDLES.forEach { (key, value) -> addProperty(BuiltInRegistries.BLOCK.getKey(key).path, BuiltInRegistries.BLOCK.getKey(value).path, ) } } + @Suppress("UNCHECKED_CAST") val BY_CANDLES: Map = + field.get(null) as Map + return JsonObject().apply { + BY_CANDLES.forEach { (key, value) -> + addProperty( + BuiltInRegistries.BLOCK.getKey(key).path, + BuiltInRegistries.BLOCK.getKey(value).path, + ) + } + } } -} \ No newline at end of file +}