aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTec <daniel112092@gmail.com>2020-04-26 09:03:21 +0200
committerTec <daniel112092@gmail.com>2020-04-26 09:03:21 +0200
commitd0cafa5c88cbbff75321e2d781bca79a9057e473 (patch)
tree226b99644e9a2be998640fa1757cdd3d1492d9da
parent65cbb63664bfcad81265b26751f1d53e50b7ea96 (diff)
downloadGT5-Unofficial-d0cafa5c88cbbff75321e2d781bca79a9057e473.tar.gz
GT5-Unofficial-d0cafa5c88cbbff75321e2d781bca79a9057e473.tar.bz2
GT5-Unofficial-d0cafa5c88cbbff75321e2d781bca79a9057e473.zip
add on element fail
-rw-r--r--src/main/java/com/github/technus/tectech/mechanics/structure/StructureUtility.java25
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java2
2 files changed, 25 insertions, 2 deletions
diff --git a/src/main/java/com/github/technus/tectech/mechanics/structure/StructureUtility.java b/src/main/java/com/github/technus/tectech/mechanics/structure/StructureUtility.java
index e0e94a00eb..f619c7482b 100644
--- a/src/main/java/com/github/technus/tectech/mechanics/structure/StructureUtility.java
+++ b/src/main/java/com/github/technus/tectech/mechanics/structure/StructureUtility.java
@@ -316,7 +316,7 @@ public class StructureUtility {
};
}
- public static <T> IStructureElement<T> onCheckPass(Consumer<T> onCheckPass, IStructureElement<T> element){
+ public static <T> IStructureElement<T> onElementPass(Consumer<T> onCheckPass, IStructureElement<T> element){
return new IStructureElement<T>() {
@Override
public boolean check(T t, World world, int x, int y, int z) {
@@ -339,6 +339,29 @@ public class StructureUtility {
};
}
+ public static <T> IStructureElement<T> onElementFail(Consumer<T> onFail, IStructureElement<T> element){
+ return new IStructureElement<T>() {
+ @Override
+ public boolean check(T t, World world, int x, int y, int z) {
+ boolean check = element.check(t, world, x, y, z);
+ if(!check){
+ onFail.accept(t);
+ }
+ return check;
+ }
+
+ @Override
+ public boolean placeBlock(T t, World world, int x, int y, int z) {
+ return element.placeBlock(t, world, x, y, z);
+ }
+
+ @Override
+ public boolean spawnHint(T t, World world, int x, int y, int z) {
+ return element.spawnHint(t, world, x, y, z);
+ }
+ };
+ }
+
@SuppressWarnings("unchecked")
public static <T> IStructureNavigate<T> step(Vec3Impl step){
if(step==null || step.get0()<0 || step.get1()<0 || step.get2()<0){
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java
index b65fcda229..2d7fc5b524 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java
@@ -47,7 +47,7 @@ public class GT_MetaTileEntity_EM_transformer extends GT_MetaTileEntity_Multiblo
.addElement('0', ofBlock(sBlockCasings1,15))
.addElement('1', ofElementChain(
ofHatchAdder(GT_MetaTileEntity_EM_transformer::addEnergyIOToMachineList,textureOffset,sHintCasingsTT,0),
- onCheckPass(t->t.casingCount++,ofBlock(sBlockCasingsTT,0))
+ onElementPass(t->t.casingCount++,ofBlock(sBlockCasingsTT,0))
))
.build();
private int casingCount=0;