From 9d5957aec6d1044a6e3b718f92341b0d96530a52 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Mon, 29 Mar 2021 12:30:31 +0300 Subject: [PATCH] Menger sponge fix & cleanup --- .../blocks/MengerSpongeWetBlock.java | 21 +++++++++++-------- .../entities/EternalPedestalEntity.java | 1 - .../entities/InfusionPedestalEntity.java | 2 -- .../blocks/entities/PedestalBlockEntity.java | 1 - .../client/ClientPlayNetworkHandlerMixin.java | 3 --- .../ru/betterend/registry/EndPortals.java | 1 - .../ru/betterend/registry/EndStructures.java | 2 +- .../ru/betterend/rituals/EternalRitual.java | 3 ++- 8 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/main/java/ru/betterend/blocks/MengerSpongeWetBlock.java b/src/main/java/ru/betterend/blocks/MengerSpongeWetBlock.java index 548e0325..81ecce04 100644 --- a/src/main/java/ru/betterend/blocks/MengerSpongeWetBlock.java +++ b/src/main/java/ru/betterend/blocks/MengerSpongeWetBlock.java @@ -7,16 +7,18 @@ import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; +import net.minecraft.entity.ItemEntity; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.fluid.FluidState; import net.minecraft.fluid.Fluids; +import net.minecraft.item.ItemStack; import net.minecraft.particle.ParticleTypes; import net.minecraft.sound.SoundCategory; import net.minecraft.sound.SoundEvents; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; +import net.minecraft.world.GameRules; import net.minecraft.world.World; -import net.minecraft.world.WorldAccess; import ru.betterend.blocks.basis.BlockBaseNotFull; import ru.betterend.client.render.ERenderLayer; import ru.betterend.interfaces.IRenderTypeable; @@ -79,16 +81,17 @@ public class MengerSpongeWetBlock extends BlockBaseNotFull implements IRenderTyp } } } - - /*@Override - public void onBreak(World world, BlockPos pos, BlockState state, PlayerEntity player) { - world.breakBlock(pos, !player.isCreative()); - BlocksHelper.setWithUpdate(world, pos, Blocks.AIR); - }*/ - + @Override - public void onBroken(WorldAccess world, BlockPos pos, BlockState state) { + public void onBreak(World world, BlockPos pos, BlockState state, PlayerEntity player) { BlocksHelper.setWithUpdate(world, pos, Blocks.AIR); + if (!world.isClient()) { + world.syncWorldEvent(2001, pos, getRawIdFromState(state)); + } + if (world.getGameRules().getBoolean(GameRules.DO_TILE_DROPS) && (player == null || !player.isCreative())) { + ItemEntity drop = new ItemEntity(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, new ItemStack(this)); + world.spawnEntity(drop); + } } @Override diff --git a/src/main/java/ru/betterend/blocks/entities/EternalPedestalEntity.java b/src/main/java/ru/betterend/blocks/entities/EternalPedestalEntity.java index 1c60518a..30039b14 100644 --- a/src/main/java/ru/betterend/blocks/entities/EternalPedestalEntity.java +++ b/src/main/java/ru/betterend/blocks/entities/EternalPedestalEntity.java @@ -1,6 +1,5 @@ package ru.betterend.blocks.entities; -import net.minecraft.block.BlockState; import net.minecraft.nbt.CompoundTag; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; diff --git a/src/main/java/ru/betterend/blocks/entities/InfusionPedestalEntity.java b/src/main/java/ru/betterend/blocks/entities/InfusionPedestalEntity.java index b27bea86..66e40fa4 100644 --- a/src/main/java/ru/betterend/blocks/entities/InfusionPedestalEntity.java +++ b/src/main/java/ru/betterend/blocks/entities/InfusionPedestalEntity.java @@ -1,7 +1,5 @@ package ru.betterend.blocks.entities; -import net.minecraft.block.BlockState; -import net.minecraft.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; diff --git a/src/main/java/ru/betterend/blocks/entities/PedestalBlockEntity.java b/src/main/java/ru/betterend/blocks/entities/PedestalBlockEntity.java index fdba6eff..7bea10ec 100644 --- a/src/main/java/ru/betterend/blocks/entities/PedestalBlockEntity.java +++ b/src/main/java/ru/betterend/blocks/entities/PedestalBlockEntity.java @@ -8,7 +8,6 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraft.inventory.Inventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket; import net.minecraft.util.Tickable; import ru.betterend.blocks.basis.PedestalBlock; import ru.betterend.registry.EndBlockEntities; diff --git a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java index 187693d5..8899eb4d 100644 --- a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java @@ -1,7 +1,5 @@ package ru.betterend.mixin.client; -import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket; -import net.minecraft.util.math.BlockPos; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -14,7 +12,6 @@ import net.minecraft.client.network.ClientPlayNetworkHandler; import net.minecraft.client.world.ClientWorld; import net.minecraft.network.NetworkThreadUtils; import net.minecraft.network.packet.s2c.play.SignEditorOpenS2CPacket; -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/EndPortals.java b/src/main/java/ru/betterend/registry/EndPortals.java index 697cb21c..b75f1676 100644 --- a/src/main/java/ru/betterend/registry/EndPortals.java +++ b/src/main/java/ru/betterend/registry/EndPortals.java @@ -8,7 +8,6 @@ import com.google.gson.JsonObject; import net.minecraft.server.MinecraftServer; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.Identifier; -import net.minecraft.util.registry.Registry; import net.minecraft.world.World; import ru.betterend.BetterEnd; import ru.betterend.config.ConfigWriter; diff --git a/src/main/java/ru/betterend/registry/EndStructures.java b/src/main/java/ru/betterend/registry/EndStructures.java index 1c0292a9..bc241280 100644 --- a/src/main/java/ru/betterend/registry/EndStructures.java +++ b/src/main/java/ru/betterend/registry/EndStructures.java @@ -14,8 +14,8 @@ import ru.betterend.world.structures.EndStructureFeature; import ru.betterend.world.structures.features.EternalPortalStructure; import ru.betterend.world.structures.features.GiantIceStarStructure; import ru.betterend.world.structures.features.GiantMossyGlowshroomStructure; -import ru.betterend.world.structures.features.MegaLakeStructure; import ru.betterend.world.structures.features.MegaLakeSmallStructure; +import ru.betterend.world.structures.features.MegaLakeStructure; import ru.betterend.world.structures.features.MountainStructure; import ru.betterend.world.structures.features.PaintedMountainStructure; import ru.betterend.world.structures.piece.CavePiece; diff --git a/src/main/java/ru/betterend/rituals/EternalRitual.java b/src/main/java/ru/betterend/rituals/EternalRitual.java index 0298e4ba..113ab7cc 100644 --- a/src/main/java/ru/betterend/rituals/EternalRitual.java +++ b/src/main/java/ru/betterend/rituals/EternalRitual.java @@ -5,6 +5,8 @@ import java.util.Objects; import java.util.Random; import java.util.Set; +import org.jetbrains.annotations.Nullable; + import com.google.common.collect.Sets; import net.minecraft.block.Block; @@ -30,7 +32,6 @@ import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; import net.minecraft.world.dimension.DimensionType; import net.minecraft.world.gen.feature.ConfiguredFeatures; -import org.jetbrains.annotations.Nullable; import ru.betterend.blocks.BlockProperties; import ru.betterend.blocks.EndPortalBlock; import ru.betterend.blocks.RunedFlavolite;