diff --git a/gradle.properties b/gradle.properties index f6d9dc2a..dde1a6bb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -17,5 +17,5 @@ archives_base_name = better-end patchouli_version = 50-FABRIC fabric_version = 0.32.9+1.16 canvas_version = 1.0.+ -bclib_version = 0.1.17 +bclib_version = 0.1.18 rei_version = 5.8.10 \ No newline at end of file diff --git a/src/main/java/ru/betterend/integration/byg/BYGIntegration.java b/src/main/java/ru/betterend/integration/byg/BYGIntegration.java index 3c5b9742..31ebae08 100644 --- a/src/main/java/ru/betterend/integration/byg/BYGIntegration.java +++ b/src/main/java/ru/betterend/integration/byg/BYGIntegration.java @@ -16,7 +16,6 @@ import ru.betterend.integration.ModIntegration; import ru.betterend.integration.byg.biomes.BYGBiomes; import ru.betterend.integration.byg.features.BYGFeatures; import ru.betterend.registry.EndBiomes; -import ru.betterend.world.biome.EndBiome; public class BYGIntegration extends ModIntegration { public BYGIntegration() { diff --git a/src/main/java/ru/betterend/mixin/common/ChorusPlantBlockMixin.java b/src/main/java/ru/betterend/mixin/common/ChorusPlantBlockMixin.java index fd46787f..e4edc238 100644 --- a/src/main/java/ru/betterend/mixin/common/ChorusPlantBlockMixin.java +++ b/src/main/java/ru/betterend/mixin/common/ChorusPlantBlockMixin.java @@ -1,29 +1,9 @@ package ru.betterend.mixin.common; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.world.item.context.BlockPlaceContext; -import net.minecraft.world.level.BlockGetter; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.LevelAccessor; -import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.ChorusPlantBlock; -import net.minecraft.world.level.block.state.BlockBehaviour; -import net.minecraft.world.level.block.state.BlockState; -import net.minecraft.world.level.block.state.StateDefinition; -import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import ru.bclib.api.TagAPI; -import ru.betterend.blocks.BlockProperties; -import ru.betterend.registry.EndBlocks; -import ru.betterend.world.generator.GeneratorOptions; @Mixin(value = ChorusPlantBlock.class, priority = 100) public abstract class ChorusPlantBlockMixin extends Block { diff --git a/src/main/java/ru/betterend/mixin/common/MinecraftServerMixin.java b/src/main/java/ru/betterend/mixin/common/MinecraftServerMixin.java index 1ae3f8d9..1c3d5f0a 100644 --- a/src/main/java/ru/betterend/mixin/common/MinecraftServerMixin.java +++ b/src/main/java/ru/betterend/mixin/common/MinecraftServerMixin.java @@ -1,8 +1,6 @@ package ru.betterend.mixin.common; -import java.util.Collection; import java.util.Map; -import java.util.concurrent.CompletableFuture; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -12,7 +10,6 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -import net.fabricmc.loader.api.FabricLoader; import net.minecraft.resources.ResourceKey; import net.minecraft.server.MinecraftServer; import net.minecraft.server.ServerResources; @@ -22,8 +19,6 @@ import net.minecraft.server.players.PlayerList; import net.minecraft.world.level.Level; import net.minecraft.world.level.storage.ServerLevelData; import net.minecraft.world.level.storage.WorldData; -import ru.betterend.recipe.EndRecipeManager; -import ru.betterend.registry.EndBiomes; import ru.betterend.world.generator.GeneratorOptions; @Mixin(MinecraftServer.class) @@ -38,17 +33,6 @@ public class MinecraftServerMixin { @Final @Shadow protected WorldData worldData; - - @Inject(method = "reloadResources", at = @At(value = "RETURN"), cancellable = true) - private void be_reloadResources(Collection collection, CallbackInfoReturnable> info) { - be_injectRecipes(); - } - - @Inject(method = "loadLevel", at = @At(value = "RETURN"), cancellable = true) - private void be_loadLevel(CallbackInfo info) { - be_injectRecipes(); - EndBiomes.initRegistry(MinecraftServer.class.cast(this)); - } @Inject(method = "overworld", at = @At(value = "HEAD"), cancellable = true) private final void be_overworld(CallbackInfoReturnable info) { @@ -91,11 +75,4 @@ public class MinecraftServerMixin { public PlayerList getPlayerList() { return null; } - - private void be_injectRecipes() { - if (FabricLoader.getInstance().isModLoaded("kubejs")) { - RecipeManagerAccessor accessor = (RecipeManagerAccessor) resources.getRecipeManager(); - accessor.be_setRecipes(EndRecipeManager.getMap(accessor.be_getRecipes())); - } - } } diff --git a/src/main/java/ru/betterend/registry/EndBiomes.java b/src/main/java/ru/betterend/registry/EndBiomes.java index 93bb724d..d7a74c8c 100644 --- a/src/main/java/ru/betterend/registry/EndBiomes.java +++ b/src/main/java/ru/betterend/registry/EndBiomes.java @@ -19,7 +19,6 @@ import net.minecraft.core.Registry; import net.minecraft.data.BuiltinRegistries; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.MinecraftServer; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.biome.Biome.BiomeCategory; import net.minecraft.world.level.biome.Biomes; @@ -72,8 +71,6 @@ public class EndBiomes { public static final BiomePicker CAVE_BIOMES = new BiomePicker(); public static final List SUBBIOMES = Lists.newArrayList(); private static final JsonObject EMPTY_JSON = new JsonObject(); - - private static Registry biomeRegistry; private static BiomeMap caveBiomeMap; // Vanilla Land @@ -126,8 +123,6 @@ public class EndBiomes { } public static void mutateRegistry(Registry biomeRegistry) { - EndBiomes.biomeRegistry = biomeRegistry; - LAND_BIOMES.clearMutables(); VOID_BIOMES.clearMutables(); CAVE_BIOMES.clearMutables(); @@ -224,16 +219,6 @@ public class EndBiomes { } } - /** - * Initialize registry if it was not initialized in world generation (when using mods/datapacks, that overrides the End generation) - * @param server - {@link MinecraftServer} - */ - public static void initRegistry(MinecraftServer server) { - if (biomeRegistry == null || biomeRegistry == BuiltinRegistries.BIOME) { - biomeRegistry = server.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY); - } - } - /** * Registers new {@link EndBiome} and adds it to picker, can be used to add existing mod biomes into the End. * @param biome - {@link Biome} instance diff --git a/src/main/java/ru/betterend/registry/EndFeatures.java b/src/main/java/ru/betterend/registry/EndFeatures.java index aa6137f7..4f66b75f 100644 --- a/src/main/java/ru/betterend/registry/EndFeatures.java +++ b/src/main/java/ru/betterend/registry/EndFeatures.java @@ -17,6 +17,7 @@ import net.minecraft.world.level.levelgen.feature.configurations.FeatureConfigur import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; import net.minecraft.world.level.levelgen.placement.FeatureDecorator; import ru.bclib.api.BiomeAPI; +import ru.bclib.world.biomes.BCLBiome; import ru.bclib.world.features.BCLFeature; import ru.bclib.world.features.DefaultFeature; import ru.betterend.BetterEnd; @@ -296,10 +297,13 @@ public class EndFeatures { addFeature(ENDER_ORE, features); addFeature(CRASHED_SHIP, features); - EndBiome endBiome = (EndBiome) BiomeAPI.getBiome(id); - if (endBiome != null && endBiome.hasCaves() && !EndBiomes.VOID_BIOMES.containsImmutable(id)) { - addFeature(ROUND_CAVE, features); - addFeature(TUNEL_CAVE, features); + BCLBiome bclbiome = BiomeAPI.getBiome(id); + if (bclbiome instanceof EndBiome) { + EndBiome endBiome = (EndBiome) bclbiome; + if (endBiome.hasCaves() && !EndBiomes.VOID_BIOMES.containsImmutable(id)) { + addFeature(ROUND_CAVE, features); + addFeature(TUNEL_CAVE, features); + } } BCLFeature feature = BiomeAPI.getBiome(id).getStructuresFeature();