From d12c069ae6c02b7aab8ef6af4fbcc5471f38adc8 Mon Sep 17 00:00:00 2001 From: Waterpicker Date: Mon, 11 Oct 2021 06:42:58 -0500 Subject: [PATCH] You forgot some stuff. --- .../dimdoors/datagen/LimboDecayProvider.java | 6 ++++-- .../org/dimdev/dimdoors/util/ResourceUtil.java | 2 ++ .../decay/predicates/SimpleDecayPredicate.java | 14 ++++++++------ .../decay/processors/SelfDecayProcessor.java | 4 +++- .../decay/processors/SimpleDecayProcesor.java | 17 +++++++++-------- 5 files changed, 26 insertions(+), 17 deletions(-) diff --git a/src/datagen/java/org/dimdev/dimdoors/datagen/LimboDecayProvider.java b/src/datagen/java/org/dimdev/dimdoors/datagen/LimboDecayProvider.java index 11939f0c..17cf60dd 100644 --- a/src/datagen/java/org/dimdev/dimdoors/datagen/LimboDecayProvider.java +++ b/src/datagen/java/org/dimdev/dimdoors/datagen/LimboDecayProvider.java @@ -62,6 +62,7 @@ import com.google.gson.JsonObject; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.dimdev.dimdoors.block.ModBlocks; +import org.dimdev.dimdoors.util.ResourceUtil; import org.dimdev.dimdoors.world.decay.DecayPattern; import org.dimdev.dimdoors.world.decay.DecayPredicate; import org.dimdev.dimdoors.world.decay.DecayProcessor; @@ -75,6 +76,7 @@ import net.minecraft.data.DataCache; import net.minecraft.data.DataGenerator; import net.minecraft.data.DataProvider; import net.minecraft.loot.LootManager; +import net.minecraft.nbt.NbtCompound; import net.minecraft.util.Identifier; import java.io.IOException; @@ -186,8 +188,8 @@ public class LimboDecayProvider implements DataProvider { public void run(BiConsumer consumer) { JsonObject object = new JsonObject(); - object.add("predicate", predicate.toJson(new JsonObject())); - object.add("processor", processor.toJson(new JsonObject())); + object.add("predicate", ResourceUtil.NBT_TO_JSON.apply(predicate.toNbt(new NbtCompound()))); + object.add("processor", ResourceUtil.NBT_TO_JSON.apply(processor.toNbt(new NbtCompound()))); consumer.accept(id, object); } diff --git a/src/main/java/org/dimdev/dimdoors/util/ResourceUtil.java b/src/main/java/org/dimdev/dimdoors/util/ResourceUtil.java index 9aa92fe4..e2273761 100644 --- a/src/main/java/org/dimdev/dimdoors/util/ResourceUtil.java +++ b/src/main/java/org/dimdev/dimdoors/util/ResourceUtil.java @@ -29,6 +29,8 @@ public class ResourceUtil { public static final ComposableFunction JSON_TO_NBT = json -> JsonOps.INSTANCE.convertTo(NbtOps.INSTANCE, json); + public static final ComposableFunction NBT_TO_JSON = json -> NbtOps.INSTANCE.convertTo(JsonOps.INSTANCE, json); + public static final ComposableFunction JSON_READER = inputStream -> GSON.fromJson(new InputStreamReader(inputStream), JsonElement.class); public static final ComposableFunction NBT_READER = JSON_READER.andThenComposable(JSON_TO_NBT); public static final ComposableFunction COMPRESSED_NBT_READER = inputStream -> { diff --git a/src/main/java/org/dimdev/dimdoors/world/decay/predicates/SimpleDecayPredicate.java b/src/main/java/org/dimdev/dimdoors/world/decay/predicates/SimpleDecayPredicate.java index 0699a62b..aa1ba796 100644 --- a/src/main/java/org/dimdev/dimdoors/world/decay/predicates/SimpleDecayPredicate.java +++ b/src/main/java/org/dimdev/dimdoors/world/decay/predicates/SimpleDecayPredicate.java @@ -6,6 +6,8 @@ import org.dimdev.dimdoors.world.decay.DecayPredicate; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtElement; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; @@ -23,16 +25,16 @@ public class SimpleDecayPredicate implements DecayPredicate { } @Override - public DecayPredicate fromJson(JsonObject json) { - block = Registry.BLOCK.get(Identifier.tryParse(json.get("block").getAsString())); + public DecayPredicate fromNbt(NbtCompound nbt) { + block = Registry.BLOCK.get(Identifier.tryParse(nbt.getString("block"))); return this; } @Override - public JsonObject toJson(JsonObject json) { - DecayPredicate.super.toJson(json); - json.addProperty("block", Registry.BLOCK.getId(block).toString()); - return json; + public NbtCompound toNbt(NbtCompound nbt) { + DecayPredicate.super.toNbt(nbt); + nbt.putString("block", Registry.BLOCK.getId(block).toString()); + return nbt; } @Override diff --git a/src/main/java/org/dimdev/dimdoors/world/decay/processors/SelfDecayProcessor.java b/src/main/java/org/dimdev/dimdoors/world/decay/processors/SelfDecayProcessor.java index aa1591ae..606813a7 100644 --- a/src/main/java/org/dimdev/dimdoors/world/decay/processors/SelfDecayProcessor.java +++ b/src/main/java/org/dimdev/dimdoors/world/decay/processors/SelfDecayProcessor.java @@ -6,6 +6,8 @@ import com.google.gson.JsonObject; import org.dimdev.dimdoors.world.decay.DecayProcessor; import net.minecraft.block.BlockState; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtElement; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; @@ -19,7 +21,7 @@ public class SelfDecayProcessor implements DecayProcessor { } @Override - public DecayProcessor fromJson(JsonObject json) { + public DecayProcessor fromNbt(NbtCompound nbt) { return this; } diff --git a/src/main/java/org/dimdev/dimdoors/world/decay/processors/SimpleDecayProcesor.java b/src/main/java/org/dimdev/dimdoors/world/decay/processors/SimpleDecayProcesor.java index 709b2fc2..c14f5247 100644 --- a/src/main/java/org/dimdev/dimdoors/world/decay/processors/SimpleDecayProcesor.java +++ b/src/main/java/org/dimdev/dimdoors/world/decay/processors/SimpleDecayProcesor.java @@ -6,6 +6,7 @@ import org.dimdev.dimdoors.world.decay.DecayProcessor; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; +import net.minecraft.nbt.NbtCompound; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; @@ -26,18 +27,18 @@ public class SimpleDecayProcesor implements DecayProcessor { } @Override - public DecayProcessor fromJson(JsonObject json) { - block = Registry.BLOCK.get(Identifier.tryParse(json.get("block").getAsString())); - entropy = json.get("entropy").getAsInt(); + public DecayProcessor fromNbt(NbtCompound json) { + block = Registry.BLOCK.get(Identifier.tryParse(json.getString("block"))); + entropy = json.getInt("entropy"); return this; } @Override - public JsonObject toJson(JsonObject json) { - DecayProcessor.super.toJson(json); - json.addProperty("block", Registry.BLOCK.getId(block).toString()); - json.addProperty("entropy", entropy); - return json; + public NbtCompound toNbt(NbtCompound nbt) { + DecayProcessor.super.toNbt(nbt); + nbt.putString("block", Registry.BLOCK.getId(block).toString()); + nbt.putInt("entropy", entropy); + return nbt; } @Override