package gtPlusPlus.xmod.gregtech.common.blocks.textures.turbine; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_SS_ACTIVE9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_ST_ACTIVE9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TI_ACTIVE9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU9; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE1; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE2; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE3; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE4; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE5; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE6; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE7; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE8; import static gregtech.api.enums.Textures.BlockIcons.LARGETURBINE_TU_ACTIVE9; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE1; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE1_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE2; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE2_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE3; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE3_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE4; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE4_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE5; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE5_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE6; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE6_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE7; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE7_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE8; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE8_ACTIVE; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE9; import static gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock.OVERLAY_SC_TURBINE9_ACTIVE; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.util.ForgeDirection; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.MTEHatchTurbine; import gtPlusPlus.xmod.gregtech.common.blocks.GregtechMetaSpecialMultiCasings; public class LargeTurbineTextureHandler { /** * LP Turbines */ public static IIcon[] OVERLAY_LP_TURBINE = new IIcon[] { LARGETURBINE_ST1.getIcon(), LARGETURBINE_ST2.getIcon(), LARGETURBINE_ST3.getIcon(), LARGETURBINE_ST4.getIcon(), LARGETURBINE_ST5.getIcon(), LARGETURBINE_ST6.getIcon(), LARGETURBINE_ST7.getIcon(), LARGETURBINE_ST8.getIcon(), LARGETURBINE_ST9.getIcon(), }; public static IIcon[] OVERLAY_LP_TURBINE_ACTIVE = new IIcon[] { LARGETURBINE_ST_ACTIVE1.getIcon(), LARGETURBINE_ST_ACTIVE2.getIcon(), LARGETURBINE_ST_ACTIVE3.getIcon(), LARGETURBINE_ST_ACTIVE4.getIcon(), LARGETURBINE_ST_ACTIVE5.getIcon(), LARGETURBINE_ST_ACTIVE6.getIcon(), LARGETURBINE_ST_ACTIVE7.getIcon(), LARGETURBINE_ST_ACTIVE8.getIcon(), LARGETURBINE_ST_ACTIVE9.getIcon(), }; /** * HP Turbines */ public static IIcon[] OVERLAY_HP_TURBINE = new IIcon[] { LARGETURBINE_TI1.getIcon(), LARGETURBINE_TI2.getIcon(), LARGETURBINE_TI3.getIcon(), LARGETURBINE_TI4.getIcon(), LARGETURBINE_TI5.getIcon(), LARGETURBINE_TI6.getIcon(), LARGETURBINE_TI7.getIcon(), LARGETURBINE_TI8.getIcon(), LARGETURBINE_TI9.getIcon(), }; public static IIcon[] OVERLAY_HP_TURBINE_ACTIVE = new IIcon[] { LARGETURBINE_TI_ACTIVE1.getIcon(), LARGETURBINE_TI_ACTIVE2.getIcon(), LARGETURBINE_TI_ACTIVE3.getIcon(), LARGETURBINE_TI_ACTIVE4.getIcon(), LARGETURBINE_TI_ACTIVE5.getIcon(), LARGETURBINE_TI_ACTIVE6.getIcon(), LARGETURBINE_TI_ACTIVE7.getIcon(), LARGETURBINE_TI_ACTIVE8.getIcon(), LARGETURBINE_TI_ACTIVE9.getIcon(), }; /** * Gas Turbines */ public static IIcon[] OVERLAY_GAS_TURBINE = new IIcon[] { LARGETURBINE_SS1.getIcon(), LARGETURBINE_SS2.getIcon(), LARGETURBINE_SS3.getIcon(), LARGETURBINE_SS4.getIcon(), LARGETURBINE_SS5.getIcon(), LARGETURBINE_SS6.getIcon(), LARGETURBINE_SS7.getIcon(), LARGETURBINE_SS8.getIcon(), LARGETURBINE_SS9.getIcon(), }; public static IIcon[] OVERLAY_GAS_TURBINE_ACTIVE = new IIcon[] { LARGETURBINE_SS_ACTIVE1.getIcon(), LARGETURBINE_SS_ACTIVE2.getIcon(), LARGETURBINE_SS_ACTIVE3.getIcon(), LARGETURBINE_SS_ACTIVE4.getIcon(), LARGETURBINE_SS_ACTIVE5.getIcon(), LARGETURBINE_SS_ACTIVE6.getIcon(), LARGETURBINE_SS_ACTIVE7.getIcon(), LARGETURBINE_SS_ACTIVE8.getIcon(), LARGETURBINE_SS_ACTIVE9.getIcon(), }; /** * Plasma Turbines */ public static IIcon[] OVERLAY_PLASMA_TURBINE = new IIcon[] { LARGETURBINE_TU1.getIcon(), LARGETURBINE_TU2.getIcon(), LARGETURBINE_TU3.getIcon(), LARGETURBINE_TU4.getIcon(), LARGETURBINE_TU5.getIcon(), LARGETURBINE_TU6.getIcon(), LARGETURBINE_TU7.getIcon(), LARGETURBINE_TU8.getIcon(), LARGETURBINE_TU9.getIcon(), }; public static IIcon[] OVERLAY_PLASMA_TURBINE_ACTIVE = new IIcon[] { LARGETURBINE_TU_ACTIVE1.getIcon(), LARGETURBINE_TU_ACTIVE2.getIcon(), LARGETURBINE_TU_ACTIVE3.getIcon(), LARGETURBINE_TU_ACTIVE4.getIcon(), LARGETURBINE_TU_ACTIVE5.getIcon(), LARGETURBINE_TU_ACTIVE6.getIcon(), LARGETURBINE_TU_ACTIVE7.getIcon(), LARGETURBINE_TU_ACTIVE8.getIcon(), LARGETURBINE_TU_ACTIVE9.getIcon(), }; public static IIcon[] OVERLAY_SC_TURBINE = new IIcon[] { OVERLAY_SC_TURBINE1.getIcon(), OVERLAY_SC_TURBINE2.getIcon(), OVERLAY_SC_TURBINE3.getIcon(), OVERLAY_SC_TURBINE4.getIcon(), OVERLAY_SC_TURBINE5.getIcon(), OVERLAY_SC_TURBINE6.getIcon(), OVERLAY_SC_TURBINE7.getIcon(), OVERLAY_SC_TURBINE8.getIcon(), OVERLAY_SC_TURBINE9.getIcon(), }; public static IIcon[] OVERLAY_SC_TURBINE_ACTIVE = new IIcon[] { OVERLAY_SC_TURBINE1_ACTIVE.getIcon(), OVERLAY_SC_TURBINE2_ACTIVE.getIcon(), OVERLAY_SC_TURBINE3_ACTIVE.getIcon(), OVERLAY_SC_TURBINE4_ACTIVE.getIcon(), OVERLAY_SC_TURBINE5_ACTIVE.getIcon(), OVERLAY_SC_TURBINE6_ACTIVE.getIcon(), OVERLAY_SC_TURBINE7_ACTIVE.getIcon(), OVERLAY_SC_TURBINE8_ACTIVE.getIcon(), OVERLAY_SC_TURBINE9_ACTIVE.getIcon(), }; public static IIcon handleCasingsGT(final IBlockAccess aWorld, final int xCoord, final int yCoord, final int zCoord, final ForgeDirection side, final GregtechMetaSpecialMultiCasings i) { final int tMeta = aWorld.getBlockMetadata(xCoord, yCoord, zCoord); // 0 shaft // 1 LP // 2 HP // 3 Gas // 4 Plasma IIcon[] mGetCurrentTextureSet = null; IIcon[] mGetCurrentTextureSet_ACTIVE = null; if ((tMeta <= 0 || tMeta >= 5) && tMeta != 15) { return GregtechMetaSpecialMultiCasings.getStaticIcon(side.ordinal(), (byte) tMeta); } else { if (tMeta == 1) { mGetCurrentTextureSet = OVERLAY_LP_TURBINE; mGetCurrentTextureSet_ACTIVE = OVERLAY_LP_TURBINE_ACTIVE; } else if (tMeta == 2) { mGetCurrentTextureSet = OVERLAY_HP_TURBINE; mGetCurrentTextureSet_ACTIVE = OVERLAY_HP_TURBINE_ACTIVE; } else if (tMeta == 3) { mGetCurrentTextureSet = OVERLAY_GAS_TURBINE; mGetCurrentTextureSet_ACTIVE = OVERLAY_GAS_TURBINE_ACTIVE; } else if (tMeta == 4) { mGetCurrentTextureSet = OVERLAY_PLASMA_TURBINE; mGetCurrentTextureSet_ACTIVE = OVERLAY_PLASMA_TURBINE_ACTIVE; } else { mGetCurrentTextureSet = OVERLAY_SC_TURBINE; mGetCurrentTextureSet_ACTIVE = OVERLAY_SC_TURBINE_ACTIVE; } if (mGetCurrentTextureSet == null || mGetCurrentTextureSet_ACTIVE == null) { return GregtechMetaSpecialMultiCasings.getStaticIcon(side.ordinal(), (byte) tMeta); } if ((side == ForgeDirection.NORTH) || (side == ForgeDirection.SOUTH)) { TileEntity tTileEntity; IMetaTileEntity tMetaTileEntity; if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.SOUTH ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[0]; } return mGetCurrentTextureSet[0]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.SOUTH ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[3]; } return mGetCurrentTextureSet[3]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.SOUTH ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[6]; } return mGetCurrentTextureSet[6]; } if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[1]; } return mGetCurrentTextureSet[1]; } if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[7]; } return mGetCurrentTextureSet[7]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.NORTH ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[8]; } return mGetCurrentTextureSet[8]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.NORTH ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[5]; } return mGetCurrentTextureSet[5]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord + (side == ForgeDirection.NORTH ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[2]; } return mGetCurrentTextureSet[2]; } } else if ((side == ForgeDirection.WEST) || (side == ForgeDirection.EAST)) { TileEntity tTileEntity; Object tMetaTileEntity; if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord - 1, zCoord + (side == ForgeDirection.WEST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[0]; } return mGetCurrentTextureSet[0]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord, zCoord + (side == ForgeDirection.WEST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[3]; } return mGetCurrentTextureSet[3]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord + 1, zCoord + (side == ForgeDirection.WEST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[6]; } return mGetCurrentTextureSet[6]; } if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[1]; } return mGetCurrentTextureSet[1]; } if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[7]; } return mGetCurrentTextureSet[7]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord + 1, zCoord + (side == ForgeDirection.EAST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[8]; } return mGetCurrentTextureSet[8]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord, zCoord + (side == ForgeDirection.EAST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[5]; } return mGetCurrentTextureSet[5]; } if ((null != (tTileEntity = aWorld .getTileEntity(xCoord, yCoord - 1, zCoord + (side == ForgeDirection.EAST ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == side) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof MTEHatchTurbine))) { if (isUsingAnimatedTexture(tTileEntity)) { return mGetCurrentTextureSet_ACTIVE[2]; } return mGetCurrentTextureSet[2]; } } } return GregtechMetaSpecialMultiCasings.getStaticIcon(side.ordinal(), (byte) tMeta); } public static boolean isUsingAnimatedTexture(TileEntity tTileEntity) { boolean aVal = true; if (tTileEntity instanceof IGregTechTileEntity aTile) { final IMetaTileEntity aMetaTileEntity = aTile.getMetaTileEntity(); if (aMetaTileEntity instanceof MTEHatchTurbine) { aVal = aMetaTileEntity.getBaseMetaTileEntity() .isActive(); // Logger.INFO("Returning "+aVal+" as Rotor Assembly controller status"); } } return aVal; } public static MTEHatchTurbine isTurbineHatch(final IGregTechTileEntity aTileEntity) { if (aTileEntity != null) { final IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); if (aMetaTileEntity instanceof MTEHatchTurbine) { return (MTEHatchTurbine) aMetaTileEntity; } } return null; } }