From d4e74423e2ee44df0a7ca1e6cf4c2e90420c3da1 Mon Sep 17 00:00:00 2001 From: BraggestSage833 <46819052+BraggestSage833@users.noreply.github.com> Date: Fri, 2 Jul 2021 22:35:36 -0400 Subject: [PATCH 1/4] Update MetaTileEntityTransformer.java --- .../electric/MetaTileEntityTransformer.java | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java index 8f17588b1b8..53fa3cf7f70 100644 --- a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java +++ b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java @@ -96,23 +96,36 @@ protected void reinitializeEnergyContainer() { if (isTransformUp) { //storage = 1 amp high; input = tier / 4; amperage = 4; output = tier; amperage = 1 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage / 4, 4, tierVoltage, 1); + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s != EnumFacing.NORTH); + ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s == EnumFacing.NORTH); } else { //storage = 1 amp high; input = tier; amperage = 1; output = tier / 4; amperage = 4 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage, 1, tierVoltage / 4, 4); + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == EnumFacing.NORTH); + ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s != EnumFacing.NORTH); + } - ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == getFrontFacing()); - ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s == getFrontFacing().getOpposite()); - } +} + @Override public void renderMetaTileEntity(CCRenderState renderState, Matrix4 translation, IVertexOperation[] pipeline) { super.renderMetaTileEntity(renderState, translation, pipeline); if (isTransformUp) { - Textures.ENERGY_OUT_MULTI.renderSided(getFrontFacing(), renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN.renderSided(getFrontFacing().getOpposite(), renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); } else { - Textures.ENERGY_IN_MULTI.renderSided(getFrontFacing(), renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT.renderSided(getFrontFacing().getOpposite(), renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } } From 5132b54a7b0cd0053bbcf2953be9a8090e815355 Mon Sep 17 00:00:00 2001 From: BraggestSage833 <46819052+BraggestSage833@users.noreply.github.com> Date: Fri, 2 Jul 2021 23:43:27 -0400 Subject: [PATCH 2/4] Update MetaTileEntityTransformer.java --- .../electric/MetaTileEntityTransformer.java | 129 +++++++++++++++--- 1 file changed, 111 insertions(+), 18 deletions(-) diff --git a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java index 53fa3cf7f70..2695460e56d 100644 --- a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java +++ b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java @@ -96,38 +96,131 @@ protected void reinitializeEnergyContainer() { if (isTransformUp) { //storage = 1 amp high; input = tier / 4; amperage = 4; output = tier; amperage = 1 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage / 4, 4, tierVoltage, 1); - ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s != EnumFacing.NORTH); - ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s == EnumFacing.NORTH); } else { //storage = 1 amp high; input = tier; amperage = 1; output = tier / 4; amperage = 4 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage, 1, tierVoltage / 4, 4); + } + if (isTransformUp) { ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == EnumFacing.NORTH); ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s != EnumFacing.NORTH); - } -} + else { + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == EnumFacing.NORTH); + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition (s -> s != EnumFacing.NORTH); + } + } @Override public void renderMetaTileEntity(CCRenderState renderState, Matrix4 translation, IVertexOperation[] pipeline) { super.renderMetaTileEntity(renderState, translation, pipeline); if (isTransformUp) { - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } else { - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + if (frontFacing == EnumFacing.NORTH) { + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); +} + if (frontFacing == EnumFacing.SOUTH) { + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline,GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + + } + if(frontFacing ==EnumFacing.EAST){ + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if(frontFacing ==EnumFacing.WEST){ + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if(frontFacing ==EnumFacing.DOWN){ + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + + if(frontFacing ==EnumFacing.UP){ + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + } + else{ + if (frontFacing == EnumFacing.NORTH) { + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if (frontFacing == EnumFacing.SOUTH) { + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if(frontFacing ==EnumFacing.EAST){ + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if(frontFacing ==EnumFacing.WEST){ + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + if(frontFacing ==EnumFacing.DOWN){ + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + + if(frontFacing ==EnumFacing.UP){ + Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); + } + + } } - } + @Override public boolean isValidFrontFacing(EnumFacing facing) { From 13ee3add5daa58ad70486fc7450eb0f7d56033eb Mon Sep 17 00:00:00 2001 From: BraggestSage833 <46819052+BraggestSage833@users.noreply.github.com> Date: Sat, 3 Jul 2021 00:17:15 -0400 Subject: [PATCH 3/4] Fix sides to work with getFrontFacing() --- .../electric/MetaTileEntityTransformer.java | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java index 2695460e56d..2f595c51030 100644 --- a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java +++ b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java @@ -96,18 +96,13 @@ protected void reinitializeEnergyContainer() { if (isTransformUp) { //storage = 1 amp high; input = tier / 4; amperage = 4; output = tier; amperage = 1 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage / 4, 4, tierVoltage, 1); - } else { + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s != getFrontFacing()); + ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s == getFrontFacing()); + } else{ //storage = 1 amp high; input = tier; amperage = 1; output = tier / 4; amperage = 4 this.energyContainer = new EnergyContainerHandler(this, tierVoltage * 8L, tierVoltage, 1, tierVoltage / 4, 4); - } - if (isTransformUp) { - ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == EnumFacing.NORTH); - ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s != EnumFacing.NORTH); - } - else { - ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == EnumFacing.NORTH); - ((EnergyContainerHandler) this.energyContainer).setSideInputCondition (s -> s != EnumFacing.NORTH); - + ((EnergyContainerHandler) this.energyContainer).setSideInputCondition(s -> s == getFrontFacing()); + ((EnergyContainerHandler) this.energyContainer).setSideOutputCondition(s -> s != getFrontFacing()); } } From 5915a048bd3bdd7b19a3c76c3869074b5b568860 Mon Sep 17 00:00:00 2001 From: BraggestSage833 <46819052+BraggestSage833@users.noreply.github.com> Date: Sun, 4 Jul 2021 00:11:36 -0400 Subject: [PATCH 4/4] Update renderMetaTileEntity --- .../electric/MetaTileEntityTransformer.java | 110 ++---------------- 1 file changed, 7 insertions(+), 103 deletions(-) diff --git a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java index 2f595c51030..624801df6ee 100644 --- a/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java +++ b/src/main/java/gregtech/common/metatileentities/electric/MetaTileEntityTransformer.java @@ -12,6 +12,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.MetaTileEntityHolder; import gregtech.api.metatileentity.TieredMetaTileEntity; +import gregtech.api.render.SimpleOverlayRenderer; import gregtech.api.render.Textures; import gregtech.api.util.PipelineUtil; import gregtech.common.tools.DamageValues; @@ -27,6 +28,7 @@ import net.minecraft.world.World; import javax.annotation.Nullable; +import java.util.Arrays; import java.util.List; public class MetaTileEntityTransformer extends TieredMetaTileEntity { @@ -109,111 +111,13 @@ protected void reinitializeEnergyContainer() { @Override public void renderMetaTileEntity(CCRenderState renderState, Matrix4 translation, IVertexOperation[] pipeline) { super.renderMetaTileEntity(renderState, translation, pipeline); - if (isTransformUp) { - if (frontFacing == EnumFacing.NORTH) { - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); -} - if (frontFacing == EnumFacing.SOUTH) { - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline,GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - - } - if(frontFacing ==EnumFacing.EAST){ - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if(frontFacing ==EnumFacing.WEST){ - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if(frontFacing ==EnumFacing.DOWN){ - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - - if(frontFacing ==EnumFacing.UP){ - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - } - else{ - if (frontFacing == EnumFacing.NORTH) { - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if (frontFacing == EnumFacing.SOUTH) { - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - - } - if(frontFacing ==EnumFacing.EAST){ - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if(frontFacing ==EnumFacing.WEST){ - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if(frontFacing ==EnumFacing.DOWN){ - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } - if(frontFacing ==EnumFacing.UP){ - Textures.ENERGY_IN_MULTI.renderSided(EnumFacing.UP, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier()])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.SOUTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.EAST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.WEST, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.NORTH, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - Textures.ENERGY_OUT_MULTI.renderSided(EnumFacing.DOWN, renderState, translation, PipelineUtil.color(pipeline, GTValues.VC[getTier() - 1])); - } + SimpleOverlayRenderer frontFacetexture = isTransformUp ? Textures.ENERGY_OUT_MULTI : Textures.ENERGY_IN_MULTI; + SimpleOverlayRenderer OtherFacetexture = isTransformUp ? Textures.ENERGY_IN_MULTI : Textures.ENERGY_OUT_MULTI; + frontFacetexture.renderSided(frontFacing,renderState,translation,PipelineUtil.color(pipeline, GTValues.VC[getTier()])); + Arrays.stream(EnumFacing.values()).filter(f -> f != frontFacing) + .forEach((f -> OtherFacetexture.renderSided(f,renderState,translation,PipelineUtil.color(pipeline, GTValues.VC[getTier() -1])))); - } }