aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/metatileentity/implementations
diff options
context:
space:
mode:
authorJason Mitchell <mitchej@gmail.com>2023-04-22 22:33:35 -0700
committerGitHub <noreply@github.com>2023-04-23 07:33:35 +0200
commit56f2269f4af6d2130bdb2b6e6ac6e13bce89e47b (patch)
tree745e6d92025ec4ef449fc59fa5fdd741200b0489 /src/main/java/gregtech/api/metatileentity/implementations
parentac0b7a7da46646d325def36eed811941dbfc5950 (diff)
downloadGT5-Unofficial-56f2269f4af6d2130bdb2b6e6ac6e13bce89e47b.tar.gz
GT5-Unofficial-56f2269f4af6d2130bdb2b6e6ac6e13bce89e47b.tar.bz2
GT5-Unofficial-56f2269f4af6d2130bdb2b6e6ac6e13bce89e47b.zip
Forge direction (#1895)
* ForgeDirection Also refactor the clusterfuck that was `getCoordinateScan` Co-authored by: Jason Mitchell <mitchej@gmail.com> * Fix rendering of Frame Boxes Frame boxes needed their own implementation of getTexture with int connexion mask, which is returning an error texture for the MetaTileEntity, because pipes (FrameBox **is** a pipe) do use this method to return different textures based on connexion status. --------- Co-authored-by: Léa Gris <lea.gris@noiraude.net>
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/implementations')
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java289
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java177
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java19
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java188
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java23
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java21
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull.java23
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull_NonElectric.java12
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java150
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java24
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java21
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java8
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java89
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_EnhancedMultiBlockBase.java24
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java17
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java9
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Dynamo.java13
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Energy.java13
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java13
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java17
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java15
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java30
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java46
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java11
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java14
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_SpecialFilter.java6
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java113
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java13
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java13
29 files changed, 736 insertions, 675 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
index 122a5f5128..699b0d5797 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
@@ -1,7 +1,7 @@
package gregtech.api.metatileentity.implementations;
-import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES;
import static gregtech.api.enums.Mods.GalacticraftCore;
+import static net.minecraftforge.common.util.ForgeDirection.DOWN;
import java.util.ArrayList;
import java.util.HashSet;
@@ -111,54 +111,52 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections,
- byte aColorIndex, boolean aConnected, boolean aRedstone) {
- if (!mInsulated) return new ITexture[] { TextureFactory.of(
- mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire],
- Dyes.getModulation(aColorIndex, mMaterial.mRGBa)) };
- if (aConnected) {
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection,
+ int facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
+ if (!mInsulated) return new ITexture[] { TextureFactory
+ .of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], Dyes.getModulation(colorIndex, mMaterial.mRGBa)) };
+ if (active) {
float tThickNess = getThickNess();
- if (tThickNess < 0.124F) return new ITexture[] { TextureFactory.of(
- Textures.BlockIcons.INSULATION_FULL,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ if (tThickNess < 0.124F) return new ITexture[] { TextureFactory
+ .of(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
if (tThickNess < 0.374F) // 0.375 x1
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_TINY,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
if (tThickNess < 0.499F) // 0.500 x2
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_SMALL,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
if (tThickNess < 0.624F) // 0.625 x4
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_MEDIUM,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
if (tThickNess < 0.749F) // 0.750 x8
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_MEDIUM_PLUS,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
if (tThickNess < 0.874F) // 0.825 x12
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_LARGE,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
return new ITexture[] {
TextureFactory.of(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa),
TextureFactory.of(
Textures.BlockIcons.INSULATION_HUGE,
- Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
}
return new ITexture[] { TextureFactory
- .of(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
+ .of(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(colorIndex, Dyes.CABLE_INSULATION.mRGBa)) };
}
@Override
@@ -178,7 +176,7 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return false;
}
@@ -188,7 +186,7 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public final boolean renderInside(byte aSide) {
+ public final boolean renderInside(ForgeDirection side) {
return false;
}
@@ -203,42 +201,40 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!isConnectedAtSide(aSide) && aSide != 6) return 0;
- if (!getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ public long injectEnergyUnits(ForgeDirection side, long voltage, long amperage) {
+ if (!isConnectedAtSide(side) && side != ForgeDirection.UNKNOWN) return 0;
+ if (!getBaseMetaTileEntity().getCoverInfoAtSide(side)
.letsEnergyIn()) return 0;
- final HashSet<TileEntity> nul = null;
- return transferElectricity(aSide, aVoltage, aAmperage, nul);
+ return transferElectricity(side, voltage, amperage, (HashSet<TileEntity>) null);
}
@Override
@Deprecated
- public long transferElectricity(byte aSide, long aVoltage, long aAmperage,
+ public long transferElectricity(ForgeDirection side, long aVoltage, long aAmperage,
ArrayList<TileEntity> aAlreadyPassedTileEntityList) {
- return transferElectricity(aSide, aVoltage, aAmperage, new HashSet<>(aAlreadyPassedTileEntityList));
+ return transferElectricity(side, aVoltage, aAmperage, new HashSet<>(aAlreadyPassedTileEntityList));
}
@Override
- public long transferElectricity(byte aSide, long aVoltage, long aAmperage, HashSet<TileEntity> aAlreadyPassedSet) {
- if (!getBaseMetaTileEntity().isServerSide() || !isConnectedAtSide(aSide) && aSide != 6) return 0;
+ public long transferElectricity(ForgeDirection side, long voltage, long amperage,
+ HashSet<TileEntity> alreadyPassedSet) {
+ if (!getBaseMetaTileEntity().isServerSide() || !isConnectedAtSide(side) && side != ForgeDirection.UNKNOWN)
+ return 0;
final BaseMetaPipeEntity tBase = (BaseMetaPipeEntity) getBaseMetaTileEntity();
if (!(tBase.getNode() instanceof PowerNode tNode)) return 0;
- if (tNode != null) {
- int tPlace = 0;
- final Node[] tToPower = new Node[tNode.mConsumers.size()];
- if (tNode.mHadVoltage) {
- for (ConsumerNode consumer : tNode.mConsumers) {
- if (consumer.needsEnergy()) tToPower[tPlace++] = consumer;
- }
- } else {
- tNode.mHadVoltage = true;
- for (ConsumerNode consumer : tNode.mConsumers) {
- tToPower[tPlace++] = consumer;
- }
+ int tPlace = 0;
+ final Node[] tToPower = new Node[tNode.mConsumers.size()];
+ if (tNode.mHadVoltage) {
+ for (ConsumerNode consumer : tNode.mConsumers) {
+ if (consumer.needsEnergy()) tToPower[tPlace++] = consumer;
+ }
+ } else {
+ tNode.mHadVoltage = true;
+ for (ConsumerNode consumer : tNode.mConsumers) {
+ tToPower[tPlace++] = consumer;
}
- return PowerNodes.powerNode(tNode, null, new NodeList(tToPower), (int) aVoltage, (int) aAmperage);
}
- return 0;
+ return PowerNodes.powerNode(tNode, null, new NodeList(tToPower), (int) voltage, (int) amperage);
}
@Override
@@ -262,15 +258,15 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean onWireCutterRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
+ public boolean onWireCutterRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer aPlayer,
+ float aX, float aY, float aZ) {
if (GT_Mod.gregtechproxy.gt6Cable
&& GT_ModHandler.damageOrDechargeItem(aPlayer.inventory.getCurrentItem(), 1, 500, aPlayer)) {
- if (isConnectedAtSide(aWrenchingSide)) {
- disconnect(aWrenchingSide);
+ if (isConnectedAtSide(wrenchingSide)) {
+ disconnect(wrenchingSide);
GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
} else if (!GT_Mod.gregtechproxy.costlyCableConnection) {
- if (connect(aWrenchingSide) > 0)
+ if (connect(wrenchingSide) > 0)
GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
@@ -279,15 +275,15 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean onSolderingToolRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
+ public boolean onSolderingToolRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer aPlayer,
+ float aX, float aY, float aZ) {
if (GT_Mod.gregtechproxy.gt6Cable
&& GT_ModHandler.damageOrDechargeItem(aPlayer.inventory.getCurrentItem(), 1, 500, aPlayer)) {
- if (isConnectedAtSide(aWrenchingSide)) {
- disconnect(aWrenchingSide);
+ if (isConnectedAtSide(wrenchingSide)) {
+ disconnect(wrenchingSide);
GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
} else if (!GT_Mod.gregtechproxy.costlyCableConnection || GT_ModHandler.consumeSolderingMaterial(aPlayer)) {
- if (connect(aWrenchingSide) > 0)
+ if (connect(wrenchingSide) > 0)
GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
@@ -296,27 +292,27 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean letsIn(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsIn(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsEnergyIn(aSide, aCoverID, aCoverVariable, aTileEntity);
+ return coverBehavior.letsEnergyIn(side, aCoverID, aCoverVariable, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsOut(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsEnergyOut(aSide, aCoverID, aCoverVariable, aTileEntity);
+ return coverBehavior.letsEnergyOut(side, aCoverID, aCoverVariable, aTileEntity);
}
@Override
- public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsEnergyIn(aSide, aCoverID, aCoverVariable, aTileEntity);
+ return coverBehavior.letsEnergyIn(side, aCoverID, aCoverVariable, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsEnergyOut(aSide, aCoverID, aCoverVariable, aTileEntity);
+ return coverBehavior.letsEnergyOut(side, aCoverID, aCoverVariable, aTileEntity);
}
@Override
@@ -330,18 +326,16 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean canConnect(byte aSide, TileEntity tTileEntity) {
+ public boolean canConnect(ForgeDirection side, TileEntity tileEntity) {
final IGregTechTileEntity baseMetaTile = getBaseMetaTileEntity();
- final GT_CoverBehaviorBase<?> coverBehavior = baseMetaTile.getCoverBehaviorAtSideNew(aSide);
- final byte tSide = GT_Utility.getOppositeSide(aSide);
- final ForgeDirection tDir = ForgeDirection.getOrientation(tSide);
+ final GT_CoverBehaviorBase<?> coverBehavior = baseMetaTile.getCoverBehaviorAtSideNew(side);
+ final ForgeDirection oppositeSide = side.getOpposite();
// GT Machine handling
- if ((tTileEntity instanceof PowerLogicHost
- && ((PowerLogicHost) tTileEntity).getPowerLogic(ForgeDirection.getOrientation(aSide)) != null)
- || ((tTileEntity instanceof IEnergyConnected)
- && (((IEnergyConnected) tTileEntity).inputEnergyFrom(tSide, false)
- || ((IEnergyConnected) tTileEntity).outputsEnergyTo(tSide, false))))
+ if ((tileEntity instanceof PowerLogicHost powerLogic && powerLogic.getPowerLogic(side) != null)
+ || ((tileEntity instanceof IEnergyConnected energyConnected)
+ && (energyConnected.inputEnergyFrom(oppositeSide, false)
+ || energyConnected.outputsEnergyTo(oppositeSide, false))))
return true;
// Solar Panel Compat
@@ -349,47 +343,43 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
// ((tIsGregTechTileEntity && tIsTileEntityCable) && (tAlwaysLookConnected || tLetEnergyIn || tLetEnergyOut) )
// --> Not needed
- if (GalacticraftCore.isModLoaded() && GT_GC_Compat.canConnect(tTileEntity, tDir)) return true;
+ if (GalacticraftCore.isModLoaded() && GT_GC_Compat.canConnect(tileEntity, oppositeSide)) return true;
// AE2-p2p Compat
if (GT_Mod.gregtechproxy.mAE2Integration) {
- if (tTileEntity instanceof appeng.tile.powersink.IC2
- && ((appeng.tile.powersink.IC2) tTileEntity).acceptsEnergyFrom((TileEntity) baseMetaTile, tDir))
- return true;
+ if (tileEntity instanceof appeng.tile.powersink.IC2 ic2sink
+ && ic2sink.acceptsEnergyFrom((TileEntity) baseMetaTile, oppositeSide)) return true;
}
// IC2 Compat
{
final TileEntity ic2Energy;
- if (tTileEntity instanceof IReactorChamber)
- ic2Energy = (TileEntity) ((IReactorChamber) tTileEntity).getReactor();
- else ic2Energy = (tTileEntity == null || tTileEntity instanceof IEnergyTile || EnergyNet.instance == null)
- ? tTileEntity
- : EnergyNet.instance.getTileEntity(
- tTileEntity.getWorldObj(),
- tTileEntity.xCoord,
- tTileEntity.yCoord,
- tTileEntity.zCoord);
+ if (tileEntity instanceof IReactorChamber)
+ ic2Energy = (TileEntity) ((IReactorChamber) tileEntity).getReactor();
+ else ic2Energy = (tileEntity == null || tileEntity instanceof IEnergyTile || EnergyNet.instance == null)
+ ? tileEntity
+ : EnergyNet.instance
+ .getTileEntity(tileEntity.getWorldObj(), tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
// IC2 Sink Compat
if ((ic2Energy instanceof IEnergySink)
- && ((IEnergySink) ic2Energy).acceptsEnergyFrom((TileEntity) baseMetaTile, tDir)) return true;
+ && ((IEnergySink) ic2Energy).acceptsEnergyFrom((TileEntity) baseMetaTile, oppositeSide)) return true;
// IC2 Source Compat
if (GT_Mod.gregtechproxy.ic2EnergySourceCompat && (ic2Energy instanceof IEnergySource)) {
- if (((IEnergySource) ic2Energy).emitsEnergyTo((TileEntity) baseMetaTile, tDir)) {
+ if (((IEnergySource) ic2Energy).emitsEnergyTo((TileEntity) baseMetaTile, oppositeSide)) {
return true;
}
}
}
// RF Output Compat
- if (GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver
- && ((IEnergyReceiver) tTileEntity).canConnectEnergy(tDir)) return true;
+ if (GregTech_API.mOutputRF && tileEntity instanceof IEnergyReceiver
+ && ((IEnergyReceiver) tileEntity).canConnectEnergy(oppositeSide)) return true;
// RF Input Compat
- return GregTech_API.mInputRF && (tTileEntity instanceof IEnergyEmitter
- && ((IEnergyEmitter) tTileEntity).emitsEnergyTo((TileEntity) baseMetaTile, tDir));
+ return GregTech_API.mInputRF && (tileEntity instanceof IEnergyEmitter
+ && ((IEnergyEmitter) tileEntity).emitsEnergyTo((TileEntity) baseMetaTile, oppositeSide));
}
@Override
@@ -399,12 +389,14 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@@ -508,48 +500,53 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
private AxisAlignedBB getActualCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
float tSpace = (1f - mThickNess) / 2;
- float tSide0 = tSpace;
- float tSide1 = 1f - tSpace;
- float tSide2 = tSpace;
- float tSide3 = 1f - tSpace;
- float tSide4 = tSpace;
- float tSide5 = 1f - tSpace;
-
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 0) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide3 = tSide5 = 1;
+ float spaceDown = tSpace;
+ float spaceUp = 1f - tSpace;
+ float spaceNorth = tSpace;
+ float spaceSouth = 1f - tSpace;
+ float spaceWest = tSpace;
+ float spaceEast = 1f - tSpace;
+
+ if (getBaseMetaTileEntity().getCoverIDAtSide(DOWN) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 1) != 0) {
- tSide2 = tSide4 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.UP) != 0) {
+ spaceNorth = spaceWest = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 2) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide1 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.NORTH) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceUp = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 3) != 0) {
- tSide0 = tSide4 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.SOUTH) != 0) {
+ spaceDown = spaceWest = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 4) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide1 = tSide3 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.WEST) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceUp = spaceSouth = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 5) != 0) {
- tSide0 = tSide2 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.EAST) != 0) {
+ spaceDown = spaceNorth = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
byte tConn = ((BaseMetaPipeEntity) getBaseMetaTileEntity()).mConnections;
- if ((tConn & (1 << ForgeDirection.DOWN.ordinal())) != 0) tSide0 = 0f;
- if ((tConn & (1 << ForgeDirection.UP.ordinal())) != 0) tSide1 = 1f;
- if ((tConn & (1 << ForgeDirection.NORTH.ordinal())) != 0) tSide2 = 0f;
- if ((tConn & (1 << ForgeDirection.SOUTH.ordinal())) != 0) tSide3 = 1f;
- if ((tConn & (1 << ForgeDirection.WEST.ordinal())) != 0) tSide4 = 0f;
- if ((tConn & (1 << ForgeDirection.EAST.ordinal())) != 0) tSide5 = 1f;
+ if ((tConn & (1 << DOWN.ordinal())) != 0) spaceDown = 0f;
+ if ((tConn & (1 << ForgeDirection.UP.ordinal())) != 0) spaceUp = 1f;
+ if ((tConn & (1 << ForgeDirection.NORTH.ordinal())) != 0) spaceNorth = 0f;
+ if ((tConn & (1 << ForgeDirection.SOUTH.ordinal())) != 0) spaceSouth = 1f;
+ if ((tConn & (1 << ForgeDirection.WEST.ordinal())) != 0) spaceWest = 0f;
+ if ((tConn & (1 << ForgeDirection.EAST.ordinal())) != 0) spaceEast = 1f;
- return AxisAlignedBB
- .getBoundingBox(aX + tSide4, aY + tSide0, aZ + tSide2, aX + tSide5, aY + tSide1, aZ + tSide3);
+ return AxisAlignedBB.getBoundingBox(
+ aX + spaceWest,
+ aY + spaceDown,
+ aZ + spaceNorth,
+ aX + spaceEast,
+ aY + spaceUp,
+ aZ + spaceSouth);
}
@Override
@@ -568,18 +565,20 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
if (mConnections != 0) {
final IGregTechTileEntity baseMeta = getBaseMetaTileEntity();
- for (byte aSide = 0; aSide < 6; aSide++) if (isConnectedAtSide(aSide)) {
- final TileEntity tTileEntity = baseMeta.getTileEntityAtSide(aSide);
- final TileEntity tEmitter = (tTileEntity == null || tTileEntity instanceof IEnergyTile
- || EnergyNet.instance == null)
- ? tTileEntity
- : EnergyNet.instance.getTileEntity(
- tTileEntity.getWorldObj(),
- tTileEntity.xCoord,
- tTileEntity.yCoord,
- tTileEntity.zCoord);
-
- if (tEmitter instanceof IEnergyEmitter) return true;
+ for (final ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) {
+ if (isConnectedAtSide(side)) {
+ final TileEntity tTileEntity = baseMeta.getTileEntityAtSide(side);
+ final TileEntity tEmitter = (tTileEntity == null || tTileEntity instanceof IEnergyTile
+ || EnergyNet.instance == null)
+ ? tTileEntity
+ : EnergyNet.instance.getTileEntity(
+ tTileEntity.getWorldObj(),
+ tTileEntity.xCoord,
+ tTileEntity.yCoord,
+ tTileEntity.zCoord);
+
+ if (tEmitter instanceof IEnergyEmitter) return true;
+ }
}
}
return false;
@@ -589,22 +588,22 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
public void reloadLocks() {
final BaseMetaPipeEntity pipe = (BaseMetaPipeEntity) getBaseMetaTileEntity();
if (pipe.getNode() != null) {
- for (byte tSide : ALL_VALID_SIDES) {
- if (isConnectedAtSide(tSide)) {
- final CoverInfo coverInfo = pipe.getCoverInfoAtSide(tSide);
+ for (final ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) {
+ if (isConnectedAtSide(side)) {
+ final CoverInfo coverInfo = pipe.getCoverInfoAtSide(side);
if (coverInfo.getCoverBehavior() instanceof GT_Cover_None) continue;
if (!letsIn(coverInfo) || !letsOut(coverInfo)) {
- pipe.addToLock(pipe, tSide);
+ pipe.addToLock(pipe, side);
} else {
- pipe.removeFromLock(pipe, tSide);
+ pipe.removeFromLock(pipe, side);
}
}
}
} else {
boolean dontAllow = false;
- for (byte tSide : ALL_VALID_SIDES) {
- if (isConnectedAtSide(tSide)) {
- final CoverInfo coverInfo = pipe.getCoverInfoAtSide(tSide);
+ for (final ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) {
+ if (isConnectedAtSide(side)) {
+ final CoverInfo coverInfo = pipe.getCoverInfoAtSide(side);
if (coverInfo.getCoverBehavior() instanceof GT_Cover_None) continue;
if (!letsIn(coverInfo) || !letsOut(coverInfo)) {
@@ -613,9 +612,9 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
}
}
if (dontAllow) {
- pipe.addToLock(pipe, 0);
+ pipe.addToLock(pipe, DOWN);
} else {
- pipe.removeFromLock(pipe, 0);
+ pipe.removeFromLock(pipe, DOWN);
}
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
index 76c7f418e9..e19d6574c3 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
@@ -1,5 +1,6 @@
package gregtech.api.metatileentity.implementations;
+import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES;
import static gregtech.api.enums.GT_Values.D1;
import static gregtech.api.objects.XSTR.XSTR_INSTANCE;
@@ -108,54 +109,57 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections,
- byte aColorIndex, boolean aConnected, boolean aRedstone) {
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, int aConnections,
+ int colorIndex, boolean aConnected, boolean redstoneLevel) {
+ final int ordinalSide = side.ordinal();
final float tThickNess = getThickNess();
if (mDisableInput == 0)
- return new ITexture[] { aConnected ? getBaseTexture(tThickNess, mPipeAmount, mMaterial, aColorIndex)
+ return new ITexture[] { aConnected ? getBaseTexture(tThickNess, mPipeAmount, mMaterial, colorIndex)
: TextureFactory.of(
mMaterial.mIconSet.mTextures[OrePrefixes.pipe.mTextureIndex],
- Dyes.getModulation(aColorIndex, mMaterial.mRGBa)) };
+ Dyes.getModulation(colorIndex, mMaterial.mRGBa)) };
byte tMask = 0;
final byte[][] sRestrictionArray = { { 2, 3, 5, 4 }, { 2, 3, 4, 5 }, { 1, 0, 4, 5 }, { 1, 0, 4, 5 },
{ 1, 0, 2, 3 }, { 1, 0, 2, 3 } };
- if (aSide >= 0 && aSide < 6) {
- for (byte i = 0; i < 4; i++) if (isInputDisabledAtSide(sRestrictionArray[aSide][i])) tMask |= 1 << i;
+ if (side != ForgeDirection.UNKNOWN) {
+ for (byte i = 0; i < 4; i++)
+ if (isInputDisabledAtSide(ForgeDirection.getOrientation(sRestrictionArray[ordinalSide][i])))
+ tMask |= 1 << i;
// Full block size renderer flips side 5 and 2 textures, flip restrictor textures to compensate
- if (aSide == 5 || aSide == 2) if (tMask > 3 && tMask < 12) tMask = (byte) (tMask ^ 12);
+ if (ordinalSide == 5 || ordinalSide == 2) if (tMask > 3 && tMask < 12) tMask = (byte) (tMask ^ 12);
}
- return new ITexture[] { aConnected ? getBaseTexture(tThickNess, mPipeAmount, mMaterial, aColorIndex)
+ return new ITexture[] { aConnected ? getBaseTexture(tThickNess, mPipeAmount, mMaterial, colorIndex)
: TextureFactory.of(
mMaterial.mIconSet.mTextures[OrePrefixes.pipe.mTextureIndex],
- Dyes.getModulation(aColorIndex, mMaterial.mRGBa)),
+ Dyes.getModulation(colorIndex, mMaterial.mRGBa)),
getRestrictorTexture(tMask) };
}
- protected static ITexture getBaseTexture(float aThickNess, int aPipeAmount, Materials aMaterial, byte aColorIndex) {
+ protected static ITexture getBaseTexture(float aThickNess, int aPipeAmount, Materials aMaterial, int colorIndex) {
if (aPipeAmount >= 9) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeNonuple.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aPipeAmount >= 4) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeQuadruple.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aThickNess < 0.124F) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipe.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aThickNess < 0.374F) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeTiny.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aThickNess < 0.499F) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeSmall.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aThickNess < 0.749F) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeMedium.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
if (aThickNess < 0.874F) return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeLarge.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
return TextureFactory.of(
aMaterial.mIconSet.mTextures[OrePrefixes.pipeHuge.mTextureIndex],
- Dyes.getModulation(aColorIndex, aMaterial.mRGBa));
+ Dyes.getModulation(colorIndex, aMaterial.mRGBa));
}
protected static ITexture getRestrictorTexture(byte aMask) {
@@ -195,7 +199,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return false;
}
@@ -205,7 +209,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public final boolean renderInside(byte aSide) {
+ public final boolean renderInside(ForgeDirection side) {
return false;
}
@@ -376,22 +380,22 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
// Tank, From, Amount to receive
final List<MutableTriple<IFluidHandler, ForgeDirection, Integer>> tTanks = new ArrayList<>();
final int amount = tFluid.amount;
-
- for (byte aSide, i = 0, j = (byte) aBaseMetaTileEntity.getRandomNumber(6); i < 6; i++) {
+ final byte tOffset = (byte) getBaseMetaTileEntity().getRandomNumber(6);
+ for (final byte i : ALL_VALID_SIDES) {
// Get a list of tanks accepting fluids, and what side they're on
- aSide = (byte) ((i + j) % 6);
- final byte tSide = GT_Utility.getOppositeSide(aSide);
- final IFluidHandler tTank = aBaseMetaTileEntity.getITankContainerAtSide(aSide);
+ final ForgeDirection side = ForgeDirection.getOrientation((i + tOffset) % 6);
+ final ForgeDirection oppositeSide = side.getOpposite();
+ final IFluidHandler tTank = aBaseMetaTileEntity.getITankContainerAtSide(side);
final IGregTechTileEntity gTank = tTank instanceof IGregTechTileEntity ? (IGregTechTileEntity) tTank : null;
- if (isConnectedAtSide(aSide) && tTank != null
- && (mLastReceivedFrom & (1 << aSide)) == 0
- && getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ if (isConnectedAtSide(side) && tTank != null
+ && (mLastReceivedFrom & (1 << side.ordinal())) == 0
+ && getBaseMetaTileEntity().getCoverInfoAtSide(side)
.letsFluidOut(tFluid.getFluid())
- && (gTank == null || gTank.getCoverInfoAtSide(tSide)
+ && (gTank == null || gTank.getCoverInfoAtSide(oppositeSide)
.letsFluidIn(tFluid.getFluid()))) {
- if (tTank.fill(ForgeDirection.getOrientation(tSide), tFluid, false) > 0) {
- tTanks.add(new MutableTriple<>(tTank, ForgeDirection.getOrientation(tSide), 0));
+ if (tTank.fill(oppositeSide, tFluid, false) > 0) {
+ tTanks.add(new MutableTriple<>(tTank, oppositeSide, 0));
}
tFluid.amount = amount; // Because some mods do actually modify input fluid stack
}
@@ -399,19 +403,19 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
// How much of this fluid is available for distribution?
final double tAmount = Math.max(1, Math.min(mCapacity * 10, tFluid.amount));
- final double tNumTanks = tTanks.size();
+
final FluidStack maxFluid = tFluid.copy();
maxFluid.amount = Integer.MAX_VALUE;
double availableCapacity = 0;
// Calculate available capacity for distribution from all tanks
- for (MutableTriple<IFluidHandler, ForgeDirection, Integer> tEntry : tTanks) {
+ for (final MutableTriple<IFluidHandler, ForgeDirection, Integer> tEntry : tTanks) {
tEntry.right = tEntry.left.fill(tEntry.middle, maxFluid, false);
availableCapacity += tEntry.right;
}
// Now distribute
- for (MutableTriple<IFluidHandler, ForgeDirection, Integer> tEntry : tTanks) {
+ for (final MutableTriple<IFluidHandler, ForgeDirection, Integer> tEntry : tTanks) {
// Distribue fluids based on percentage available space at destination
if (availableCapacity > tAmount)
tEntry.right = (int) Math.floor(tEntry.right * tAmount / availableCapacity);
@@ -431,26 +435,27 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
+ public boolean onWrenchRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer entityPlayer,
+ float aX, float aY, float aZ) {
if (GT_Mod.gregtechproxy.gt6Pipe) {
- final byte tSide = GT_Utility.determineWrenchingSide(aSide, aX, aY, aZ);
- final byte tMask = (byte) (1 << tSide);
- if (aPlayer.isSneaking()) {
+ final ForgeDirection tSide = GT_Utility.determineWrenchingSide(side, aX, aY, aZ);
+ final byte tMask = (byte) (1 << tSide.ordinal());
+ if (entityPlayer.isSneaking()) {
if (isInputDisabledAtSide(tSide)) {
mDisableInput &= ~tMask;
- GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("212", "Input enabled"));
+ GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("212", "Input enabled"));
if (!isConnectedAtSide(tSide)) connect(tSide);
} else {
mDisableInput |= tMask;
- GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("213", "Input disabled"));
+ GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("213", "Input disabled"));
}
} else {
if (!isConnectedAtSide(tSide)) {
- if (connect(tSide) > 0) GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
+ if (connect(tSide) > 0)
+ GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("214", "Connected"));
} else {
disconnect(tSide);
- GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("215", "Disconnected"));
}
}
return true;
@@ -459,27 +464,27 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean letsIn(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsIn(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsFluidIn(aSide, aCoverID, aCoverVariable, null, aTileEntity);
+ return coverBehavior.letsFluidIn(side, aCoverID, aCoverVariable, null, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsOut(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsFluidOut(aSide, aCoverID, aCoverVariable, null, aTileEntity);
+ return coverBehavior.letsFluidOut(side, aCoverID, aCoverVariable, null, aTileEntity);
}
@Override
- public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsFluidIn(aSide, aCoverID, aCoverVariable, null, aTileEntity);
+ return coverBehavior.letsFluidIn(side, aCoverID, aCoverVariable, null, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsFluidOut(aSide, aCoverID, aCoverVariable, null, aTileEntity);
+ return coverBehavior.letsFluidOut(side, aCoverID, aCoverVariable, null, aTileEntity);
}
@Override
@@ -493,29 +498,27 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean canConnect(byte aSide, TileEntity tTileEntity) {
- if (tTileEntity == null) return false;
+ public boolean canConnect(ForgeDirection side, TileEntity tileEntity) {
+ if (tileEntity == null) return false;
- final byte tSide = (byte) ForgeDirection.getOrientation(aSide)
- .getOpposite()
- .ordinal();
+ final ForgeDirection tSide = side.getOpposite();
final IGregTechTileEntity baseMetaTile = getBaseMetaTileEntity();
if (baseMetaTile == null) return false;
- final GT_CoverBehaviorBase<?> coverBehavior = baseMetaTile.getCoverBehaviorAtSideNew(aSide);
- final IGregTechTileEntity gTileEntity = (tTileEntity instanceof IGregTechTileEntity)
- ? (IGregTechTileEntity) tTileEntity
+ final GT_CoverBehaviorBase<?> coverBehavior = baseMetaTile.getCoverBehaviorAtSideNew(side);
+ final IGregTechTileEntity gTileEntity = (tileEntity instanceof IGregTechTileEntity)
+ ? (IGregTechTileEntity) tileEntity
: null;
- if (coverBehavior instanceof GT_Cover_Drain || (GregTech_API.mTConstruct && isTConstructFaucet(tTileEntity)))
+ if (coverBehavior instanceof GT_Cover_Drain || (GregTech_API.mTConstruct && isTConstructFaucet(tileEntity)))
return true;
- final IFluidHandler fTileEntity = (tTileEntity instanceof IFluidHandler) ? (IFluidHandler) tTileEntity : null;
+ final IFluidHandler fTileEntity = (tileEntity instanceof IFluidHandler) ? (IFluidHandler) tileEntity : null;
if (fTileEntity != null) {
- final FluidTankInfo[] tInfo = fTileEntity.getTankInfo(ForgeDirection.getOrientation(tSide));
+ final FluidTankInfo[] tInfo = fTileEntity.getTankInfo(tSide);
if (tInfo != null) {
- return tInfo.length > 0 || (GregTech_API.mTranslocator && isTranslocator(tTileEntity))
+ return tInfo.length > 0 || (GregTech_API.mTranslocator && isTranslocator(tileEntity))
|| gTileEntity != null
&& gTileEntity.getCoverBehaviorAtSideNew(tSide) instanceof GT_Cover_FluidRegulator;
}
@@ -578,7 +581,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public FluidTankInfo[] getTankInfo(ForgeDirection aSide) {
+ public FluidTankInfo[] getTankInfo(ForgeDirection side) {
if (getCapacity() <= 0 && !getBaseMetaTileEntity().hasSteamEngineUpgrade()) return new FluidTankInfo[] {};
ArrayList<FluidTankInfo> tList = new ArrayList<>();
for (FluidStack tFluid : mFluids) tList.add(new FluidTankInfo(tFluid, mCapacity * 20));
@@ -586,12 +589,14 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@@ -613,7 +618,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public final int fill_default(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
+ public final int fill_default(ForgeDirection side, FluidStack aFluid, boolean doFill) {
if (aFluid == null || aFluid.getFluid()
.getID() <= 0) return 0;
@@ -628,26 +633,28 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
}
- return fill_default_intoIndex(aSide, aFluid, doFill, index);
+ return fill_default_intoIndex(side, aFluid, doFill, index);
}
- private int fill_default_intoIndex(ForgeDirection aSide, FluidStack aFluid, boolean doFill, int index) {
+ private int fill_default_intoIndex(ForgeDirection side, FluidStack aFluid, boolean doFill, int index) {
if (index < 0 || index >= mPipeAmount) return 0;
if (aFluid == null || aFluid.getFluid()
.getID() <= 0) return 0;
+ final int ordinalSide = side.ordinal();
+
if (mFluids[index] == null || mFluids[index].getFluid()
.getID() <= 0) {
if (aFluid.amount * mPipeAmount <= getCapacity()) {
if (doFill) {
mFluids[index] = aFluid.copy();
- mLastReceivedFrom |= (1 << aSide.ordinal());
+ mLastReceivedFrom |= (1 << ordinalSide);
}
return aFluid.amount;
}
if (doFill) {
mFluids[index] = aFluid.copy();
- mLastReceivedFrom |= (1 << aSide.ordinal());
+ mLastReceivedFrom |= (1 << ordinalSide);
mFluids[index].amount = getCapacity() / mPipeAmount;
}
return getCapacity() / mPipeAmount;
@@ -659,13 +666,13 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
if (aFluid.amount <= space) {
if (doFill) {
mFluids[index].amount += aFluid.amount;
- mLastReceivedFrom |= (1 << aSide.ordinal());
+ mLastReceivedFrom |= (1 << ordinalSide);
}
return aFluid.amount;
}
if (doFill) {
mFluids[index].amount = getCapacity() / mPipeAmount;
- mLastReceivedFrom |= (1 << aSide.ordinal());
+ mLastReceivedFrom |= (1 << ordinalSide);
}
return space;
}
@@ -742,17 +749,17 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public boolean isLiquidInput(byte aSide) {
- return !isInputDisabledAtSide(aSide);
+ public boolean isLiquidInput(ForgeDirection side) {
+ return !isInputDisabledAtSide(side);
}
@Override
- public boolean isLiquidOutput(byte aSide) {
+ public boolean isLiquidOutput(ForgeDirection side) {
return true;
}
- public boolean isInputDisabledAtSide(int aSide) {
- return (mDisableInput & (1 << aSide)) != 0;
+ public boolean isInputDisabledAtSide(ForgeDirection side) {
+ return (mDisableInput & (1 << side.ordinal())) != 0;
}
@Override
@@ -771,27 +778,27 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
float tSide4 = tSpace;
float tSide5 = 1f - tSpace;
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 0) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.DOWN) != 0) {
tSide0 = tSide2 = tSide4 = 0;
tSide3 = tSide5 = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 1) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.UP) != 0) {
tSide2 = tSide4 = 0;
tSide1 = tSide3 = tSide5 = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 2) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.NORTH) != 0) {
tSide0 = tSide2 = tSide4 = 0;
tSide1 = tSide5 = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 3) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.SOUTH) != 0) {
tSide0 = tSide4 = 0;
tSide1 = tSide3 = tSide5 = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 4) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.WEST) != 0) {
tSide0 = tSide2 = tSide4 = 0;
tSide1 = tSide3 = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 5) != 0) {
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.EAST) != 0) {
tSide0 = tSide2 = 0;
tSide1 = tSide3 = tSide5 = 1;
}
@@ -819,7 +826,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
}
@Override
- public FluidStack drain(ForgeDirection aSide, FluidStack aFluid, boolean doDrain) {
+ public FluidStack drain(ForgeDirection side, FluidStack aFluid, boolean doDrain) {
if (aFluid == null) return null;
for (int i = 0; i < mFluids.length; ++i) {
final FluidStack f = mFluids[i];
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
index 9ccb43e733..83e658cbfc 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
@@ -5,6 +5,7 @@ import static gregtech.api.util.GT_Utility.calculateRecipeEU;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.*;
import gregtech.api.interfaces.ITexture;
@@ -62,11 +63,11 @@ public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections,
- byte aColorIndex, boolean aConnected, boolean aRedstone) {
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection, int connections,
+ int colorIndex, boolean active, boolean redstoneLevel) {
return new ITexture[] { TextureFactory.of(
mMaterial.mIconSet.mTextures[OrePrefixes.frameGt.mTextureIndex],
- Dyes.getModulation(aColorIndex, mMaterial.mRGBa)) };
+ Dyes.getModulation(colorIndex, mMaterial.mRGBa)) };
}
@Override
@@ -80,7 +81,7 @@ public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
}
@Override
- public final boolean isFacingValid(byte aFacing) {
+ public final boolean isFacingValid(ForgeDirection facing) {
return false;
}
@@ -90,7 +91,7 @@ public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
}
@Override
- public final boolean renderInside(byte aSide) {
+ public final boolean renderInside(ForgeDirection side) {
return true;
}
@@ -110,24 +111,24 @@ public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
}
@Override
- public final boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide,
+ public final boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return false;
}
@Override
- public final boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide,
+ public final boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return false;
}
@Override
- public int connect(byte aSide) {
+ public int connect(ForgeDirection side) {
return 0;
}
@Override
- public void disconnect(byte aSide) {
+ public void disconnect(ForgeDirection side) {
/* Do nothing */
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
index f69170b83e..0a1fe6ae7a 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
@@ -47,7 +47,7 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
public final int mStepSize;
public final int mTickTime;
public int mTransferredItems = 0;
- public byte mLastReceivedFrom = 0, oLastReceivedFrom = 0;
+ public ForgeDirection mLastReceivedFrom = ForgeDirection.UNKNOWN, oLastReceivedFrom = ForgeDirection.UNKNOWN;
public boolean mIsRestrictive = false;
private int[] cacheSides;
@@ -95,8 +95,8 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections,
- byte aColorIndex, boolean aConnected, boolean aRedstone) {
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, int aConnections,
+ int aColorIndex, boolean aConnected, boolean redstoneLevel) {
if (mIsRestrictive) {
if (aConnected) {
float tThickNess = getThickNess();
@@ -163,17 +163,17 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return false;
}
@Override
- public boolean isValidSlot(int aIndex) {
+ public boolean isValidSlot(int ignoredSlotIndex) {
return true;
}
@Override
- public final boolean renderInside(byte aSide) {
+ public final boolean renderInside(ForgeDirection side) {
return false;
}
@@ -189,13 +189,13 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
@Override
public void saveNBTData(NBTTagCompound aNBT) {
- aNBT.setByte("mLastReceivedFrom", mLastReceivedFrom);
+ aNBT.setByte("mLastReceivedFrom", (byte) mLastReceivedFrom.ordinal());
if (GT_Mod.gregtechproxy.gt6Pipe) aNBT.setByte("mConnections", mConnections);
}
@Override
public void loadNBTData(NBTTagCompound aNBT) {
- mLastReceivedFrom = aNBT.getByte("mLastReceivedFrom");
+ mLastReceivedFrom = ForgeDirection.getOrientation(aNBT.getByte("mLastReceivedFrom"));
if (GT_Mod.gregtechproxy.gt6Pipe) {
mConnections = aNBT.getByte("mConnections");
}
@@ -230,21 +230,21 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
}
- if (isInventoryEmpty()) mLastReceivedFrom = 6;
+ if (isInventoryEmpty()) mLastReceivedFrom = ForgeDirection.UNKNOWN;
oLastReceivedFrom = mLastReceivedFrom;
}
}
@Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
+ public boolean onWrenchRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer entityPlayer,
+ float aX, float aY, float aZ) {
if (GT_Mod.gregtechproxy.gt6Pipe) {
- final byte tSide = GT_Utility.determineWrenchingSide(aSide, aX, aY, aZ);
+ final ForgeDirection tSide = GT_Utility.determineWrenchingSide(side, aX, aY, aZ);
if (isConnectedAtSide(tSide)) {
disconnect(tSide);
- GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("215", "Disconnected"));
} else {
- if (connect(tSide) > 0) GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
+ if (connect(tSide) > 0) GT_Utility.sendChatToPlayer(entityPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
}
@@ -252,27 +252,27 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean letsIn(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsIn(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsItemsIn(aSide, aCoverID, aCoverVariable, -1, aTileEntity);
+ return coverBehavior.letsItemsIn(side, aCoverID, aCoverVariable, -1, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable,
+ public boolean letsOut(GT_CoverBehavior coverBehavior, ForgeDirection side, int aCoverID, int aCoverVariable,
ICoverable aTileEntity) {
- return coverBehavior.letsItemsOut(aSide, aCoverID, aCoverVariable, -1, aTileEntity);
+ return coverBehavior.letsItemsOut(side, aCoverID, aCoverVariable, -1, aTileEntity);
}
@Override
- public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsIn(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsItemsIn(aSide, aCoverID, aCoverVariable, -1, aTileEntity);
+ return coverBehavior.letsItemsIn(side, aCoverID, aCoverVariable, -1, aTileEntity);
}
@Override
- public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, byte aSide, int aCoverID,
+ public boolean letsOut(GT_CoverBehaviorBase<?> coverBehavior, ForgeDirection side, int aCoverID,
ISerializableObject aCoverVariable, ICoverable aTileEntity) {
- return coverBehavior.letsItemsOut(aSide, aCoverID, aCoverVariable, -1, aTileEntity);
+ return coverBehavior.letsItemsOut(side, aCoverID, aCoverVariable, -1, aTileEntity);
}
@Override
@@ -286,28 +286,28 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean canConnect(byte aSide, TileEntity tTileEntity) {
- if (tTileEntity == null) return false;
+ public boolean canConnect(ForgeDirection side, TileEntity tileEntity) {
+ if (tileEntity == null) return false;
- final byte tSide = GT_Utility.getOppositeSide(aSide);
- boolean connectable = GT_Utility.isConnectableNonInventoryPipe(tTileEntity, tSide);
+ final ForgeDirection oppositeSide = side.getOpposite();
+ boolean connectable = GT_Utility.isConnectableNonInventoryPipe(tileEntity, oppositeSide);
- final IGregTechTileEntity gTileEntity = (tTileEntity instanceof IGregTechTileEntity)
- ? (IGregTechTileEntity) tTileEntity
+ final IGregTechTileEntity gTileEntity = (tileEntity instanceof IGregTechTileEntity)
+ ? (IGregTechTileEntity) tileEntity
: null;
if (gTileEntity != null) {
if (gTileEntity.getMetaTileEntity() == null) return false;
if (gTileEntity.getMetaTileEntity()
- .connectsToItemPipe(tSide)) return true;
+ .connectsToItemPipe(oppositeSide)) return true;
connectable = true;
}
- if (tTileEntity instanceof IInventory) {
- if (((IInventory) tTileEntity).getSizeInventory() <= 0) return false;
+ if (tileEntity instanceof IInventory) {
+ if (((IInventory) tileEntity).getSizeInventory() <= 0) return false;
connectable = true;
}
- if (tTileEntity instanceof ISidedInventory) {
- final int[] tSlots = ((ISidedInventory) tTileEntity).getAccessibleSlotsFromSide(tSide);
+ if (tileEntity instanceof ISidedInventory) {
+ final int[] tSlots = ((ISidedInventory) tileEntity).getAccessibleSlotsFromSide(oppositeSide.ordinal());
if (tSlots == null || tSlots.length <= 0) return false;
connectable = true;
}
@@ -331,9 +331,8 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
public boolean sendItemStack(Object aSender) {
if (pipeCapacityCheck()) {
final byte tOffset = (byte) getBaseMetaTileEntity().getRandomNumber(6);
- byte tSide = 0;
- for (byte i : ALL_VALID_SIDES) {
- tSide = (byte) ((i + tOffset) % 6);
+ for (final byte i : ALL_VALID_SIDES) {
+ final ForgeDirection tSide = ForgeDirection.getOrientation((i + tOffset) % 6);
if (isConnectedAtSide(tSide)
&& (isInventoryEmpty() || (tSide != mLastReceivedFrom || aSender != getBaseMetaTileEntity()))) {
if (insertItemStackIntoTileEntity(aSender, tSide)) return true;
@@ -344,18 +343,19 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean insertItemStackIntoTileEntity(Object aSender, byte aSide) {
- if (getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ public boolean insertItemStackIntoTileEntity(Object aSender, ForgeDirection side) {
+ if (getBaseMetaTileEntity().getCoverInfoAtSide(side)
.letsItemsOut(-1)) {
- final TileEntity tInventory = getBaseMetaTileEntity().getTileEntityAtSide(aSide);
+ final TileEntity tInventory = getBaseMetaTileEntity().getTileEntityAtSide(side);
if (tInventory != null && !(tInventory instanceof BaseMetaPipeEntity)) {
if ((!(tInventory instanceof TileEntityHopper) && !(tInventory instanceof TileEntityDispenser))
- || getBaseMetaTileEntity().getMetaIDAtSide(aSide) != GT_Utility.getOppositeSide(aSide)) {
+ || getBaseMetaTileEntity().getMetaIDAtSide(side) != side.getOpposite()
+ .ordinal()) {
return GT_Utility.moveMultipleItemStacks(
aSender,
tInventory,
- (byte) 6,
- GT_Utility.getOppositeSide(aSide),
+ ForgeDirection.UNKNOWN,
+ side.getOpposite(),
null,
false,
(byte) 64,
@@ -395,22 +395,23 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean canInsertItem(int aIndex, ItemStack aStack, int aSide) {
- return isConnectedAtSide(aSide) && super.canInsertItem(aIndex, aStack, aSide);
+ public boolean canInsertItem(int aIndex, ItemStack aStack, int ordinalSide) {
+ return isConnectedAtSide(ForgeDirection.getOrientation(ordinalSide))
+ && super.canInsertItem(aIndex, aStack, ordinalSide);
}
@Override
- public boolean canExtractItem(int aIndex, ItemStack aStack, int aSide) {
- return isConnectedAtSide(aSide);
+ public boolean canExtractItem(int aIndex, ItemStack aStack, int ordinalSide) {
+ return isConnectedAtSide(ForgeDirection.getOrientation(ordinalSide));
}
@Override
- public int[] getAccessibleSlotsFromSide(int aSide) {
+ public int[] getAccessibleSlotsFromSide(int ordinalSide) {
final IGregTechTileEntity tTileEntity = getBaseMetaTileEntity();
- final CoverInfo coverInfo = tTileEntity.getCoverInfoAtSide((byte) aSide);
+ final CoverInfo coverInfo = tTileEntity.getCoverInfoAtSide(ForgeDirection.getOrientation(ordinalSide));
final boolean tAllow = coverInfo.letsItemsIn(-2) || coverInfo.letsItemsOut(-2);
if (tAllow) {
- if (cacheSides == null) cacheSides = super.getAccessibleSlotsFromSide(aSide);
+ if (cacheSides == null) cacheSides = super.getAccessibleSlotsFromSide(ordinalSide);
return cacheSides;
} else {
return GT_Values.emptyIntArray;
@@ -418,15 +419,17 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return isConnectedAtSide(aSide);
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return isConnectedAtSide(side);
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- if (!isConnectedAtSide(aSide)) return false;
- if (isInventoryEmpty()) mLastReceivedFrom = aSide;
- return mLastReceivedFrom == aSide && mInventory[aIndex] == null;
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ if (!isConnectedAtSide(side)) return false;
+ if (isInventoryEmpty()) mLastReceivedFrom = side;
+ return mLastReceivedFrom == side && mInventory[aIndex] == null;
}
@Override
@@ -459,50 +462,55 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
else return getActualCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
}
- private AxisAlignedBB getActualCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
+ private AxisAlignedBB getActualCollisionBoundingBoxFromPool(World ignoredAWorld, int aX, int aY, int aZ) {
final float tSpace = (1f - mThickNess) / 2;
- float tSide0 = tSpace;
- float tSide1 = 1f - tSpace;
- float tSide2 = tSpace;
- float tSide3 = 1f - tSpace;
- float tSide4 = tSpace;
- float tSide5 = 1f - tSpace;
-
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 0) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide3 = tSide5 = 1;
+ float spaceDown = tSpace;
+ float spaceUp = 1f - tSpace;
+ float spaceNorth = tSpace;
+ float spaceSouth = 1f - tSpace;
+ float spaceWest = tSpace;
+ float spaceEast = 1f - tSpace;
+
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.DOWN) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 1) != 0) {
- tSide2 = tSide4 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.UP) != 0) {
+ spaceNorth = spaceWest = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 2) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide1 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.NORTH) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceUp = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 3) != 0) {
- tSide0 = tSide4 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.SOUTH) != 0) {
+ spaceDown = spaceWest = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 4) != 0) {
- tSide0 = tSide2 = tSide4 = 0;
- tSide1 = tSide3 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.WEST) != 0) {
+ spaceDown = spaceNorth = spaceWest = 0;
+ spaceUp = spaceSouth = 1;
}
- if (getBaseMetaTileEntity().getCoverIDAtSide((byte) 5) != 0) {
- tSide0 = tSide2 = 0;
- tSide1 = tSide3 = tSide5 = 1;
+ if (getBaseMetaTileEntity().getCoverIDAtSide(ForgeDirection.EAST) != 0) {
+ spaceDown = spaceNorth = 0;
+ spaceUp = spaceSouth = spaceEast = 1;
}
final byte tConn = ((BaseMetaPipeEntity) getBaseMetaTileEntity()).mConnections;
- if ((tConn & (1 << ForgeDirection.DOWN.ordinal())) != 0) tSide0 = 0f;
- if ((tConn & (1 << ForgeDirection.UP.ordinal())) != 0) tSide1 = 1f;
- if ((tConn & (1 << ForgeDirection.NORTH.ordinal())) != 0) tSide2 = 0f;
- if ((tConn & (1 << ForgeDirection.SOUTH.ordinal())) != 0) tSide3 = 1f;
- if ((tConn & (1 << ForgeDirection.WEST.ordinal())) != 0) tSide4 = 0f;
- if ((tConn & (1 << ForgeDirection.EAST.ordinal())) != 0) tSide5 = 1f;
-
- return AxisAlignedBB
- .getBoundingBox(aX + tSide4, aY + tSide0, aZ + tSide2, aX + tSide5, aY + tSide1, aZ + tSide3);
+ if ((tConn & (1 << ForgeDirection.DOWN.ordinal())) != 0) spaceDown = 0f;
+ if ((tConn & (1 << ForgeDirection.UP.ordinal())) != 0) spaceUp = 1f;
+ if ((tConn & (1 << ForgeDirection.NORTH.ordinal())) != 0) spaceNorth = 0f;
+ if ((tConn & (1 << ForgeDirection.SOUTH.ordinal())) != 0) spaceSouth = 1f;
+ if ((tConn & (1 << ForgeDirection.WEST.ordinal())) != 0) spaceWest = 0f;
+ if ((tConn & (1 << ForgeDirection.EAST.ordinal())) != 0) spaceEast = 1f;
+
+ return AxisAlignedBB.getBoundingBox(
+ aX + spaceWest,
+ aY + spaceDown,
+ aZ + spaceNorth,
+ aX + spaceEast,
+ aY + spaceUp,
+ aZ + spaceSouth);
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
index ad6a730863..a72ec19d79 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
@@ -15,6 +15,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
@@ -84,9 +85,9 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
- return mTextures[aSide == aFacing ? 1 : 0][aColorIndex + 1];
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection aFacing,
+ int colorIndex, boolean aActive, boolean redstoneLevel) {
+ return mTextures[side == aFacing ? 1 : 0][colorIndex + 1];
}
@Override
@@ -110,7 +111,7 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -125,13 +126,13 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
@Override
- public boolean isInputFacing(byte aSide) {
- return aSide != getBaseMetaTileEntity().getFrontFacing();
+ public boolean isInputFacing(ForgeDirection side) {
+ return side != getBaseMetaTileEntity().getFrontFacing();
}
@Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isOutputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -236,7 +237,8 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
if (GT_ModHandler.isElectricItem(aStack) && aStack.getUnlocalizedName()
.startsWith("gt.metaitem.01.")) {
String name = aStack.getUnlocalizedName();
@@ -254,7 +256,8 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
if (!GT_Utility.isStackValid(aStack)) {
return false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java
index ef7242b420..0a589d6919 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java
@@ -5,6 +5,7 @@ import static gregtech.api.enums.GT_Values.V;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidContainerItem;
import net.minecraftforge.fluids.IFluidHandler;
@@ -61,10 +62,11 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
- return mTextures[(aActive ? 5 : 0) + (aSide == aFacing ? 0
- : aSide == GT_Utility.getOppositeSide(aFacing) ? 1 : aSide == 0 ? 2 : aSide == 1 ? 3 : 4)][aColorIndex + 1];
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection side,
+ ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
+ return mTextures[(active ? 5 : 0) + (side == facingDirection ? 0
+ : side == facingDirection.getOpposite() ? 1
+ : side == ForgeDirection.DOWN ? 2 : side == ForgeDirection.UP ? 3 : 4)][colorIndex + 1];
}
@Override
@@ -122,7 +124,7 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
}
@Override
- public boolean isFacingValid(byte aSide) {
+ public boolean isFacingValid(ForgeDirection side) {
return true;
}
@@ -142,7 +144,7 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
}
@Override
- public boolean isOutputFacing(byte aSide) {
+ public boolean isOutputFacing(ForgeDirection side) {
return true;
}
@@ -198,7 +200,7 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
}
@Override
- public boolean isLiquidOutput(byte aSide) {
+ public boolean isLiquidOutput(ForgeDirection side) {
// return super.isLiquidOutput(aSide);
return false;
}
@@ -330,8 +332,9 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack) && (getFuelValue(aStack, true) > 0
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return super.allowPutStack(aBaseMetaTileEntity, aIndex, side, aStack) && (getFuelValue(aStack, true) > 0
|| getFuelValue(GT_Utility.getFluidForFilledItem(aStack, true), true) > 0);
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull.java
index ff1365a735..e5766eee39 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull.java
@@ -4,6 +4,7 @@ import static gregtech.api.enums.GT_Values.V;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -58,13 +59,13 @@ public class GT_MetaTileEntity_BasicHull extends GT_MetaTileEntity_BasicTank {
}
@Override
- public boolean isInputFacing(byte aSide) {
- return !isOutputFacing(aSide);
+ public boolean isInputFacing(ForgeDirection side) {
+ return !isOutputFacing(side);
}
@Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isOutputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -93,7 +94,7 @@ public class GT_MetaTileEntity_BasicHull extends GT_MetaTileEntity_BasicTank {
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -103,19 +104,21 @@ public class GT_MetaTileEntity_BasicHull extends GT_MetaTileEntity_BasicTank {
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return true;
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return true;
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aConnected, boolean aRedstone) {
- return mTextures[Math.min(2, aSide) + (aSide == aFacing ? 3 : 0)][aColorIndex + 1];
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection aFacing,
+ int colorIndex, boolean aConnected, boolean redstoneLevel) {
+ return mTextures[Math.min(2, side.ordinal()) + (side == aFacing ? 3 : 0)][colorIndex + 1];
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull_NonElectric.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull_NonElectric.java
index c9b66e6baf..b6584b50ab 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull_NonElectric.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicHull_NonElectric.java
@@ -1,5 +1,7 @@
package gregtech.api.metatileentity.implementations;
+import net.minecraftforge.common.util.ForgeDirection;
+
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
@@ -21,9 +23,9 @@ public abstract class GT_MetaTileEntity_BasicHull_NonElectric extends GT_MetaTil
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections,
- byte aColorIndex, boolean aConnected, boolean aRedstone) {
- return mTextures[Math.min(2, aSide)][aColorIndex + 1];
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection,
+ ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
+ return mTextures[Math.min(2, sideDirection.ordinal())][colorIndex + 1];
}
@Override
@@ -42,12 +44,12 @@ public abstract class GT_MetaTileEntity_BasicHull_NonElectric extends GT_MetaTil
}
@Override
- public boolean isInputFacing(byte aSide) {
+ public boolean isInputFacing(ForgeDirection side) {
return false;
}
@Override
- public boolean isOutputFacing(byte aSide) {
+ public boolean isOutputFacing(ForgeDirection side) {
return false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
index 4868200bf1..b798c8cfef 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
@@ -1,6 +1,5 @@
package gregtech.api.metatileentity.implementations;
-import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES;
import static gregtech.api.enums.GT_Values.V;
import static gregtech.api.enums.GT_Values.debugCleanroom;
import static gregtech.api.enums.Textures.BlockIcons.MACHINE_CASINGS;
@@ -102,7 +101,8 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mHasBeenUpdated = false, mStuttering = false, mCharge = false, mDecharge = false;
public boolean mDisableFilter = true;
public boolean mDisableMultiStack = true;
- public int mMainFacing = -1, mProgresstime = 0, mMaxProgresstime = 0, mEUt = 0, mOutputBlocked = 0;
+ public int mProgresstime = 0, mMaxProgresstime = 0, mEUt = 0, mOutputBlocked = 0;
+ public ForgeDirection mMainFacing = ForgeDirection.UNKNOWN;
public FluidStack mOutputFluid;
public String mGUIName, mNEIName;
protected final Power mPower;
@@ -190,15 +190,15 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
return new BasicMachineEUPower(mTier, mAmperage);
}
- protected boolean isValidMainFacing(byte aSide) {
- return aSide > 1;
+ protected boolean isValidMainFacing(ForgeDirection side) {
+ return side.offsetY == 0; // Neither DOWN nor UP
}
- public boolean setMainFacing(byte aSide) {
- if (!isValidMainFacing(aSide)) return false;
- mMainFacing = aSide;
+ public boolean setMainFacing(ForgeDirection side) {
+ if (!isValidMainFacing(side)) return false;
+ mMainFacing = side;
if (getBaseMetaTileEntity().getFrontFacing() == mMainFacing) {
- getBaseMetaTileEntity().setFrontFacing(GT_Utility.getOppositeSide(aSide));
+ getBaseMetaTileEntity().setFrontFacing(side.getOpposite());
}
onFacingChange();
onMachineBlockUpdate();
@@ -235,39 +235,39 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection,
+ ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
final int textureIndex;
- if (mMainFacing < 2) {
- if (aSide == aFacing) {
- textureIndex = aActive ? 2 : 3;
+ if (mMainFacing.offsetY != 0) { // UP or DOWN
+ if (sideDirection == facingDirection) {
+ textureIndex = active ? 2 : 3;
} else {
- textureIndex = switch (aSide) {
- case 0 -> aActive ? 6 : 7;
- case 1 -> aActive ? 4 : 5;
- default -> aActive ? 0 : 1;
+ textureIndex = switch (sideDirection) {
+ case DOWN -> active ? 6 : 7;
+ case UP -> active ? 4 : 5;
+ default -> active ? 0 : 1;
};
}
} else {
- if (aSide == mMainFacing) {
- textureIndex = aActive ? 2 : 3;
+ if (sideDirection == mMainFacing) {
+ textureIndex = active ? 2 : 3;
} else {
- if (showPipeFacing() && aSide == aFacing) {
- textureIndex = switch (aSide) {
- case 0 -> aActive ? 8 : 9;
- case 1 -> aActive ? 10 : 11;
- default -> aActive ? 12 : 13;
+ if (showPipeFacing() && sideDirection == facingDirection) {
+ textureIndex = switch (sideDirection) {
+ case DOWN -> active ? 8 : 9;
+ case UP -> active ? 10 : 11;
+ default -> active ? 12 : 13;
};
} else {
- textureIndex = switch (aSide) {
- case 0 -> aActive ? 6 : 7;
- case 1 -> aActive ? 4 : 5;
- default -> aActive ? 0 : 1;
+ textureIndex = switch (sideDirection) {
+ case DOWN -> active ? 6 : 7;
+ case UP -> active ? 4 : 5;
+ default -> active ? 0 : 1;
};
}
}
}
- return mTextures[textureIndex][aColorIndex + 1];
+ return mTextures[textureIndex][colorIndex + 1];
}
@Override
@@ -298,8 +298,8 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public boolean isFacingValid(byte aFacing) {
- return mMainFacing > 1 || aFacing > 1;
+ public boolean isFacingValid(ForgeDirection facing) {
+ return facing.offsetY == 0 || facing.offsetY == 0;
}
@Override
@@ -308,12 +308,12 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public boolean isInputFacing(byte aSide) {
- return aSide != mMainFacing;
+ public boolean isInputFacing(ForgeDirection side) {
+ return side != mMainFacing;
}
@Override
- public boolean isOutputFacing(byte aSide) {
+ public boolean isOutputFacing(ForgeDirection side) {
return false;
}
@@ -323,13 +323,13 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public boolean isLiquidInput(byte aSide) {
- return aSide != mMainFacing && (mAllowInputFromOutputSide || aSide != getBaseMetaTileEntity().getFrontFacing());
+ public boolean isLiquidInput(ForgeDirection side) {
+ return side != mMainFacing && (mAllowInputFromOutputSide || side != getBaseMetaTileEntity().getFrontFacing());
}
@Override
- public boolean isLiquidOutput(byte aSide) {
- return aSide != mMainFacing;
+ public boolean isLiquidOutput(ForgeDirection side) {
+ return side != mMainFacing;
}
@Override
@@ -490,8 +490,8 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
return true;
}
- for (byte tSide : ALL_VALID_SIDES) {
- if (aBaseMetaTileEntity.getAirAtSide(tSide)) {
+ for (final ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) {
+ if (aBaseMetaTileEntity.getAirAtSide(side)) {
if (useModularUI()) {
GT_UIInfos.openGTTileEntityUI(aBaseMetaTileEntity, aPlayer);
} else {
@@ -524,7 +524,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
@Override
public void initDefaultModes(NBTTagCompound aNBT) {
- mMainFacing = -1;
+ mMainFacing = ForgeDirection.UNKNOWN;
if (!getBaseMetaTileEntity().getWorld().isRemote) {
GT_ClientPreference tPreference = GT_Mod.gregtechproxy
.getClientPreference(getBaseMetaTileEntity().getOwnerUuid());
@@ -545,7 +545,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
aNBT.setBoolean("mDisableFilter", mDisableFilter);
aNBT.setBoolean("mDisableMultiStack", mDisableMultiStack);
aNBT.setInteger("mEUt", mEUt);
- aNBT.setInteger("mMainFacing", mMainFacing);
+ aNBT.setInteger("mMainFacing", mMainFacing.ordinal());
aNBT.setInteger("mProgresstime", mProgresstime);
aNBT.setInteger("mMaxProgresstime", mMaxProgresstime);
if (mOutputFluid != null) aNBT.setTag("mOutputFluid", mOutputFluid.writeToNBT(new NBTTagCompound()));
@@ -565,7 +565,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mDisableFilter = aNBT.getBoolean("mDisableFilter");
mDisableMultiStack = aNBT.getBoolean("mDisableMultiStack");
mEUt = aNBT.getInteger("mEUt");
- mMainFacing = aNBT.getInteger("mMainFacing");
+ mMainFacing = ForgeDirection.getOrientation(aNBT.getInteger("mMainFacing"));
mProgresstime = aNBT.getInteger("mProgresstime");
mMaxProgresstime = aNBT.getInteger("mMaxProgresstime");
mOutputFluid = FluidStack.loadFluidStackFromNBT(aNBT.getCompoundTag("mOutputFluid"));
@@ -634,12 +634,9 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
if (tTank != null) {
FluidStack tDrained = drain(1000, false);
if (tDrained != null) {
- int tFilledAmount = tTank
- .fill(ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()), tDrained, false);
- if (tFilledAmount > 0) tTank.fill(
- ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()),
- drain(tFilledAmount, true),
- true);
+ final int tFilledAmount = tTank.fill(aBaseMetaTileEntity.getBackFacing(), tDrained, false);
+ if (tFilledAmount > 0)
+ tTank.fill(aBaseMetaTileEntity.getBackFacing(), drain(tFilledAmount, true), true);
}
}
if (getDrainableStack() == null) tRemovedOutputFluid = true;
@@ -726,10 +723,10 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
protected void doDisplayThings() {
- if (mMainFacing < 2 && getBaseMetaTileEntity().getFrontFacing() > 1) {
+ if (mMainFacing.offsetY != 0 && getBaseMetaTileEntity().getFrontFacing().offsetY == 0) {
mMainFacing = getBaseMetaTileEntity().getFrontFacing();
}
- if (mMainFacing >= 2 && !mHasBeenUpdated) {
+ if (mMainFacing.offsetY == 0 && !mHasBeenUpdated) {
mHasBeenUpdated = true;
getBaseMetaTileEntity().setFrontFacing(getBaseMetaTileEntity().getBackFacing());
}
@@ -852,12 +849,12 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
@Override
public void onValueUpdate(byte aValue) {
- mMainFacing = aValue;
+ mMainFacing = ForgeDirection.getOrientation(aValue);
}
@Override
public byte getUpdateData() {
- return (byte) mMainFacing;
+ return (byte) mMainFacing.ordinal();
}
@Override
@@ -955,8 +952,8 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (aSide == getBaseMetaTileEntity().getFrontFacing() || aSide == mMainFacing) {
+ public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ if (side == getBaseMetaTileEntity().getFrontFacing() || side == mMainFacing) {
if (aPlayer.isSneaking()) {
mDisableFilter = !mDisableFilter;
GT_Utility.sendChatToPlayer(
@@ -973,44 +970,46 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
}
@Override
- public boolean onSolderingToolRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
- if (!aPlayer.isSneaking()) return false;
- boolean click = super.onSolderingToolRightClick(aSide, aWrenchingSide, aPlayer, aX, aY, aZ);
+ public boolean onSolderingToolRightClick(ForgeDirection side, ForgeDirection wrenchingSide,
+ EntityPlayer entityPlayer, float aX, float aY, float aZ) {
+ if (!entityPlayer.isSneaking()) return false;
+ final boolean click = super.onSolderingToolRightClick(side, wrenchingSide, entityPlayer, aX, aY, aZ);
if (click) return true;
- if (aWrenchingSide != mMainFacing) return false;
+ if (wrenchingSide != mMainFacing) return false;
mDisableMultiStack = !mDisableMultiStack;
GT_Utility.sendChatToPlayer(
- aPlayer,
+ entityPlayer,
StatCollector.translateToLocal("GT5U.hatch.disableMultiStack." + mDisableMultiStack));
return true;
}
@Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- if (aSide != mMainFacing) return true;
+ public boolean allowCoverOnSide(ForgeDirection side, GT_ItemStack aCoverID) {
+ if (side != mMainFacing) return true;
GT_CoverBehaviorBase<?> tBehavior = GregTech_API.getCoverBehaviorNew(aCoverID.toStack());
return tBehavior.isGUIClickable(
- aSide,
+ side,
GT_Utility.stackToInt(aCoverID.toStack()),
tBehavior.createDataObject(),
getBaseMetaTileEntity());
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide != mMainFacing && aIndex >= getOutputSlot() && aIndex < getOutputSlot() + mOutputItems.length;
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side != mMainFacing && aIndex >= getOutputSlot() && aIndex < getOutputSlot() + mOutputItems.length;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- if (aSide == mMainFacing || aIndex < getInputSlot()
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ if (side == mMainFacing || aIndex < getInputSlot()
|| aIndex >= getInputSlot() + mInputSlotCount
- || (!mAllowInputFromOutputSide && aSide == aBaseMetaTileEntity.getFrontFacing())) return false;
+ || (!mAllowInputFromOutputSide && side == aBaseMetaTileEntity.getFrontFacing())) return false;
for (int i = getInputSlot(), j = i + mInputSlotCount; i < j; i++)
if (GT_Utility.areStacksEqual(GT_OreDictUnificator.get(aStack), mInventory[i]) && mDisableMultiStack)
return i == aIndex;
- return mDisableFilter || allowPutStackValidated(aBaseMetaTileEntity, aIndex, aSide, aStack);
+ return mDisableFilter || allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack);
}
/**
@@ -1018,7 +1017,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
* method it is ensured there is no such kind of item inside any input slots already. Otherwise, you don't need to
* check for it anyway.
*/
- protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide,
+ protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return !mDisableMultiStack || mInventory[aIndex] == null;
}
@@ -1265,13 +1264,16 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
tag.setInteger("progressSingleBlock", mProgresstime);
tag.setInteger("maxProgressSingleBlock", mMaxProgresstime);
- tag.setInteger("mainFacingSingleBlock", mMainFacing);
+ tag.setInteger("mainFacingSingleBlock", mMainFacing.ordinal());
tag.setBoolean("stutteringSingleBlock", mStuttering);
- IGregTechTileEntity tileEntity = getBaseMetaTileEntity();
+ final IGregTechTileEntity tileEntity = getBaseMetaTileEntity();
if (tileEntity != null) {
tag.setBoolean("isActiveSingleBlock", tileEntity.isActive());
- tag.setInteger("outputFacingSingleBlock", tileEntity.getFrontFacing());
+ tag.setInteger(
+ "outputFacingSingleBlock",
+ tileEntity.getFrontFacing()
+ .ordinal());
if (tileEntity.isActive()) tag.setInteger("eut", mEUt);
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
index 38fce53658..2ea4b25860 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
@@ -100,7 +100,7 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
@Override
- public boolean isInputFacing(byte aSide) {
+ public boolean isInputFacing(ForgeDirection side) {
return false;
}
@@ -130,8 +130,8 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
@Override
- public boolean isFacingValid(byte aFacing) {
- return super.isFacingValid(aFacing) && aFacing != mMainFacing;
+ public boolean isFacingValid(ForgeDirection facing) {
+ return super.isFacingValid(facing) && facing != mMainFacing;
}
@Override
@@ -145,13 +145,13 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
@Override
- public boolean isLiquidInput(byte aSide) {
- return aSide != mMainFacing;
+ public boolean isLiquidInput(ForgeDirection side) {
+ return side != mMainFacing;
}
@Override
- public boolean isLiquidOutput(byte aSide) {
- return aSide != mMainFacing;
+ public boolean isLiquidOutput(ForgeDirection side) {
+ return side != mMainFacing;
}
@Override
@@ -224,9 +224,9 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
new ParticleEventBuilder().setIdentifier(ParticleFX.CLOUD)
.setWorld(getBaseMetaTileEntity().getWorld())
.setMotion(
- ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()).offsetX / 5.0,
- ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()).offsetY / 5.0,
- ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()).offsetZ / 5.0)
+ getBaseMetaTileEntity().getFrontFacing().offsetX / 5.0,
+ getBaseMetaTileEntity().getFrontFacing().offsetY / 5.0,
+ getBaseMetaTileEntity().getFrontFacing().offsetZ / 5.0)
.<ParticleEventBuilder>times(
8,
x -> x
@@ -244,9 +244,9 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
@Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
+ public boolean allowCoverOnSide(ForgeDirection side, GT_ItemStack aCoverID) {
return GregTech_API.getCoverBehaviorNew(aCoverID.toStack())
- .isSimpleCover() && super.allowCoverOnSide(aSide, aCoverID);
+ .isSimpleCover() && super.allowCoverOnSide(side, aCoverID);
}
public float getSteamDamage() {
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
index a80e235a65..2d4b080093 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
@@ -7,6 +7,7 @@ import static gregtech.api.enums.GT_Values.ticksBetweenSounds;
import static gregtech.api.enums.Mods.BartWorks;
import static gregtech.api.enums.Mods.GregTech;
import static gregtech.api.objects.XSTR.XSTR_INSTANCE;
+import static net.minecraftforge.common.util.ForgeDirection.UP;
import java.util.Locale;
@@ -559,9 +560,9 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_
}
@Override
- protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide,
+ protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
- if (!super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, aSide, aStack)) return false;
+ if (!super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)) return false;
switch (this.mInputSlotCount) {
case 0 -> {
return false;
@@ -636,10 +637,8 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_
// noinspection SwitchStatementWithTooFewBranches
switch (this.mSpecialEffect) {
case TOP_SMOKE -> {
- final byte topFacing = (byte) ForgeDirection.UP.ordinal();
- if (aBaseMetaTileEntity.getFrontFacing() != topFacing
- && aBaseMetaTileEntity.getCoverIDAtSide(topFacing) == 0
- && !aBaseMetaTileEntity.getOpacityAtSide(topFacing)) {
+ if (aBaseMetaTileEntity.getFrontFacing() != UP && aBaseMetaTileEntity.getCoverIDAtSide(UP) == 0
+ && !aBaseMetaTileEntity.getOpacityAtSide(UP)) {
new ParticleEventBuilder().setMotion(0.0D, 0.0D, 0.0D)
.setIdentifier(ParticleFX.SMOKE)
@@ -671,9 +670,9 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_
// Random Sparkles at main face
if (aBaseMetaTileEntity.isActive() && XSTR_INSTANCE.nextInt(3) == 0) {
- final byte mainFacing = (byte) this.mMainFacing;
+ final ForgeDirection mainFacing = this.mMainFacing;
- if (mainFacing > 1 && aBaseMetaTileEntity.getCoverIDAtSide(mainFacing) == 0
+ if (mainFacing.ordinal() > 1 && aBaseMetaTileEntity.getCoverIDAtSide(mainFacing) == 0
&& !aBaseMetaTileEntity.getOpacityAtSide(mainFacing)) {
final double oX = aBaseMetaTileEntity.getXCoord();
@@ -686,17 +685,17 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_
y = oY + XSTR_INSTANCE.nextFloat() * 10D / 16D + 5D / 16D;
- if (mainFacing == ForgeDirection.WEST.ordinal()) {
+ if (mainFacing == ForgeDirection.WEST) {
x = oX - offset;
mX = -.05D;
z = oZ + horizontal;
mZ = 0D;
- } else if (mainFacing == ForgeDirection.EAST.ordinal()) {
+ } else if (mainFacing == ForgeDirection.EAST) {
x = oX + offset;
mX = .05D;
z = oZ + horizontal;
mZ = 0D;
- } else if (mainFacing == ForgeDirection.NORTH.ordinal()) {
+ } else if (mainFacing == ForgeDirection.NORTH) {
x = oX + horizontal;
mX = 0D;
z = oZ - offset;
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java
index 7d4723d4f6..f3a0af38f5 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java
@@ -308,7 +308,7 @@ public abstract class GT_MetaTileEntity_BasicTank extends GT_MetaTileEntity_Tier
}
@Override
- public FluidTankInfo[] getTankInfo(ForgeDirection aSide) {
+ public FluidTankInfo[] getTankInfo(ForgeDirection side) {
if (getCapacity() <= 0 && !getBaseMetaTileEntity().hasSteamEngineUpgrade()) return new FluidTankInfo[] {};
if (isDrainableStackSeparate()) {
return new FluidTankInfo[] { new FluidTankInfo(getFillableStack(), getCapacity()),
@@ -319,12 +319,14 @@ public abstract class GT_MetaTileEntity_BasicTank extends GT_MetaTileEntity_Tier
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return aIndex == getOutputSlot();
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return aIndex == getInputSlot();
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
index f7f69ae924..cf1ba436e1 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
@@ -4,6 +4,7 @@ import static gregtech.api.enums.GT_Values.V;
import static gregtech.api.enums.Textures.BlockIcons.*;
import java.util.*;
+import java.util.stream.IntStream;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -97,14 +98,12 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
- int colorIndex = aColorIndex + 1;
- ForgeDirection side = ForgeDirection.VALID_DIRECTIONS[aSide];
- ForgeDirection facing = ForgeDirection.VALID_DIRECTIONS[aFacing];
- if (side == facing) return mTextures[FRONT_INDEX][colorIndex];
- if (ForgeDirection.OPPOSITES[aSide] == aFacing) return mTextures[OUTPUT_INDEX][colorIndex];
- switch (facing) {
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection,
+ ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
+ colorIndex = colorIndex + 1;
+ if (sideDirection == facingDirection) return mTextures[FRONT_INDEX][colorIndex];
+ if (sideDirection.getOpposite() == facingDirection) return mTextures[OUTPUT_INDEX][colorIndex];
+ switch (facingDirection) {
case DOWN -> {
return mTextures[ARROW_UP_INDEX][colorIndex]; // ARROW_UP
}
@@ -112,7 +111,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
return mTextures[ARROW_DOWN_INDEX][colorIndex]; // ARROW_DOWN
}
case NORTH -> {
- switch (side) {
+ switch (sideDirection) {
case DOWN, UP -> {
return mTextures[ARROW_DOWN_INDEX][colorIndex]; // ARROW_DOWN
}
@@ -126,7 +125,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
}
case SOUTH -> {
- switch (side) {
+ switch (sideDirection) {
case DOWN, UP -> {
return mTextures[ARROW_UP_INDEX][colorIndex]; // ARROW_UP
}
@@ -140,7 +139,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
}
case WEST -> {
- switch (side) {
+ switch (sideDirection) {
case UP, SOUTH -> {
return mTextures[ARROW_RIGHT_INDEX][colorIndex]; // ARROW_RIGHT
}
@@ -151,7 +150,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
}
case EAST -> {
- switch (side) {
+ switch (sideDirection) {
case UP, SOUTH -> {
return mTextures[ARROW_LEFT_INDEX][colorIndex]; // ARROW_LEFT
}
@@ -177,7 +176,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -192,13 +191,13 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public boolean isInputFacing(byte aSide) {
- return !isOutputFacing(aSide);
+ public boolean isInputFacing(ForgeDirection side) {
+ return !isOutputFacing(side);
}
@Override
- public boolean isOutputFacing(byte aSide) {
- return getBaseMetaTileEntity().getBackFacing() == aSide;
+ public boolean isOutputFacing(ForgeDirection side) {
+ return getBaseMetaTileEntity().getBackFacing() == side;
}
@Override
@@ -281,8 +280,8 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (aSide == getBaseMetaTileEntity().getBackFacing()) {
+ public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ if (side == getBaseMetaTileEntity().getBackFacing()) {
mTargetStackSize = (byte) ((mTargetStackSize + (aPlayer.isSneaking() ? -1 : 1)) % 65);
if (mTargetStackSize < 0) {
@@ -299,11 +298,11 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
- aWrenchingSide = GT_Utility.getOppositeSide(aWrenchingSide);
- if (getBaseMetaTileEntity().isValidFacing(aWrenchingSide)) {
- getBaseMetaTileEntity().setFrontFacing(aWrenchingSide);
+ public boolean onWrenchRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer entityPlayer,
+ float aX, float aY, float aZ) {
+ wrenchingSide = wrenchingSide.getOpposite();
+ if (getBaseMetaTileEntity().isValidFacing(wrenchingSide)) {
+ getBaseMetaTileEntity().setFrontFacing(wrenchingSide);
return true;
}
return false;
@@ -311,18 +310,15 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
protected void handleRedstoneOutput(IGregTechTileEntity aBaseMetaTileEntity) {
if (bRedstoneIfFull) {
- boolean hasEmptySlots = false;
- for (int i = 0; i < mInventory.length; i++) {
- if (isValidSlot(i) && mInventory[i] == null) {
- hasEmptySlots = true;
- break;
- }
- }
- if (bInvert) hasEmptySlots = !hasEmptySlots;
- for (byte b = 0; b < 6; b++)
- aBaseMetaTileEntity.setInternalOutputRedstoneSignal(b, hasEmptySlots ? (byte) 0 : (byte) 15);
+ final boolean hasEmptySlots = IntStream.range(0, mInventory.length)
+ .anyMatch(i -> isValidSlot(i) && mInventory[i] == null);
+ Arrays.stream(ForgeDirection.VALID_DIRECTIONS)
+ .forEach(
+ side -> aBaseMetaTileEntity
+ .setInternalOutputRedstoneSignal(side, (byte) (bInvert ^ hasEmptySlots ? 0 : 15)));
} else {
- for (byte b = 0; b < 6; b++) aBaseMetaTileEntity.setInternalOutputRedstoneSignal(b, (byte) 0);
+ for (ForgeDirection side : ForgeDirection.VALID_DIRECTIONS)
+ aBaseMetaTileEntity.setInternalOutputRedstoneSignal(side, (byte) 0);
}
}
@@ -341,14 +337,15 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
@Override
public void onFirstTick(IGregTechTileEntity aBaseMetaTileEntity) {
- for (byte b = 0; b < 6; b++) aBaseMetaTileEntity.setInternalOutputRedstoneSignal(b, (byte) 0);
+ for (ForgeDirection side : ForgeDirection.VALID_DIRECTIONS)
+ aBaseMetaTileEntity.setInternalOutputRedstoneSignal(side, (byte) 0);
}
protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
moveItems(aBaseMetaTileEntity, aTimer, 1);
}
- protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer, int stacks) {
+ protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long ignoredTimer, int stacks) {
int tCost;
if (bStockingMode) tCost = GT_Utility.moveMultipleItemStacks(
aBaseMetaTileEntity,
@@ -381,13 +378,15 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return true;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide != aBaseMetaTileEntity.getBackFacing();
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side != aBaseMetaTileEntity.getBackFacing();
}
@Override
@@ -432,18 +431,18 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
}
@Override
- public boolean onSolderingToolRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
- if (aPlayer.isSneaking()) {
+ public boolean onSolderingToolRightClick(ForgeDirection side, ForgeDirection wrenchingSide,
+ EntityPlayer entityPlayer, float aX, float aY, float aZ) {
+ if (entityPlayer.isSneaking()) {
// I was so proud of all this but I literally just copied code from OutputBus
bSortStacks = !bSortStacks;
GT_Utility.sendChatToPlayer(
- aPlayer,
+ entityPlayer,
GT_Utility.trans("200", "Sort mode: ")
+ (bSortStacks ? GT_Utility.trans("088", "Enabled") : GT_Utility.trans("087", "Disabled")));
return true;
}
- return super.onSolderingToolRightClick(aSide, aWrenchingSide, aPlayer, aX, aY, aZ);
+ return super.onSolderingToolRightClick(side, wrenchingSide, entityPlayer, aX, aY, aZ);
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_EnhancedMultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_EnhancedMultiBlockBase.java
index 6fdfa53a14..9fac4a880c 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_EnhancedMultiBlockBase.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_EnhancedMultiBlockBase.java
@@ -76,16 +76,16 @@ public abstract class GT_MetaTileEntity_EnhancedMultiBlockBase<T extends GT_Meta
}
@Override
- public final boolean isFacingValid(byte aFacing) {
- return canSetToDirectionAny(ForgeDirection.getOrientation(aFacing));
+ public final boolean isFacingValid(ForgeDirection facing) {
+ return canSetToDirectionAny(facing);
}
@Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY,
- float aZ) {
- if (aWrenchingSide != getBaseMetaTileEntity().getFrontFacing())
- return super.onWrenchRightClick(aSide, aWrenchingSide, aPlayer, aX, aY, aZ);
- if (aPlayer.isSneaking()) {
+ public boolean onWrenchRightClick(ForgeDirection side, ForgeDirection wrenchingSide, EntityPlayer entityPlayer,
+ float aX, float aY, float aZ) {
+ if (wrenchingSide != getBaseMetaTileEntity().getFrontFacing())
+ return super.onWrenchRightClick(side, wrenchingSide, entityPlayer, aX, aY, aZ);
+ if (entityPlayer.isSneaking()) {
// we won't be allowing horizontal flips, as it can be perfectly emulated by rotating twice and flipping
// horizontally
// allowing an extra round of flip make it hard to draw meaningful flip markers in GT_Proxy#drawGrid
@@ -98,7 +98,7 @@ public abstract class GT_MetaTileEntity_EnhancedMultiBlockBase<T extends GT_Meta
@Override
public void onFacingChange() {
- toolSetDirection(ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()));
+ toolSetDirection(getBaseMetaTileEntity().getFrontFacing());
}
@Override
@@ -145,7 +145,7 @@ public abstract class GT_MetaTileEntity_EnhancedMultiBlockBase<T extends GT_Meta
public void loadNBTData(NBTTagCompound aNBT) {
super.loadNBTData(aNBT);
mExtendedFacing = ExtendedFacing.of(
- ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()),
+ getBaseMetaTileEntity().getFrontFacing(),
Rotation.byIndex(aNBT.getByte("eRotation")),
Flip.byIndex(aNBT.getByte("eFlip")));
}
@@ -157,14 +157,14 @@ public abstract class GT_MetaTileEntity_EnhancedMultiBlockBase<T extends GT_Meta
/**
* Explanation of the world coordinate these offset means:
- *
+ * <p>
* Imagine you stand in front of the controller, with controller facing towards you not rotated or flipped.
- *
+ * <p>
* The horizontalOffset would be the number of blocks on the left side of the controller, not counting controller
* itself. The verticalOffset would be the number of blocks on the top side of the controller, not counting
* controller itself. The depthOffset would be the number of blocks between you and controller, not counting
* controller itself.
- *
+ * <p>
* All these offsets can be negative.
*/
protected final boolean checkPiece(String piece, int horizontalOffset, int verticalOffset, int depthOffset) {
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
index f0ce474fd1..ec6d1fe11f 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
@@ -1,6 +1,7 @@
package gregtech.api.metatileentity.implementations;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Textures;
@@ -61,16 +62,16 @@ public abstract class GT_MetaTileEntity_Hatch extends GT_MetaTileEntity_BasicTan
public abstract ITexture[] getTexturesInactive(ITexture aBaseTexture);
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection aFacing,
+ int colorIndex, boolean aActive, boolean redstoneLevel) {
int texturePointer = (byte) (actualTexture & 0x7F); // just to be sure, from my testing the 8th bit cannot be
// set clientside
int textureIndex = texturePointer | (mTexturePage << 7); // Shift seven since one page is 128 textures!
try {
- if (aSide != aFacing) {
+ if (side != aFacing) {
if (textureIndex > 0)
return new ITexture[] { Textures.BlockIcons.casingTexturePages[mTexturePage][texturePointer] };
- else return new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex + 1] };
+ else return new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[mTier][colorIndex + 1] };
} else {
if (textureIndex > 0) {
if (aActive)
@@ -78,8 +79,8 @@ public abstract class GT_MetaTileEntity_Hatch extends GT_MetaTileEntity_BasicTan
else return getTexturesInactive(
Textures.BlockIcons.casingTexturePages[mTexturePage][texturePointer]);
} else {
- if (aActive) return getTexturesActive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex + 1]);
- else return getTexturesInactive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex + 1]);
+ if (aActive) return getTexturesActive(Textures.BlockIcons.MACHINE_CASINGS[mTier][colorIndex + 1]);
+ else return getTexturesInactive(Textures.BlockIcons.MACHINE_CASINGS[mTier][colorIndex + 1]);
}
}
} catch (NullPointerException npe) {
@@ -108,7 +109,7 @@ public abstract class GT_MetaTileEntity_Hatch extends GT_MetaTileEntity_BasicTan
/**
* Sets texture with page and index, called on add to machine list
- *
+ *
* @param id (page<<7)+index of the texture
*/
public final void updateTexture(int id) {
@@ -118,7 +119,7 @@ public abstract class GT_MetaTileEntity_Hatch extends GT_MetaTileEntity_BasicTan
/**
* Sets texture with page and index, rather unusable, but kept FFS
- *
+ *
* @param page page of texure
* @param index index of texure
*/
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java
index 7617725d92..122dcfa746 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java
@@ -5,6 +5,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_DATA_ACCESS;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
@@ -58,7 +59,7 @@ public class GT_MetaTileEntity_Hatch_DataAccess extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -84,12 +85,14 @@ public class GT_MetaTileEntity_Hatch_DataAccess extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return mTier >= 8 && !aBaseMetaTileEntity.isActive();
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return mTier >= 8 && !aBaseMetaTileEntity.isActive();
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Dynamo.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Dynamo.java
index cc1d0ac404..8e621434db 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Dynamo.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Dynamo.java
@@ -4,6 +4,7 @@ import static gregtech.api.enums.GT_Values.V;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -51,7 +52,7 @@ public class GT_MetaTileEntity_Hatch_Dynamo extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -66,8 +67,8 @@ public class GT_MetaTileEntity_Hatch_Dynamo extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isOutputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -96,12 +97,14 @@ public class GT_MetaTileEntity_Hatch_Dynamo extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Energy.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Energy.java
index 2ad670fae1..d9be12671d 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Energy.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Energy.java
@@ -4,6 +4,7 @@ import static gregtech.api.enums.GT_Values.V;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -61,7 +62,7 @@ public class GT_MetaTileEntity_Hatch_Energy extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -76,8 +77,8 @@ public class GT_MetaTileEntity_Hatch_Energy extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isInputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isInputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -111,12 +112,14 @@ public class GT_MetaTileEntity_Hatch_Energy extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java
index 408e1eca14..e659fd10a9 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java
@@ -6,6 +6,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_PIPE_IN;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
import gregtech.GT_Mod;
@@ -77,7 +78,7 @@ public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -151,13 +152,15 @@ public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == aBaseMetaTileEntity.getFrontFacing() && aIndex == 1;
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == aBaseMetaTileEntity.getFrontFacing() && aIndex == 1;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == aBaseMetaTileEntity.getFrontFacing() && aIndex == 0
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == aBaseMetaTileEntity.getFrontFacing() && aIndex == 0
&& (mRecipeMap == null || mRecipeMap.containsInput(aStack)
|| mRecipeMap.containsInput(GT_Utility.getFluidForFilledItem(aStack, true)));
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
index 4bbb98c1da..0a8144d620 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
@@ -10,6 +10,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
@@ -94,7 +95,7 @@ public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -201,8 +202,8 @@ public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (!getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ if (!getBaseMetaTileEntity().getCoverInfoAtSide(side)
.isGUIClickable()) return;
if (aPlayer.isSneaking()) {
if (disableSort) {
@@ -227,14 +228,16 @@ public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
if (aIndex == getCircuitSlot()) return false;
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == getBaseMetaTileEntity().getFrontFacing() && aIndex != getCircuitSlot()
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == getBaseMetaTileEntity().getFrontFacing() && aIndex != getCircuitSlot()
&& (mRecipeMap == null || disableFilter || mRecipeMap.containsInput(aStack))
&& (disableLimited || limitedAllowPutStack(aIndex, aStack));
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
index 12a55d097c..3b56a2dbbf 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
@@ -14,6 +14,7 @@ import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.FakePlayer;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
@@ -125,7 +126,7 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -147,10 +148,10 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX,
- float aY, float aZ) {
+ public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, ForgeDirection side,
+ float aX, float aY, float aZ) {
if (aBaseMetaTileEntity.isClientSide()) return true;
- if (aSide == aBaseMetaTileEntity.getFrontFacing()) {
+ if (side == aBaseMetaTileEntity.getFrontFacing()) {
// only allow OC robot fake player
if (aPlayer instanceof FakePlayer && !aPlayer.getGameProfile()
.getName()
@@ -294,12 +295,14 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return mAuto && GT_Mod.gregtechproxy.mAMHInteraction;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
if (mAuto && GT_Mod.gregtechproxy.mAMHInteraction) {
for (int i = 0; i < getSizeInventory(); i++) if (GT_Utility.areStacksEqual(
GT_OreDictUnificator.get(false, aStack),
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java
index 1fdafd7f35..9cec94fe9b 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java
@@ -86,12 +86,14 @@ public class GT_MetaTileEntity_Hatch_Muffler extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@@ -118,8 +120,8 @@ public class GT_MetaTileEntity_Hatch_Muffler extends GT_MetaTileEntity_Hatch {
}
@Override
- public boolean isFacingValid(byte aFacing) {
- return facings[aFacing];
+ public boolean isFacingValid(ForgeDirection facing) {
+ return facings[facing.ordinal()];
}
@Override
@@ -144,18 +146,18 @@ public class GT_MetaTileEntity_Hatch_Muffler extends GT_MetaTileEntity_Hatch {
chk2 = chk3 = false;
}
- IGregTechTileEntity aMuffler = this.getBaseMetaTileEntity();
- ForgeDirection aDir = ForgeDirection.getOrientation(aMuffler.getFrontFacing());
- float xPos = aDir.offsetX * 0.76F + aMuffler.getXCoord() + 0.25F;
- float yPos = aDir.offsetY * 0.76F + aMuffler.getYCoord() + 0.25F;
- float zPos = aDir.offsetZ * 0.76F + aMuffler.getZCoord() + 0.25F;
+ final IGregTechTileEntity aMuffler = this.getBaseMetaTileEntity();
+ final ForgeDirection aDir = aMuffler.getFrontFacing();
+ final float xPos = aDir.offsetX * 0.76F + aMuffler.getXCoord() + 0.25F;
+ final float yPos = aDir.offsetY * 0.76F + aMuffler.getYCoord() + 0.25F;
+ final float zPos = aDir.offsetZ * 0.76F + aMuffler.getZCoord() + 0.25F;
- float ySpd = aDir.offsetY * 0.1F + 0.2F + 0.1F * XSTR_INSTANCE.nextFloat();
- float xSpd;
- float zSpd;
+ final float ySpd = aDir.offsetY * 0.1F + 0.2F + 0.1F * XSTR_INSTANCE.nextFloat();
+ final float xSpd;
+ final float zSpd;
if (aDir.offsetY == -1) {
- float temp = XSTR_INSTANCE.nextFloat() * 2 * (float) Math.PI;
+ final float temp = XSTR_INSTANCE.nextFloat() * 2 * (float) Math.PI;
xSpd = (float) Math.sin(temp) * 0.1F;
zSpd = (float) Math.cos(temp) * 0.1F;
} else {
@@ -163,7 +165,7 @@ public class GT_MetaTileEntity_Hatch_Muffler extends GT_MetaTileEntity_Hatch {
zSpd = aDir.offsetZ * (0.1F + 0.2F * XSTR_INSTANCE.nextFloat());
}
- WorldSpawnedEventBuilder.ParticleEventBuilder events = new WorldSpawnedEventBuilder.ParticleEventBuilder()
+ final WorldSpawnedEventBuilder.ParticleEventBuilder events = new WorldSpawnedEventBuilder.ParticleEventBuilder()
.setIdentifier(name)
.setWorld(aWorld)
.setMotion(xSpd, ySpd, zSpd);
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
index c3cc1edc9b..a967df47f3 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
@@ -92,7 +92,7 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -102,7 +102,7 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
@Override
- public boolean isLiquidInput(byte aSide) {
+ public boolean isLiquidInput(ForgeDirection side) {
return false;
}
@@ -124,20 +124,14 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
IFluidHandler tTileEntity = aBaseMetaTileEntity
.getITankContainerAtSide(aBaseMetaTileEntity.getFrontFacing());
if (tTileEntity != null) {
- FluidStack tDrained = aBaseMetaTileEntity.drain(
- ForgeDirection.getOrientation(aBaseMetaTileEntity.getFrontFacing()),
- Math.max(1, mFluid.amount),
- false);
+ FluidStack tDrained = aBaseMetaTileEntity
+ .drain(aBaseMetaTileEntity.getFrontFacing(), Math.max(1, mFluid.amount), false);
if (tDrained != null) {
- int tFilledAmount = tTileEntity
- .fill(ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()), tDrained, false);
+ int tFilledAmount = tTileEntity.fill(aBaseMetaTileEntity.getBackFacing(), tDrained, false);
if (tFilledAmount > 0) {
tTileEntity.fill(
- ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()),
- aBaseMetaTileEntity.drain(
- ForgeDirection.getOrientation(aBaseMetaTileEntity.getFrontFacing()),
- tFilledAmount,
- true),
+ aBaseMetaTileEntity.getBackFacing(),
+ aBaseMetaTileEntity.drain(aBaseMetaTileEntity.getFrontFacing(), tFilledAmount, true),
true);
}
}
@@ -222,13 +216,15 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == aBaseMetaTileEntity.getFrontFacing() && aIndex == 1;
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == aBaseMetaTileEntity.getFrontFacing() && aIndex == 1;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == aBaseMetaTileEntity.getFrontFacing() && aIndex == 0;
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == aBaseMetaTileEntity.getFrontFacing() && aIndex == 0;
}
@Override
@@ -237,8 +233,8 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (!getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ if (!getBaseMetaTileEntity().getCoverInfoAtSide(side)
.isGUIClickable()) return;
if (aPlayer.isSneaking()) {
mMode = (byte) ((mMode + 9) % 10);
@@ -323,8 +319,8 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
}
- private boolean tryToLockHatch(EntityPlayer aPlayer, byte aSide) {
- if (!getBaseMetaTileEntity().getCoverInfoAtSide(aSide)
+ private boolean tryToLockHatch(EntityPlayer aPlayer, ForgeDirection side) {
+ if (!getBaseMetaTileEntity().getCoverInfoAtSide(side)
.isGUIClickable()) return false;
if (!isFluidLocked()) return false;
final ItemStack tCurrentItem = aPlayer.inventory.getCurrentItem();
@@ -371,10 +367,10 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch impl
}
@Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX,
- float aY, float aZ) {
- if (tryToLockHatch(aPlayer, aSide)) return true;
- return super.onRightclick(aBaseMetaTileEntity, aPlayer, aSide, aX, aY, aZ);
+ public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, ForgeDirection side,
+ float aX, float aY, float aZ) {
+ if (tryToLockHatch(aPlayer, side)) return true;
+ return super.onRightclick(aBaseMetaTileEntity, aPlayer, side, aX, aY, aZ);
}
public boolean outputsSteam() {
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java
index f04840d7d3..e3915d4854 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java
@@ -7,6 +7,7 @@ import static gregtech.api.util.GT_Utility.moveMultipleItemStacks;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
@@ -85,7 +86,7 @@ public class GT_MetaTileEntity_Hatch_OutputBus extends GT_MetaTileEntity_Hatch i
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -147,12 +148,14 @@ public class GT_MetaTileEntity_Hatch_OutputBus extends GT_MetaTileEntity_Hatch i
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide == aBaseMetaTileEntity.getFrontFacing();
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return side == aBaseMetaTileEntity.getFrontFacing();
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
index 7d37b6747f..e6ce7d14c2 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
@@ -136,8 +136,8 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity
}
@Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- return aSide != getBaseMetaTileEntity().getFrontFacing();
+ public boolean allowCoverOnSide(ForgeDirection side, GT_ItemStack aCoverID) {
+ return side != getBaseMetaTileEntity().getFrontFacing();
}
/** Override this if you are a multi-block that has added support for single recipe locking. */
@@ -146,7 +146,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (supportsSingleRecipeLocking()) {
mLockedToSingleRecipe = !mLockedToSingleRecipe;
if (mLockedToSingleRecipe) {
@@ -166,7 +166,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -1314,12 +1314,14 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_SpecialFilter.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_SpecialFilter.java
index 9672c87f40..63b8160262 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_SpecialFilter.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_SpecialFilter.java
@@ -5,6 +5,7 @@ import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.drawable.Text;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
@@ -66,8 +67,9 @@ public abstract class GT_MetaTileEntity_SpecialFilter extends GT_MetaTileEntity_
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack))
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
+ return (super.allowPutStack(aBaseMetaTileEntity, aIndex, side, aStack))
&& ((this.bNBTAllowed) || (!aStack.hasTagCompound()))
&& (this.isStackAllowed(aStack) != this.bInvertFilter);
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
index ae70607416..4b8b59d9cb 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
@@ -86,10 +86,10 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex,
- boolean aActive, boolean aRedstone) {
- return mTextures[Math.min(2, aSide) + (aSide == aFacing ? 3 : 0)
- + (aBaseMetaTileEntity.isAllowedToWork() ? 0 : 6)][aColorIndex + 1];
+ public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection side,
+ ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) {
+ return mTextures[Math.min(2, side.ordinal()) + (side == facingDirection ? 3 : 0)
+ + (baseMetaTileEntity.isAllowedToWork() ? 0 : 6)][colorIndex + 1];
}
@Override
@@ -108,7 +108,7 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -123,14 +123,14 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
}
@Override
- public boolean isInputFacing(byte aSide) {
- return getBaseMetaTileEntity().isAllowedToWork() ? aSide == getBaseMetaTileEntity().getFrontFacing()
- : aSide != getBaseMetaTileEntity().getFrontFacing();
+ public boolean isInputFacing(ForgeDirection side) {
+ return getBaseMetaTileEntity().isAllowedToWork() ? side == getBaseMetaTileEntity().getFrontFacing()
+ : side != getBaseMetaTileEntity().getFrontFacing();
}
@Override
- public boolean isOutputFacing(byte aSide) {
- return !isInputFacing(aSide);
+ public boolean isOutputFacing(ForgeDirection side) {
+ return !isInputFacing(side);
}
@Override
@@ -172,50 +172,52 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
if (aBaseMetaTileEntity.isServerSide() && GregTech_API.mInputRF) {
aBaseMetaTileEntity.setActive(aBaseMetaTileEntity.isAllowedToWork());
- for (byte i = 0; i < 6 && aBaseMetaTileEntity.getStoredEU() < aBaseMetaTileEntity.getEUCapacity(); i++)
- if (aBaseMetaTileEntity.inputEnergyFrom(i)) {
- TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(i);
- if (tTileEntity instanceof IEnergyProvider && ((IEnergyProvider) tTileEntity)
- .extractEnergy(ForgeDirection.getOrientation(GT_Utility.getOppositeSide(i)), 1, true) == 1) {
- long tEU = ((IEnergyProvider) tTileEntity).extractEnergy(
- ForgeDirection.getOrientation(GT_Utility.getOppositeSide(i)),
- GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU),
- false);
+ for (final ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) {
+ if (aBaseMetaTileEntity.getStoredEU() >= aBaseMetaTileEntity.getEUCapacity()) break;
+ if (!aBaseMetaTileEntity.inputEnergyFrom(side)) continue;
+ final TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(side);
+ if (tTileEntity instanceof IEnergyProvider energyProvider
+ && energyProvider.extractEnergy(side.getOpposite(), 1, true) == 1) {
+ long tEU = ((IEnergyProvider) tTileEntity).extractEnergy(
+ side.getOpposite(),
+ GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU),
+ false);
+ tEU = tEU * GregTech_API.mRFtoEU / 100;
+ aBaseMetaTileEntity.injectEnergyUnits(ForgeDirection.UNKNOWN, Math.min(tEU, maxEUInput()), 1);
+ } else if (tTileEntity instanceof IEnergyStorage energyStorage
+ && energyStorage.extractEnergy(1, true) == 1) {
+ long tEU = ((IEnergyStorage) tTileEntity)
+ .extractEnergy(GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU), false);
tEU = tEU * GregTech_API.mRFtoEU / 100;
- aBaseMetaTileEntity.injectEnergyUnits((byte) 6, Math.min(tEU, maxEUInput()), 1);
- } else if (tTileEntity instanceof IEnergyStorage
- && ((IEnergyStorage) tTileEntity).extractEnergy(1, true) == 1) {
- long tEU = ((IEnergyStorage) tTileEntity)
- .extractEnergy(GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU), false);
- tEU = tEU * GregTech_API.mRFtoEU / 100;
- aBaseMetaTileEntity.injectEnergyUnits((byte) 6, Math.min(tEU, maxEUInput()), 1);
- } else if (GregTech_API.meIOLoaded && tTileEntity instanceof IPowerContainer
- && ((IPowerContainer) tTileEntity).getEnergyStored() > 0) {
- int storedRF = ((IPowerContainer) tTileEntity).getEnergyStored();
- int extractRF = GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU);
- long tEU = 0;
- if (tTileEntity instanceof TileCapBank) {
- ICapBankNetwork network = ((TileCapBank) tTileEntity).getNetwork();
- if (network != null && network.getEnergyStoredL() > 0) {
- tEU = Math.min(
- (Math.min(
- Math.min(network.getEnergyStoredL(), storedRF - extractRF),
- network.getMaxOutput())) * (long) GregTech_API.mRFtoEU / 100L,
- maxEUInput());
- network.addEnergy(GT_Utility.safeInt(-(tEU * 100 / GregTech_API.mRFtoEU)));
- }
+ aBaseMetaTileEntity.injectEnergyUnits(ForgeDirection.UNKNOWN, Math.min(tEU, maxEUInput()), 1);
+ } else if (GregTech_API.meIOLoaded && tTileEntity instanceof IPowerContainer powerContainer
+ && powerContainer.getEnergyStored() > 0) {
+ final int storedRF = powerContainer.getEnergyStored();
+ final int extractRF = GT_Utility.safeInt(maxEUInput() * 100L / GregTech_API.mRFtoEU);
+ long tEU = 0;
+ if (tTileEntity instanceof TileCapBank capBank) {
+ ICapBankNetwork network = capBank.getNetwork();
+ if (network != null && network.getEnergyStoredL() > 0) {
+ tEU = Math.min(
+ (Math.min(
+ Math.min(network.getEnergyStoredL(), storedRF - extractRF),
+ network.getMaxOutput())) * (long) GregTech_API.mRFtoEU / 100L,
+ maxEUInput());
+ network.addEnergy(GT_Utility.safeInt(-(tEU * 100 / GregTech_API.mRFtoEU)));
+ }
+ } else {
+ if (storedRF > extractRF) {
+ powerContainer.setEnergyStored(storedRF - extractRF);
+ tEU = maxEUInput();
} else {
- if (storedRF > extractRF) {
- ((IPowerContainer) tTileEntity).setEnergyStored(storedRF - extractRF);
- tEU = maxEUInput();
- } else {
- ((IPowerContainer) tTileEntity).setEnergyStored(0);
- tEU = storedRF * (long) GregTech_API.mRFtoEU / 100L;
- }
+ powerContainer.setEnergyStored(0);
+ tEU = storedRF * (long) GregTech_API.mRFtoEU / 100L;
}
- aBaseMetaTileEntity.injectEnergyUnits((byte) 6, Math.min(tEU, maxEUInput()), 1);
}
- }
+ aBaseMetaTileEntity
+ .injectEnergyUnits(ForgeDirection.UNKNOWN, Math.min(tEU, maxEUInput()), 1);
+ }
+ }
}
}
@@ -230,12 +232,14 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@@ -265,10 +269,9 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
@Override
public void getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor,
IWailaConfigHandler config) {
- final int facing = getBaseMetaTileEntity().getFrontFacing();
+ final ForgeDirection facing = getBaseMetaTileEntity().getFrontFacing();
final NBTTagCompound tag = accessor.getNBTData();
- final int side = (byte) accessor.getSide()
- .ordinal();
+ final ForgeDirection side = accessor.getSide();
final boolean allowedToWork = tag.getBoolean("isAllowedToWork");
final byte inputTier = GT_Utility.getTier(tag.getLong("maxEUInput"));
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java
index 0e313a4c00..d677b76248 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java
@@ -5,6 +5,7 @@ import static gregtech.api.enums.GT_Values.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.IGlobalWirelessEnergy;
@@ -44,7 +45,7 @@ public class GT_MetaTileEntity_Wireless_Dynamo extends GT_MetaTileEntity_Hatch_D
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -59,8 +60,8 @@ public class GT_MetaTileEntity_Wireless_Dynamo extends GT_MetaTileEntity_Hatch_D
}
@Override
- public boolean isInputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isInputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -106,12 +107,14 @@ public class GT_MetaTileEntity_Wireless_Dynamo extends GT_MetaTileEntity_Hatch_D
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java
index c363bb6eb0..4c1c7b4cb9 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java
@@ -7,6 +7,7 @@ import java.math.BigInteger;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.IGlobalWirelessEnergy;
@@ -56,7 +57,7 @@ public class GT_MetaTileEntity_Wireless_Hatch extends GT_MetaTileEntity_Hatch_En
}
@Override
- public boolean isFacingValid(byte aFacing) {
+ public boolean isFacingValid(ForgeDirection facing) {
return true;
}
@@ -71,8 +72,8 @@ public class GT_MetaTileEntity_Wireless_Hatch extends GT_MetaTileEntity_Hatch_En
}
@Override
- public boolean isInputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
+ public boolean isInputFacing(ForgeDirection side) {
+ return side == getBaseMetaTileEntity().getFrontFacing();
}
@Override
@@ -111,12 +112,14 @@ public class GT_MetaTileEntity_Wireless_Hatch extends GT_MetaTileEntity_Hatch_En
}
@Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}
@Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
+ ItemStack aStack) {
return false;
}