From b8a654436e29505d1ac7bae0742819ff756b5e0f Mon Sep 17 00:00:00 2001 From: Tec Date: Sun, 26 Apr 2020 09:25:06 +0200 Subject: Refactor instance of for isNavigating method --- .../mechanics/structure/IStructureDefinition.java | 36 ++++++++++------------ .../mechanics/structure/IStructureElement.java | 28 +++++++++++++++++ .../mechanics/structure/IStructureNavigate.java | 24 ++------------- 3 files changed, 46 insertions(+), 42 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureDefinition.java b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureDefinition.java index f70422fe72..a32c1f8840 100644 --- a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureDefinition.java +++ b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureDefinition.java @@ -65,11 +65,10 @@ public interface IStructureDefinition { xyz[1] += basePositionY; xyz[2] += basePositionZ; - if(element instanceof IStructureNavigate) { - IStructureNavigate navigate=(IStructureNavigate)element; - abc[0] = (navigate.resetA() ? basePositionA : abc[0]) + navigate.getStepA(); - abc[1] = (navigate.resetB() ? basePositionA : abc[1]) + navigate.getStepB(); - abc[2] = (navigate.resetC() ? basePositionA : abc[2]) + navigate.getStepC(); + if(element.isNavigating()) { + abc[0] = (element.resetA() ? basePositionA : abc[0]) + element.getStepA(); + abc[1] = (element.resetB() ? basePositionA : abc[1]) + element.getStepB(); + abc[2] = (element.resetC() ? basePositionA : abc[2]) + element.getStepC(); }else { if (world.blockExists(xyz[0], xyz[1], xyz[2])) { if(!element.check(object, world, xyz[0], xyz[1], xyz[2])){ @@ -88,11 +87,10 @@ public interface IStructureDefinition { xyz[1] += basePositionY; xyz[2] += basePositionZ; - if(element instanceof IStructureNavigate) { - IStructureNavigate navigate=(IStructureNavigate)element; - abc[0] = (navigate.resetA() ? basePositionA : abc[0]) + navigate.getStepA(); - abc[1] = (navigate.resetB() ? basePositionA : abc[1]) + navigate.getStepB(); - abc[2] = (navigate.resetC() ? basePositionA : abc[2]) + navigate.getStepC(); + if(element.isNavigating()) { + abc[0] = (element.resetA() ? basePositionA : abc[0]) + element.getStepA(); + abc[1] = (element.resetB() ? basePositionA : abc[1]) + element.getStepB(); + abc[2] = (element.resetC() ? basePositionA : abc[2]) + element.getStepC(); }else { if (world.blockExists(xyz[0], xyz[1], xyz[2])) { if(!element.check(object, world, xyz[0], xyz[1], xyz[2])){ @@ -111,11 +109,10 @@ public interface IStructureDefinition { xyz[1] += basePositionY; xyz[2] += basePositionZ; - if(element instanceof IStructureNavigate) { - IStructureNavigate navigate=(IStructureNavigate)element; - abc[0] = (navigate.resetA() ? basePositionA : abc[0]) + navigate.getStepA(); - abc[1] = (navigate.resetB() ? basePositionA : abc[1]) + navigate.getStepB(); - abc[2] = (navigate.resetC() ? basePositionA : abc[2]) + navigate.getStepC(); + if(element.isNavigating()) { + abc[0] = (element.resetA() ? basePositionA : abc[0]) + element.getStepA(); + abc[1] = (element.resetB() ? basePositionA : abc[1]) + element.getStepB(); + abc[2] = (element.resetC() ? basePositionA : abc[2]) + element.getStepC(); }else { if (world.blockExists(xyz[0], xyz[1], xyz[2])) { element.spawnHint(object, world, xyz[0], xyz[1], xyz[2]); @@ -130,11 +127,10 @@ public interface IStructureDefinition { xyz[1] += basePositionY; xyz[2] += basePositionZ; - if(element instanceof IStructureNavigate) { - IStructureNavigate navigate=(IStructureNavigate)element; - abc[0] = (navigate.resetA() ? basePositionA : abc[0]) + navigate.getStepA(); - abc[1] = (navigate.resetB() ? basePositionA : abc[1]) + navigate.getStepB(); - abc[2] = (navigate.resetC() ? basePositionA : abc[2]) + navigate.getStepC(); + if(element.isNavigating()) { + abc[0] = (element.resetA() ? basePositionA : abc[0]) + element.getStepA(); + abc[1] = (element.resetB() ? basePositionA : abc[1]) + element.getStepB(); + abc[2] = (element.resetC() ? basePositionA : abc[2]) + element.getStepC(); }else { if (world.blockExists(xyz[0], xyz[1], xyz[2])) { element.placeBlock(object, world, xyz[0], xyz[1], xyz[2]); diff --git a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureElement.java b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureElement.java index 2ac5c19538..f9510910ed 100644 --- a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureElement.java +++ b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureElement.java @@ -15,4 +15,32 @@ public interface IStructureElement { default boolean placeBlock(T t,World world,int x,int y,int z){ return false; } + + default int getStepA(){ + return 1; + } + + default int getStepB(){ + return 0; + } + + default int getStepC(){ + return 0; + } + + default boolean resetA(){ + return false; + } + + default boolean resetB(){ + return false; + } + + default boolean resetC(){ + return false; + } + + default boolean isNavigating(){ + return false; + } } diff --git a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureNavigate.java b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureNavigate.java index 6382f130ee..4628c710af 100644 --- a/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureNavigate.java +++ b/src/main/java/com/github/technus/tectech/mechanics/structure/IStructureNavigate.java @@ -21,27 +21,7 @@ interface IStructureNavigate extends IStructureElement { return true; } - default int getStepA(){ - return 1; - } - - default int getStepB(){ - return 0; - } - - default int getStepC(){ - return 0; - } - - default boolean resetA(){ - return false; - } - - default boolean resetB(){ - return false; - } - - default boolean resetC(){ - return false; + default boolean isNavigating(){ + return true; } } -- cgit