-
Notifications
You must be signed in to change notification settings - Fork 18
/
SuspiciousStewIntoEmptyCauldronInteraction.java
37 lines (34 loc) · 1.58 KB
/
SuspiciousStewIntoEmptyCauldronInteraction.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package knightminer.inspirations.cauldrons.interaction.stew;
import knightminer.inspirations.cauldrons.InspirationsCaudrons;
import knightminer.inspirations.cauldrons.block.entity.SuspiciousStewCauldronBlockEntity;
import knightminer.inspirations.cauldrons.interaction.FillCauldronInteraction;
import net.minecraft.core.BlockPos;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.Tag;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.SuspiciousStewItem;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState;
/** Logic to pour stew into an empty cauldron */
public class SuspiciousStewIntoEmptyCauldronInteraction extends FillCauldronInteraction {
public static final SuspiciousStewIntoEmptyCauldronInteraction INSTANCE = new SuspiciousStewIntoEmptyCauldronInteraction();
private SuspiciousStewIntoEmptyCauldronInteraction() {
super(InspirationsCaudrons.suspiciousStewCauldron, 1, Items.BOWL, SoundEvents.BOTTLE_EMPTY);
}
@Override
protected void afterSetBlock(BlockState oldState, Level level, BlockPos pos, ItemStack stack) {
CompoundTag tag = stack.getTag();
if (tag != null) {
ListTag effects = tag.getList(SuspiciousStewItem.EFFECTS_TAG, Tag.TAG_COMPOUND);
if (!effects.isEmpty()) {
SuspiciousStewCauldronBlockEntity cauldron = InspirationsCaudrons.suspiciousStewCauldronEntity.getBlockEntity(level, pos);
if (cauldron != null) {
cauldron.setEffects(effects);
}
}
}
}
}