Skip to content

Commit e173aeb

Browse files
committed
Cooking Pot drops its inventory.
1 parent f94ef90 commit e173aeb

1 file changed

Lines changed: 19 additions & 0 deletions

File tree

  • common/src/main/java/generations/gg/generations/core/generationscore/common/world/level/block/utilityblocks

common/src/main/java/generations/gg/generations/core/generationscore/common/world/level/block/utilityblocks/CookingPotBlock.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,17 @@
55
import generations.gg.generations.core.generationscore.common.world.level.block.entities.CookingPotBlockEntity;
66
import generations.gg.generations.core.generationscore.common.world.level.block.entities.GenerationsBlockEntities;
77
import generations.gg.generations.core.generationscore.common.world.level.block.entities.GenerationsBlockEntityModels;
8+
import generations.gg.generations.core.generationscore.common.world.level.block.entities.RksMachineBlockEntity;
89
import generations.gg.generations.core.generationscore.common.world.level.block.generic.GenericRotatableModelBlock;
910
import net.minecraft.core.BlockPos;
1011
import net.minecraft.core.Direction;
12+
import net.minecraft.core.NonNullList;
1113
import net.minecraft.server.level.ServerPlayer;
14+
import net.minecraft.world.Containers;
1215
import net.minecraft.world.InteractionHand;
1316
import net.minecraft.world.InteractionResult;
1417
import net.minecraft.world.entity.player.Player;
18+
import net.minecraft.world.item.ItemStack;
1519
import net.minecraft.world.level.BlockGetter;
1620
import net.minecraft.world.level.Level;
1721
import net.minecraft.world.level.block.BaseEntityBlock;
@@ -63,6 +67,21 @@ public CookingPotBlock(Properties materialIn) {
6367
return InteractionResult.SUCCESS;
6468
}
6569

70+
@Override
71+
public void onRemove(BlockState oldState, Level worldIn, BlockPos pos, BlockState newState, boolean isMoving) {
72+
if (!oldState.is(newState.getBlock())) {
73+
BlockEntity tileEntity = worldIn.getBlockEntity(pos);
74+
if (tileEntity instanceof CookingPotBlockEntity machine) {
75+
final NonNullList<ItemStack> inventory = machine.getContainer().getItems();
76+
Containers.dropContents(worldIn, pos, inventory);
77+
78+
worldIn.updateNeighbourForOutputSignal(pos, this);
79+
}
80+
}
81+
super.onRemove(oldState, worldIn, pos, newState, isMoving);
82+
}
83+
84+
6685
@Nullable
6786
@Override
6887
public <T extends BlockEntity> BlockEntityTicker<T> getTicker(Level level, @NotNull BlockState state, @NotNull BlockEntityType<T> blockEntityType) {

0 commit comments

Comments
 (0)