diff options
Diffstat (limited to 'src/main/java/gregtech/common/tileentities/boilers')
4 files changed, 62 insertions, 80 deletions
diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java index fbcc8f62ce..325728ba98 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java @@ -70,11 +70,16 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa } @Override - public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, - boolean aActive, boolean aRedstone) { - ITexture[] tmp = mTextures[aSide >= 2 ? aSide != aFacing ? 2 : ((byte) (aActive ? 4 : 3)) : aSide][aColorIndex - + 1]; - if (aSide != aFacing && tmp.length == 2) { + public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection, + ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) { + ITexture[] tmp; + if (sideDirection.offsetY == 0) { + if (sideDirection != facingDirection) tmp = mTextures[2][colorIndex + 1]; + else tmp = mTextures[(byte) (active ? 4 : 3)][colorIndex + 1]; + } else { + tmp = mTextures[sideDirection.ordinal()][colorIndex + 1]; + } + if (sideDirection != facingDirection && tmp.length == 2) { tmp = new ITexture[] { tmp[0] }; } return tmp; @@ -86,23 +91,8 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa } @Override - public boolean isPneumatic() { - return false; - } - - @Override - public boolean isSteampowered() { - return false; - } - - @Override - public boolean isSimpleMachine() { - return false; - } - - @Override - public boolean isFacingValid(byte aFacing) { - return aFacing > 1; + public boolean isFacingValid(ForgeDirection facingDirection) { + return facingDirection.offsetY == 0; } @Override @@ -197,7 +187,7 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa } @Override - public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCover) { + public boolean allowCoverOnSide(ForgeDirection side, GT_ItemStack aCover) { return GregTech_API.getCoverBehaviorNew(aCover.toStack()) .isSimpleCover(); } @@ -324,26 +314,17 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa * Pushes Steam to a Side of this Boiler * * @param aBaseMetaTileEntity The tile-entity instance of this Boiler - * @param aSide The ordinal direction of the side to push Steam to + * @param side The direction of the side to push Steam to */ - protected final void pushSteamToSide(IGregTechTileEntity aBaseMetaTileEntity, int aSide) { + protected final void pushSteamToSide(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side) { if (mSteam == null || mSteam.amount == 0) return; - IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide((byte) aSide); + final IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(side); if (tTileEntity == null) return; - FluidStack tDrained = aBaseMetaTileEntity - .drain(ForgeDirection.getOrientation(aSide), Math.max(1, this.mSteam.amount / 2), false); + final FluidStack tDrained = aBaseMetaTileEntity.drain(side, Math.max(1, this.mSteam.amount / 2), false); if (tDrained == null) return; - int tFilledAmount = tTileEntity.fill( - ForgeDirection.getOrientation(aSide) - .getOpposite(), - tDrained, - false); + final int tFilledAmount = tTileEntity.fill(side.getOpposite(), tDrained, false); if (tFilledAmount <= 0) return; - tTileEntity.fill( - ForgeDirection.getOrientation(aSide) - .getOpposite(), - aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(aSide), tFilledAmount, true), - true); + tTileEntity.fill(side.getOpposite(), aBaseMetaTileEntity.drain(side, tFilledAmount, true), true); } /** @@ -353,9 +334,10 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa */ protected void pushSteamToInventories(IGregTechTileEntity aBaseMetaTileEntity) { if (mSteam == null || mSteam.amount == 0) return; - for (int i = 1; (this.mSteam != null) && (i < 6); i++) { - if (i == aBaseMetaTileEntity.getFrontFacing()) continue; - pushSteamToSide(aBaseMetaTileEntity, i); + for (final ForgeDirection direction : ForgeDirection.VALID_DIRECTIONS) { + if (direction == aBaseMetaTileEntity.getFrontFacing()) continue; + if (this.mSteam == null) break; + pushSteamToSide(aBaseMetaTileEntity, direction); } } @@ -371,12 +353,14 @@ public abstract class GT_MetaTileEntity_Boiler extends GT_MetaTileEntity_BasicTa } @Override - public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { + public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, + ItemStack aStack) { return GT_Mod.gregtechproxy.mAllowSmallBoilerAutomation; } @Override - public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { + public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, + ItemStack aStack) { return GT_Mod.gregtechproxy.mAllowSmallBoilerAutomation; } diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java index d375d285d2..c9a67f5d42 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java @@ -100,9 +100,9 @@ public class GT_MetaTileEntity_Boiler_Bronze extends GT_MetaTileEntity_Boiler { public void onRandomDisplayTick(IGregTechTileEntity aBaseMetaTileEntity) { if (aBaseMetaTileEntity.isActive()) { - final byte frontFacing = aBaseMetaTileEntity.getFrontFacing(); + final ForgeDirection frontFacing = aBaseMetaTileEntity.getFrontFacing(); - if (frontFacing > 1 && aBaseMetaTileEntity.getCoverIDAtSide(frontFacing) == 0 + if (frontFacing.offsetY == 0 && aBaseMetaTileEntity.getCoverIDAtSide(frontFacing) == 0 && !aBaseMetaTileEntity.getOpacityAtSide(frontFacing)) { final double oX = aBaseMetaTileEntity.getOffsetX(frontFacing, 1) + 8D / 16D; @@ -115,16 +115,16 @@ public class GT_MetaTileEntity_Boiler_Bronze extends GT_MetaTileEntity_Boiler { y = oY + XSTR_INSTANCE.nextFloat() * 6D / 16D; - if (frontFacing == ForgeDirection.WEST.ordinal()) { + if (frontFacing == ForgeDirection.WEST) { x = oX - offset; z = oZ + horizontal; - } else if (frontFacing == ForgeDirection.EAST.ordinal()) { + } else if (frontFacing == ForgeDirection.EAST) { x = oX + offset; z = oZ + horizontal; - } else if (frontFacing == ForgeDirection.NORTH.ordinal()) { + } else if (frontFacing == ForgeDirection.NORTH) { x = oX + horizontal; z = oZ - offset; - } else // if (frontFacing == ForgeDirection.SOUTH.ordinal()) + } else // if (frontFacing == ForgeDirection.SOUTH) { x = oX + horizontal; z = oZ + offset; diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java index 6ffcd37f28..3a8b94463b 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java @@ -86,23 +86,21 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { } @Override - public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, - boolean aActive, boolean aRedstone) { - final ForgeDirection sideDirection = ForgeDirection.getOrientation(aSide); - final ForgeDirection facingDirection = ForgeDirection.getOrientation(aFacing); + public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection, + ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) { final ForgeDirection rearDirection = facingDirection.getOpposite(); final ITexture[] tmp; - if (aSide >= 2) { + if (sideDirection.offsetY == 0) { if (sideDirection == facingDirection) { - if (aActive) tmp = mTextures[4][aColorIndex + 1]; - else tmp = mTextures[3][aColorIndex + 1]; + if (active) tmp = mTextures[4][colorIndex + 1]; + else tmp = mTextures[3][colorIndex + 1]; } else if (sideDirection == rearDirection) { - tmp = mTextures[5][aColorIndex + 1]; + tmp = mTextures[5][colorIndex + 1]; } else { - tmp = mTextures[2][aColorIndex + 1]; + tmp = mTextures[2][colorIndex + 1]; } - } else tmp = mTextures[aSide][aColorIndex + 1]; - if (aSide != aFacing && tmp.length == 2) { + } else tmp = mTextures[sideDirection.ordinal()][colorIndex + 1]; + if (sideDirection != facingDirection && tmp.length == 2) { return new ITexture[] { tmp[0] }; } return tmp; @@ -267,9 +265,8 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { if (mSteam == null || mSteam.amount == 0) return; pushSteamToSide( aBaseMetaTileEntity, - ForgeDirection.getOrientation(aBaseMetaTileEntity.getFrontFacing()) - .getOpposite() - .ordinal()); + aBaseMetaTileEntity.getFrontFacing() + .getOpposite()); } /** @@ -278,7 +275,7 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { * @param aBaseMetaTileEntity The tile-entity instance of this Lava Boiler */ protected void drainLava(IGregTechTileEntity aBaseMetaTileEntity) { - final IFluidHandler upTank = aBaseMetaTileEntity.getITankContainerAtSide((byte) ForgeDirection.UP.ordinal()); + final IFluidHandler upTank = aBaseMetaTileEntity.getITankContainerAtSide(ForgeDirection.UP); if (upTank == null) return; // Simulates drain of maximum lava amount up to 1000L that can fit the internal tank final FluidStack drainableLavaStack = upTank.drain( @@ -321,10 +318,9 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { public void onRandomDisplayTick(IGregTechTileEntity aBaseMetaTileEntity) { if (aBaseMetaTileEntity.isActive()) { - final byte frontFacing = aBaseMetaTileEntity.getFrontFacing(); - final ForgeDirection frontDirection = ForgeDirection.getOrientation(frontFacing); + final ForgeDirection frontFacing = aBaseMetaTileEntity.getFrontFacing(); - if (frontFacing > 1 && aBaseMetaTileEntity.getCoverIDAtSide(frontFacing) == 0 + if (frontFacing.offsetY == 0 && aBaseMetaTileEntity.getCoverIDAtSide(frontFacing) == 0 && !aBaseMetaTileEntity.getOpacityAtSide(frontFacing)) { final double oX = aBaseMetaTileEntity.getOffsetX(frontFacing, 1) + 8D / 16D; @@ -337,7 +333,7 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { y = oY + XSTR_INSTANCE.nextFloat() * 6D / 16D; - switch (frontDirection) { + switch (frontFacing) { case WEST -> { x = oX - offset; z = oZ + horizontal; @@ -395,12 +391,14 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { } @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) { + public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, + ItemStack aStack) { return true; } @@ -408,7 +406,7 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { public void doSound(byte aIndex, double aX, double aY, double aZ) { if (aIndex != GT_MetaTileEntity_Boiler.SOUND_EVENT_LET_OFF_EXCESS_STEAM) return; - final ForgeDirection rearDirection = ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()) + final ForgeDirection rearDirection = getBaseMetaTileEntity().getFrontFacing() .getOpposite(); GT_Utility.doSoundAtClient( SoundResource.RANDOM_FIZZ, @@ -459,8 +457,8 @@ public class GT_MetaTileEntity_Boiler_Lava extends GT_MetaTileEntity_Boiler { } @Override - public FluidTankInfo[] getTankInfo(ForgeDirection aSide) { - return new FluidTankInfo[] { super.getTankInfo(aSide)[0], + public FluidTankInfo[] getTankInfo(ForgeDirection side) { + return new FluidTankInfo[] { super.getTankInfo(side)[0], new FluidTankInfo(this.lavaTank.getFluid(), this.lavaTank.getCapacity()), new FluidTankInfo(getDrainableStack(), getCapacity()) }; } diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java index 38c0d6e9e2..3deaf12b6f 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java @@ -128,14 +128,14 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { } @Override - public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, - boolean aActive, boolean aRedstone) { - int i = aColorIndex + 1; - if (aSide >= 2) { - if (aSide != aFacing) return mTextures[2][i]; + public ITexture[] getTexture(IGregTechTileEntity baseMetaTileEntity, ForgeDirection sideDirection, + ForgeDirection facingDirection, int colorIndex, boolean active, boolean redstoneLevel) { + final int i = colorIndex + 1; + if (sideDirection.offsetY == 0) { + if (sideDirection != facingDirection) return mTextures[2][i]; return mTextures[3][i]; } - return mTextures[aSide][i]; + return mTextures[sideDirection.ordinal()][i]; } @Override @@ -224,7 +224,7 @@ public class GT_MetaTileEntity_Boiler_Solar extends GT_MetaTileEntity_Boiler { if ((aTick % 240L != 0L) || (world.isThundering())) { return; } - if (!aBaseMetaTileEntity.getSkyAtSide((byte) ForgeDirection.UP.ordinal())) { + if (!aBaseMetaTileEntity.getSkyAtSide(ForgeDirection.UP)) { return; } boolean weatherClear = !world.isRaining() || aBaseMetaTileEntity.getBiome().rainfall == 0.0F; |