summaryrefslogtreecommitdiff
path: root/src/main/java/lv/enes/mc/eris_alchemy/block/entity
diff options
context:
space:
mode:
authorGravatar Uko Kokņevičs2024-01-11 13:05:51 +0100
committerGravatar Uko Kokņevičs2024-01-11 13:05:51 +0100
commit8491f46b8ee9ef2eff8eb9bfe1871e0e20a41618 (patch)
tree10cbf4c3ab0af9ead6c19c1b4096af084289c836 /src/main/java/lv/enes/mc/eris_alchemy/block/entity
parentActually don't give bundles an EMC value (diff)
downloadmc-eris-alchemy-8491f46b8ee9ef2eff8eb9bfe1871e0e20a41618.tar.gz
mc-eris-alchemy-8491f46b8ee9ef2eff8eb9bfe1871e0e20a41618.tar.xz
mc-eris-alchemy-8491f46b8ee9ef2eff8eb9bfe1871e0e20a41618.zip
Making SheetsMixin more extensible
Diffstat (limited to 'src/main/java/lv/enes/mc/eris_alchemy/block/entity')
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/block/entity/AlchemicalChestEntity.java10
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/block/entity/ChestLikeEntity.java12
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java10
3 files changed, 24 insertions, 8 deletions
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/AlchemicalChestEntity.java b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/AlchemicalChestEntity.java
index 38ed902..659e4b1 100644
--- a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/AlchemicalChestEntity.java
+++ b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/AlchemicalChestEntity.java
@@ -1,7 +1,9 @@
1package lv.enes.mc.eris_alchemy.block.entity; 1package lv.enes.mc.eris_alchemy.block.entity;
2 2
3import jakarta.annotation.Nonnull; 3import jakarta.annotation.Nonnull;
4import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry; 4import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.BlockEntities;
5import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.Blocks;
6import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.Materials;
5import lv.enes.mc.eris_alchemy.menu.AlchemicalChestMenu; 7import lv.enes.mc.eris_alchemy.menu.AlchemicalChestMenu;
6import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu; 8import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu;
7import net.minecraft.core.BlockPos; 9import net.minecraft.core.BlockPos;
@@ -18,7 +20,7 @@ public class AlchemicalChestEntity extends ChestLikeEntity {
18 private final NonNullList<ItemStack> items = NonNullList.withSize(WIDTH * HEIGHT, ItemStack.EMPTY); 20 private final NonNullList<ItemStack> items = NonNullList.withSize(WIDTH * HEIGHT, ItemStack.EMPTY);
19 21
20 public AlchemicalChestEntity(BlockPos pos, BlockState state) { 22 public AlchemicalChestEntity(BlockPos pos, BlockState state) {
21 super(ErisAlchemyRegistry.BlockEntities.ALCHEMICAL_CHEST, pos, state); 23 super(BlockEntities.ALCHEMICAL_CHEST, pos, state, Materials.ALCHEMICAL_CHEST);
22 } 24 }
23 25
24 @Nonnull 26 @Nonnull
@@ -27,13 +29,15 @@ public class AlchemicalChestEntity extends ChestLikeEntity {
27 return new AlchemicalChestMenu(syncId, playerInventory, this); 29 return new AlchemicalChestMenu(syncId, playerInventory, this);
28 } 30 }
29 31
32 @Nonnull
30 @Override 33 @Override
31 protected NonNullList<ItemStack> getItems() { 34 protected NonNullList<ItemStack> getItems() {
32 return items; 35 return items;
33 } 36 }
34 37
38 @Nonnull
35 @Override 39 @Override
36 protected Block getParent() { 40 protected Block getParent() {
37 return ErisAlchemyRegistry.Blocks.ALCHEMICAL_CHEST; 41 return Blocks.ALCHEMICAL_CHEST;
38 } 42 }
39} 43}
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/ChestLikeEntity.java b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/ChestLikeEntity.java
index 362b054..8f40d26 100644
--- a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/ChestLikeEntity.java
+++ b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/ChestLikeEntity.java
@@ -3,6 +3,7 @@ package lv.enes.mc.eris_alchemy.block.entity;
3import jakarta.annotation.Nonnull; 3import jakarta.annotation.Nonnull;
4import jakarta.annotation.Nullable; 4import jakarta.annotation.Nullable;
5import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu; 5import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu;
6import net.minecraft.client.resources.model.Material;
6import net.minecraft.core.BlockPos; 7import net.minecraft.core.BlockPos;
7import net.minecraft.core.NonNullList; 8import net.minecraft.core.NonNullList;
8import net.minecraft.nbt.CompoundTag; 9import net.minecraft.nbt.CompoundTag;
@@ -21,6 +22,8 @@ import net.minecraft.world.level.block.state.BlockState;
21public abstract class ChestLikeEntity extends BaseContainerBlockEntity implements LidBlockEntity { 22public abstract class ChestLikeEntity extends BaseContainerBlockEntity implements LidBlockEntity {
22 protected static final int EVENT_INTERACTED = 1; 23 protected static final int EVENT_INTERACTED = 1;
23 24
25 public final Material material;
26
24 protected final ChestLidController lidController = new ChestLidController(); 27 protected final ChestLidController lidController = new ChestLidController();
25 protected final ContainerOpenersCounter openersCounter = new ContainerOpenersCounter() { 28 protected final ContainerOpenersCounter openersCounter = new ContainerOpenersCounter() {
26 @Override 29 @Override
@@ -50,13 +53,18 @@ public abstract class ChestLikeEntity extends BaseContainerBlockEntity implement
50 public ChestLikeEntity( 53 public ChestLikeEntity(
51 BlockEntityType<? extends ChestLikeEntity> type, 54 BlockEntityType<? extends ChestLikeEntity> type,
52 BlockPos pos, 55 BlockPos pos,
53 BlockState state 56 BlockState state,
57 Material material
54 ) { 58 ) {
55 super(type, pos, state); 59 super(type, pos, state);
60 this.material = material;
56 } 61 }
57 62
58 protected abstract Block getParent(); 63
64 @Nonnull
59 protected abstract NonNullList<ItemStack> getItems(); 65 protected abstract NonNullList<ItemStack> getItems();
66 @Nonnull
67 protected abstract Block getParent();
60 68
61 @Override 69 @Override
62 public void clearContent() { 70 public void clearContent() {
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java
index dfe07a4..0f39ccb 100644
--- a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java
+++ b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java
@@ -2,7 +2,9 @@ package lv.enes.mc.eris_alchemy.block.entity;
2 2
3import jakarta.annotation.Nonnull; 3import jakarta.annotation.Nonnull;
4import lv.enes.mc.eris_alchemy.EMC; 4import lv.enes.mc.eris_alchemy.EMC;
5import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry; 5import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.BlockEntities;
6import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.Blocks;
7import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry.Materials;
6import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu; 8import lv.enes.mc.eris_alchemy.menu.ChestLikeMenu;
7import lv.enes.mc.eris_alchemy.menu.EnergyCondenserMenu; 9import lv.enes.mc.eris_alchemy.menu.EnergyCondenserMenu;
8import lv.enes.mc.eris_alchemy.utils.ContainerOpenersCounterUtil; 10import lv.enes.mc.eris_alchemy.utils.ContainerOpenersCounterUtil;
@@ -30,7 +32,7 @@ public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedSc
30 public final SyncedDouble storedEmc = new SyncedDouble(0); 32 public final SyncedDouble storedEmc = new SyncedDouble(0);
31 33
32 public EnergyCondenserEntity(BlockPos pos, BlockState state) { 34 public EnergyCondenserEntity(BlockPos pos, BlockState state) {
33 super(ErisAlchemyRegistry.BlockEntities.ENERGY_CONDENSER, pos, state); 35 super(BlockEntities.ENERGY_CONDENSER, pos, state, Materials.ENERGY_CONDENSER);
34 } 36 }
35 37
36 @Nonnull 38 @Nonnull
@@ -39,14 +41,16 @@ public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedSc
39 return new EnergyCondenserMenu(syncId, playerInventory, this); 41 return new EnergyCondenserMenu(syncId, playerInventory, this);
40 } 42 }
41 43
44 @Nonnull
42 @Override 45 @Override
43 protected NonNullList<ItemStack> getItems() { 46 protected NonNullList<ItemStack> getItems() {
44 return items; 47 return items;
45 } 48 }
46 49
50 @Nonnull
47 @Override 51 @Override
48 protected Block getParent() { 52 protected Block getParent() {
49 return ErisAlchemyRegistry.Blocks.ENERGY_CONDENSER; 53 return Blocks.ENERGY_CONDENSER;
50 } 54 }
51 55
52 public double getStoredEmc() { 56 public double getStoredEmc() {