diff --git a/src/main/java/ru/betterend/client/gui/EndStoneSmelterScreenHandler.java b/src/main/java/ru/betterend/client/gui/EndStoneSmelterScreenHandler.java index c58c01ea..ce837bd4 100644 --- a/src/main/java/ru/betterend/client/gui/EndStoneSmelterScreenHandler.java +++ b/src/main/java/ru/betterend/client/gui/EndStoneSmelterScreenHandler.java @@ -3,7 +3,6 @@ package ru.betterend.client.gui; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry; - import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.Inventory; @@ -19,7 +18,6 @@ import net.minecraft.screen.PropertyDelegate; import net.minecraft.screen.ScreenHandlerType; import net.minecraft.screen.slot.Slot; import net.minecraft.world.World; - import ru.betterend.BetterEnd; import ru.betterend.blocks.EndStoneSmelter; import ru.betterend.blocks.entities.EndStoneSmelterBlockEntity; diff --git a/src/main/java/ru/betterend/item/EndArmorMaterial.java b/src/main/java/ru/betterend/item/EndArmorMaterial.java index 219b4896..e763861f 100644 --- a/src/main/java/ru/betterend/item/EndArmorMaterial.java +++ b/src/main/java/ru/betterend/item/EndArmorMaterial.java @@ -4,7 +4,6 @@ import java.util.function.Supplier; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; - import net.minecraft.entity.EquipmentSlot; import net.minecraft.item.ArmorMaterial; import net.minecraft.recipe.Ingredient; diff --git a/src/main/java/ru/betterend/item/EndToolMaterial.java b/src/main/java/ru/betterend/item/EndToolMaterial.java index bb48477a..c592829e 100644 --- a/src/main/java/ru/betterend/item/EndToolMaterial.java +++ b/src/main/java/ru/betterend/item/EndToolMaterial.java @@ -5,7 +5,6 @@ import java.util.function.Supplier; import net.minecraft.item.ToolMaterial; import net.minecraft.recipe.Ingredient; import net.minecraft.util.Lazy; - import ru.betterend.registry.ItemRegistry; public enum EndToolMaterial implements ToolMaterial { diff --git a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java index ade91cca..ac46045b 100644 --- a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java @@ -15,7 +15,6 @@ import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket; import net.minecraft.network.packet.s2c.play.SignEditorOpenS2CPacket; import net.minecraft.util.math.BlockPos; import net.minecraft.util.thread.ThreadExecutor; - import ru.betterend.blocks.entities.ESignBlockEntity; import ru.betterend.client.gui.BlockSignEditScreen; diff --git a/src/main/java/ru/betterend/registry/BiomeRegistry.java b/src/main/java/ru/betterend/registry/BiomeRegistry.java index 7495aaf5..7f2202c4 100644 --- a/src/main/java/ru/betterend/registry/BiomeRegistry.java +++ b/src/main/java/ru/betterend/registry/BiomeRegistry.java @@ -20,6 +20,7 @@ import ru.betterend.world.generator.BiomeType; public class BiomeRegistry { private static final Map> KEYS = Maps.newHashMap(); private static final HashMap MUTABLE = Maps.newHashMap(); + private static final HashMap CLIENT = Maps.newHashMap(); public static final BiomePicker LAND_BIOMES = new BiomePicker(); public static final BiomePicker VOID_BIOMES = new BiomePicker(); @@ -69,6 +70,7 @@ public class BiomeRegistry { public static EndBiome registerBiome(EndBiome biome, BiomeType type) { registerBiomeDirect(biome); addToPicker(biome, type); + CLIENT.put(biome.getBiome(), biome); return biome; } @@ -94,7 +96,31 @@ public class BiomeRegistry { return KEYS.get(biome); } + private static boolean equals(Biome biome1, Biome biome2) { + return (biome1.getDepth() - biome2.getDepth() == 0) && + (biome1.getDownfall() - biome2.getDownfall() == 0) && + (biome1.getScale() - biome2.getScale() == 0) && + (biome1.getCategory() == biome2.getCategory()) && + (biome1.getFogColor() == biome2.getFogColor()) && + (biome1.getSkyColor() == biome2.getSkyColor()) && + (biome1.getWaterColor() == biome2.getWaterColor()) && + (biome1.getWaterFogColor() == biome2.getWaterFogColor()) && + (biome1.getPrecipitation().equals(biome2.getPrecipitation())); + } + public static EndBiome getFromBiome(Biome biome) { - return MUTABLE.getOrDefault(biome, END); + EndBiome endBiome = MUTABLE.get(biome); + if (endBiome == null) { + for (Biome key: CLIENT.keySet()) { + if (equals(key, biome)) { + endBiome = CLIENT.get(key); + MUTABLE.put(biome, endBiome); + return endBiome; + } + } + MUTABLE.put(biome, END); + return END; + } + return endBiome; } } diff --git a/src/main/java/ru/betterend/tab/CreativeTab.java b/src/main/java/ru/betterend/tab/CreativeTab.java index 3f8988db..d1504c06 100644 --- a/src/main/java/ru/betterend/tab/CreativeTab.java +++ b/src/main/java/ru/betterend/tab/CreativeTab.java @@ -4,7 +4,6 @@ import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; import net.minecraft.item.Item; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; -import net.minecraft.util.Identifier; import ru.betterend.BetterEnd; import ru.betterend.registry.BlockRegistry; import ru.betterend.registry.ItemRegistry; diff --git a/src/main/java/ru/betterend/world/generator/BetterEndBiomeSource.java b/src/main/java/ru/betterend/world/generator/BetterEndBiomeSource.java index cd37bdec..df94483f 100644 --- a/src/main/java/ru/betterend/world/generator/BetterEndBiomeSource.java +++ b/src/main/java/ru/betterend/world/generator/BetterEndBiomeSource.java @@ -5,7 +5,6 @@ import java.util.Collections; import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.util.Identifier; import net.minecraft.util.math.noise.SimplexNoiseSampler; import net.minecraft.util.registry.Registry; import net.minecraft.util.registry.RegistryLookupCodec;