summaryrefslogtreecommitdiff
path: root/src/main/java/lv/enes/mc/eris_alchemy/block/entity
diff options
context:
space:
mode:
authorGravatar Uko Kokņevičs2024-01-27 04:57:45 +0200
committerGravatar Uko Kokņevičs2024-01-27 04:57:45 +0200
commit9081089c2e47a20e4108ee322204e8c8dbde4169 (patch)
tree0449d101a614d441ed922f52b3ce26971eb7d454 /src/main/java/lv/enes/mc/eris_alchemy/block/entity
parentFix the fresh build (diff)
downloadmc-eris-alchemy-9081089c2e47a20e4108ee322204e8c8dbde4169.tar.gz
mc-eris-alchemy-9081089c2e47a20e4108ee322204e8c8dbde4169.tar.xz
mc-eris-alchemy-9081089c2e47a20e4108ee322204e8c8dbde4169.zip
Add support for WAILA (specifically with WTHIT).
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/EmcStorageEntity.java6
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/block/entity/EnergyCondenserEntity.java16
2 files changed, 16 insertions, 6 deletions
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EmcStorageEntity.java b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EmcStorageEntity.java
new file mode 100644
index 0000000..465e743
--- /dev/null
+++ b/src/main/java/lv/enes/mc/eris_alchemy/block/entity/EmcStorageEntity.java
@@ -0,0 +1,6 @@
1package lv.enes.mc.eris_alchemy.block.entity;
2
3public interface EmcStorageEntity {
4 double getMaxEmc();
5 double getStoredEmc();
6}
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 33a6250..105e9e3 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
@@ -25,7 +25,7 @@ import org.quiltmc.loader.api.minecraft.ClientOnly;
25 25
26import java.util.stream.IntStream; 26import java.util.stream.IntStream;
27 27
28public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedScreenHandlerFactory { 28public class EnergyCondenserEntity extends ChestLikeEntity implements EmcStorageEntity, ExtendedScreenHandlerFactory {
29 private final static int WIDTH = 13; 29 private final static int WIDTH = 13;
30 private final static int HEIGHT = 7; 30 private final static int HEIGHT = 7;
31 31
@@ -49,6 +49,11 @@ public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedSc
49 return items; 49 return items;
50 } 50 }
51 51
52 @Override
53 public double getMaxEmc() {
54 return Emc.get(items.get(0)).orElse(Double.POSITIVE_INFINITY);
55 }
56
52 @ClientOnly 57 @ClientOnly
53 @Nonnull 58 @Nonnull
54 public Material getMaterial() { 59 public Material getMaterial() {
@@ -61,6 +66,7 @@ public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedSc
61 return Blocks.ENERGY_CONDENSER; 66 return Blocks.ENERGY_CONDENSER;
62 } 67 }
63 68
69 @Override
64 public double getStoredEmc() { 70 public double getStoredEmc() {
65 return storedEmc.getValue(); 71 return storedEmc.getValue();
66 } 72 }
@@ -89,11 +95,9 @@ public class EnergyCondenserEntity extends ChestLikeEntity implements ExtendedSc
89 @Override 95 @Override
90 public void tick(Level world, BlockPos pos, BlockState state) { 96 public void tick(Level world, BlockPos pos, BlockState state) {
91 super.tick(world, pos, state); 97 super.tick(world, pos, state);
92 Emc.get(items.get(0)).ifPresent(cost -> { 98 var cost = getMaxEmc();
93 tryConsumeEmc(cost); 99 tryConsumeEmc(cost);
94 tryCloneTemplate(cost); 100 tryCloneTemplate(cost);
95 });
96
97 this.storedEmc.syncIfChanged(ContainerOpenersCounterUtil.getOpeners(openersCounter)); 101 this.storedEmc.syncIfChanged(ContainerOpenersCounterUtil.getOpeners(openersCounter));
98 } 102 }
99 103