From 0427ab89f1753a44b30cbc35ce021cbbdc845109 Mon Sep 17 00:00:00 2001 From: Foghrye4 Date: Thu, 10 Aug 2017 18:52:45 +0300 Subject: fix missing source folder --- .../boilers/GT_MetaTileEntity_Boiler.java | 356 +++++++++++++++++++++ .../boilers/GT_MetaTileEntity_Boiler_Bronze.java | 181 +++++++++++ .../boilers/GT_MetaTileEntity_Boiler_Lava.java | 172 ++++++++++ .../boilers/GT_MetaTileEntity_Boiler_Solar.java | 161 ++++++++++ .../boilers/GT_MetaTileEntity_Boiler_Steel.java | 191 +++++++++++ 5 files changed, 1061 insertions(+) create mode 100644 src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java create mode 100644 src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java create mode 100644 src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java create mode 100644 src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java create mode 100644 src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java (limited to 'src/main/java/gregtech/common/tileentities/boilers') 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 new file mode 100644 index 0000000..8fce193 --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java @@ -0,0 +1,356 @@ +package gregtech.common.tileentities.boilers; + +import gregtech.api.GregTech_API; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; +import gregtech.api.objects.GT_ItemStack; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.common.util.ForgeDirection; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.IFluidHandler; + +public abstract class GT_MetaTileEntity_Boiler + extends GT_MetaTileEntity_BasicTank +{ + public int mTemperature = 20; + public int mProcessingEnergy = 0; + public int mLossTimer = 0; + public FluidStack mSteam = null; + public boolean mHadNoWater = false; + + public GT_MetaTileEntity_Boiler(int aID, String aName, String aNameRegional, String aDescription, ITexture... aTextures) + { + super(aID, aName, aNameRegional, 0, 4, aDescription, aTextures); + } + + public GT_MetaTileEntity_Boiler(String aName, int aTier, String aDescription, ITexture[][][] aTextures) + { + super(aName, aTier, 4, aDescription, aTextures); + } + + @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]; + //mTextures[(aSide==aFacing?(aActive?4:3):aSide==GT_Utility.getOppositeSide(aFacing)?2:aSide==0?0:aSide==1?1:2)][aColorIndex+1]; + if(aSide!=aFacing&&tmp.length==2){ + tmp = new ITexture[]{tmp[0]}; + } + return tmp; + } + + @Override +public boolean isElectric() + { + return false; + } + + @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; + } + + @Override +public boolean isAccessAllowed(EntityPlayer aPlayer) + { + return true; + } + + @Override +public boolean isValidSlot(int aIndex) + { + return true; + } + + @Override +public int getProgresstime() + { + return this.mTemperature; + } + + @Override +public int maxProgresstime() + { + return 500; + } + + @Override +public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) + { + if (aBaseMetaTileEntity.isClientSide()) { + return true; + } + if (aPlayer != null) { + if (GT_Utility.areStacksEqual(aPlayer.getCurrentEquippedItem(), new ItemStack(Items.water_bucket, 1))) + { + fill(Materials.Water.getFluid(1000 * aPlayer.getCurrentEquippedItem().stackSize), true); + aPlayer.getCurrentEquippedItem().func_150996_a(Items.bucket); + } + else + { + aBaseMetaTileEntity.openGUI(aPlayer); + } + } + return true; + } + + @Override +public boolean doesFillContainers() + { + return true; + } + + @Override +public boolean doesEmptyContainers() + { + return true; + } + + @Override +public boolean canTankBeFilled() + { + return true; + } + + @Override +public boolean canTankBeEmptied() + { + return true; + } + + @Override +public boolean displaysItemStack() + { + return false; + } + + @Override +public boolean displaysStackSize() + { + return false; + } + + @Override +public boolean isFluidInputAllowed(FluidStack aFluid) + { + return GT_ModHandler.isWater(aFluid); + } + + @Override +public FluidStack getDrainableStack() + { + return this.mSteam; + } + + @Override +public FluidStack setDrainableStack(FluidStack aFluid) + { + this.mSteam = aFluid;return this.mSteam; + } + + @Override +public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCover) + { + return GregTech_API.getCoverBehavior(aCover.toStack()).isSimpleCover(); + } + + @Override +public void saveNBTData(NBTTagCompound aNBT) + { + super.saveNBTData(aNBT); + aNBT.setInteger("mLossTimer", this.mLossTimer); + aNBT.setInteger("mTemperature", this.mTemperature); + aNBT.setInteger("mProcessingEnergy", this.mProcessingEnergy); + if (this.mSteam != null) { + try + { + aNBT.setTag("mSteam", this.mSteam.writeToNBT(new NBTTagCompound())); + } + catch (Throwable e) {} + } + } + + @Override +public void loadNBTData(NBTTagCompound aNBT) + { + super.loadNBTData(aNBT); + this.mLossTimer = aNBT.getInteger("mLossTimer"); + this.mTemperature = aNBT.getInteger("mTemperature"); + this.mProcessingEnergy = aNBT.getInteger("mProcessingEnergy"); + this.mSteam = FluidStack.loadFluidStackFromNBT(aNBT.getCompoundTag("mSteam")); + } + + @Override +public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) + { + if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) + { + if (this.mTemperature <= 20) + { + this.mTemperature = 20; + this.mLossTimer = 0; + } + if (++this.mLossTimer > 40) + { + this.mTemperature -= 1; + this.mLossTimer = 0; + } + for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) { + if (i != aBaseMetaTileEntity.getFrontFacing()) + { + IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); + if (tTileEntity != null) + { + FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); + if (tDrained != null) + { + int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); + if (tFilledAmount > 0) { + tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true); + } + } + } + } + } + if (aTick % 10L == 0L) { + if (this.mTemperature > 100) + { + if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) + { + this.mHadNoWater = true; + } + else + { + if (this.mHadNoWater) + { + aBaseMetaTileEntity.doExplosion(2048L); + return; + } + this.mFluid.amount -= 1; + if (this.mSteam == null) { + this.mSteam = GT_ModHandler.getSteam(150L); + } else if (GT_ModHandler.isSteam(this.mSteam)) { + this.mSteam.amount += 150; + } else { + this.mSteam = GT_ModHandler.getSteam(150L); + } + } + } + else { + this.mHadNoWater = false; + } + } + if ((this.mSteam != null) && + (this.mSteam.amount > 32000)) + { + sendSound((byte)1); + this.mSteam.amount = 24000; + } + if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && + (this.mInventory[2] != null)) { + if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Coal)))) + { + this.mProcessingEnergy += 160; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); + } + } + else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Charcoal))) + { + this.mProcessingEnergy += 160; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); + } + } + else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], "fuelCoke")) + { + this.mProcessingEnergy += 640; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(2) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); + } + } + else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Lignite)))) + { + this.mProcessingEnergy += 40; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(8) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); + } + } + } + if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) + { + this.mProcessingEnergy -= 2; + this.mTemperature += 1; + } + aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); + } + } + + @Override +public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) + { + return (aIndex == 1) || (aIndex == 3); + } + + @Override +public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) + { + return aIndex == 2; + } + + @Override +public void doSound(byte aIndex, double aX, double aY, double aZ) + { + if (aIndex == 1) + { + GT_Utility.doSoundAtClient(GregTech_API.sSoundList.get(Integer.valueOf(4)), 2, 1.0F, aX, aY, aZ); + for (int l = 0; l < 8; l++) { + getBaseMetaTileEntity().getWorld().spawnParticle("largesmoke", aX - 0.5D + Math.random(), aY, aZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D); + } + } + } + + @Override +public int getCapacity() + { + return 16000; + } + + @Override +public int getTankPressure() + { + return 100; + } +} 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 new file mode 100644 index 0000000..c0ef2e3 --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java @@ -0,0 +1,181 @@ +package gregtech.common.tileentities.boilers; + +import gregtech.api.enums.Dyes; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.Textures; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.MetaTileEntity; +import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.common.gui.GT_Container_Boiler; +import gregtech.common.gui.GT_GUIContainer_Boiler; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraftforge.common.util.ForgeDirection; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.IFluidHandler; + +public class GT_MetaTileEntity_Boiler_Bronze + extends GT_MetaTileEntity_Boiler +{ + public GT_MetaTileEntity_Boiler_Bronze(int aID, String aName, String aNameRegional) + { + super(aID, aName, aNameRegional, "An early way to get Steam Power", new ITexture[0]); + } + + public GT_MetaTileEntity_Boiler_Bronze(String aName, int aTier, String aDescription, ITexture[][][] aTextures) + { + super(aName, aTier, aDescription, aTextures); + } + + @Override +public ITexture[][][] getTextureSet(ITexture[] aTextures) + { + ITexture[][][] rTextures = new ITexture[5][17][]; + for (byte i = -1; i < 16; i++) + { + rTextures[0][(i + 1)] = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_BOTTOM, Dyes.getModulation(i, Dyes._NULL.mRGBa)) }; + rTextures[1][(i + 1)] = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_TOP, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; + rTextures[2][(i + 1)] = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; + rTextures[3][(i + 1)] = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_FRONT) }; + rTextures[4][(i + 1)] = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_FRONT_ACTIVE) }; + } + return rTextures; + } + + @Override +public int maxProgresstime() + { + return 500; + } + + @Override +public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) + { + return new GT_Container_Boiler(aPlayerInventory, aBaseMetaTileEntity, 16000); + } + + @Override +public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) + { + return new GT_GUIContainer_Boiler(aPlayerInventory, aBaseMetaTileEntity, "BronzeBoiler.png", 16000); + } + + @Override +public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) + { + return new GT_MetaTileEntity_Boiler_Bronze(this.mName, this.mTier, this.mDescription, this.mTextures); + } + + @Override +public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) + { + if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) + { + if (this.mTemperature <= 20) + { + this.mTemperature = 20; + this.mLossTimer = 0; + } + if (++this.mLossTimer > 45) + { + this.mTemperature -= 1; + this.mLossTimer = 0; + } + for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) { + if (i != aBaseMetaTileEntity.getFrontFacing()) + { + IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); + if (tTileEntity != null) + { + FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); + if (tDrained != null) + { + int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); + if (tFilledAmount > 0) { + tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true); + } + } + } + } + } + if (aTick % 25L == 0L) { + if (this.mTemperature > 100) + { + if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) + { + this.mHadNoWater = true; + } + else + { + if (this.mHadNoWater) + { + aBaseMetaTileEntity.doExplosion(2048L); + return; + } + this.mFluid.amount -= 1; + if (this.mSteam == null) { + this.mSteam = GT_ModHandler.getSteam(150L); + } else if (GT_ModHandler.isSteam(this.mSteam)) { + this.mSteam.amount += 150; + } else { + this.mSteam = GT_ModHandler.getSteam(150L); + } + } + } + else { + this.mHadNoWater = false; + } + } + if ((this.mSteam != null) && + (this.mSteam.amount > 16000)) + { + sendSound((byte)1); + this.mSteam.amount = 12000; + } + if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && + (this.mInventory[2] != null)) { + if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Coal)))) + { + this.mProcessingEnergy += 160; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); + } + } + else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Charcoal)))) + { + this.mProcessingEnergy += 160; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); + } + } + else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], "fuelCoke")) + { + this.mProcessingEnergy += 640; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(2) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); + } + } + else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Lignite)))) + { + this.mProcessingEnergy += 40; + aBaseMetaTileEntity.decrStackSize(2, 1); + if (aBaseMetaTileEntity.getRandomNumber(8) == 0) { + aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); + } + } + } + if ((this.mTemperature < 500) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) + { + this.mProcessingEnergy -= 1; + this.mTemperature += 1; + } + aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); + } + } +} 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 new file mode 100644 index 0000000..e9c654f --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java @@ -0,0 +1,172 @@ +/* 1: */ package gregtech.common.tileentities.boilers; +/* 2: */ +/* 3: */ import gregtech.api.enums.Dyes; +/* 4: */ import gregtech.api.enums.Materials; +/* 5: */ import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.Textures; +/* 7: */ import gregtech.api.interfaces.ITexture; +/* 8: */ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +/* 9: */ import gregtech.api.metatileentity.MetaTileEntity; +/* 10: */ import gregtech.api.objects.GT_RenderedTexture; +/* 11: */ import gregtech.api.util.GT_ModHandler; +/* 12: */ import gregtech.api.util.GT_OreDictUnificator; +/* 13: */ import gregtech.common.gui.GT_Container_Boiler; +/* 14: */ import gregtech.common.gui.GT_GUIContainer_Boiler; +/* 15: */ import net.minecraft.entity.player.InventoryPlayer; +/* 16: */ import net.minecraftforge.common.util.ForgeDirection; +/* 17: */ import net.minecraftforge.fluids.FluidStack; +/* 18: */ import net.minecraftforge.fluids.IFluidHandler; +/* 19: */ +/* 20: */ public class GT_MetaTileEntity_Boiler_Lava +/* 21: */ extends GT_MetaTileEntity_Boiler +/* 22: */ { +/* 23: */ public GT_MetaTileEntity_Boiler_Lava(int aID, String aName, String aNameRegional) +/* 24: */ { +/* 25: 22 */ super(aID, aName, aNameRegional, "A Boiler running off Lava", new ITexture[0]); +/* 26: */ } +/* 27: */ +/* 28: */ public GT_MetaTileEntity_Boiler_Lava(String aName, int aTier, String aDescription, ITexture[][][] aTextures) +/* 29: */ { +/* 30: 26 */ super(aName, aTier, aDescription, aTextures); +/* 31: */ } +/* 32: */ +/* 33: */ @Override +public ITexture[][][] getTextureSet(ITexture[] aTextures) +/* 34: */ { +/* 35: 31 */ ITexture[][][] rTextures = new ITexture[5][17][]; +/* 36: 32 */ for (byte i = -1; i < 16; i++){ +/* 38: 33 */ rTextures[0][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_BOTTOM, Dyes.getModulation(i, Dyes._NULL.mRGBa)) }; +/* 39: 34 */ rTextures[1][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_TOP, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; +/* 40: 35 */ rTextures[2][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; +/* 41: 36 */ rTextures[3][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_LAVA_FRONT) }; +/* 42: 37 */ rTextures[4][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_LAVA_FRONT_ACTIVE) }; +/* 43: */ } +/* 44: 39 */ return rTextures; +/* 45: */ } +/* 46: */ +/* 47: */ @Override +public int maxProgresstime() +/* 48: */ { +/* 49: 42 */ return 1000; +/* 50: */ } +/* 51: */ +/* 52: */ @Override +public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 53: */ { +/* 54: 46 */ return new GT_Container_Boiler(aPlayerInventory, aBaseMetaTileEntity, 32000); +/* 55: */ } +/* 56: */ +/* 57: */ @Override +public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 58: */ { +/* 59: 51 */ return new GT_GUIContainer_Boiler(aPlayerInventory, aBaseMetaTileEntity, "SteelBoiler.png", 32000); +/* 60: */ } +/* 61: */ +/* 62: */ @Override +public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) +/* 63: */ { +/* 64: 56 */ return new GT_MetaTileEntity_Boiler_Lava(this.mName, this.mTier, this.mDescription, this.mTextures); +/* 65: */ } +/* 66: */ +/* 67: */ @Override +public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) +/* 68: */ { +/* 69: 61 */ if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) +/* 70: */ { +/* 71: 62 */ if (this.mTemperature <= 20) +/* 72: */ { +/* 73: 63 */ this.mTemperature = 20; +/* 74: 64 */ this.mLossTimer = 0; +/* 75: */ } +/* 76: 67 */ if (++this.mLossTimer > 20) +/* 77: */ { +/* 78: 68 */ this.mTemperature -= 1; +/* 79: 69 */ this.mLossTimer = 0; +/* 80: */ } +/* 81: 72 */ for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) { +/* 82: 72 */ if (i != aBaseMetaTileEntity.getFrontFacing()) +/* 83: */ { +/* 84: 73 */ IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); +/* 85: 74 */ if (tTileEntity != null) +/* 86: */ { +/* 87: 75 */ FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); +/* 88: 76 */ if (tDrained != null) +/* 89: */ { +/* 90: 77 */ int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); +/* 91: 78 */ if (tFilledAmount > 0) { +/* 92: 79 */ tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true); +/* 93: */ } +/* 94: */ } +/* 95: */ } +/* 96: */ } +/* 97: */ } +/* 98: 85 */ if (aTick % 10L == 0L) { +/* 99: 86 */ if (this.mTemperature > 100) +/* 100: */ { +/* 101: 87 */ if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) +/* 102: */ { +/* 103: 88 */ this.mHadNoWater = true; +/* 104: */ } +/* 105: */ else +/* 106: */ { +/* 107: 90 */ if (this.mHadNoWater) +/* 108: */ { +/* 109: 91 */ aBaseMetaTileEntity.doExplosion(2048L); +/* 110: 92 */ return; +/* 111: */ } +/* 112: 94 */ this.mFluid.amount -= 1; +/* 113: 95 */ if (this.mSteam == null) { +/* 114: 96 */ this.mSteam = GT_ModHandler.getSteam(300L); +/* 115: 98 */ } else if (GT_ModHandler.isSteam(this.mSteam)) { +/* 116: 99 */ this.mSteam.amount += 300; +/* 117: */ } else { +/* 118:101 */ this.mSteam = GT_ModHandler.getSteam(300L); +/* 119: */ } +/* 120: */ } +/* 121: */ } +/* 122: */ else { +/* 123:106 */ this.mHadNoWater = false; +/* 124: */ } +/* 125: */ } +/* 126:110 */ if ((this.mSteam != null) && +/* 127:111 */ (this.mSteam.amount > 32000)) +/* 128: */ { +/* 129:112 */ sendSound((byte)1); +/* 130:113 */ this.mSteam.amount = 24000; +/* 131: */ } +/* 132:117 */ if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && +/* 133:118 */ (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.bucket.get(Materials.Lava)))) +/* 134: */ { +/* 135:119 */ this.mProcessingEnergy += 1000; +/* 136:120 */ aBaseMetaTileEntity.decrStackSize(2, 1); +/* 137:121 */ aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Empty, 1L)); +/* 138: */ } +/* 139:125 */ if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % 8L == 0L)) +/* 140: */ { +/* 141:126 */ this.mProcessingEnergy -= 2; +/* 142:127 */ this.mTemperature += 1; +/* 143: */ } +/* 144:130 */ aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); +/* 145: */ } +/* 146: */ } +/* 147: */ +/* 148: */ @Override +public final int fill(FluidStack aFluid, boolean doFill) +/* 149: */ { +/* 150:136 */ if ((GT_ModHandler.isLava(aFluid)) && (this.mProcessingEnergy < 50)) +/* 151: */ { +/* 152:137 */ int tFilledAmount = Math.min(50, aFluid.amount); +/* 153:138 */ if (doFill) { +/* 154:138 */ this.mProcessingEnergy += tFilledAmount; +/* 155: */ } +/* 156:139 */ return tFilledAmount; +/* 157: */ } +/* 158:141 */ return super.fill(aFluid, doFill); +/* 159: */ } +/* 160: */ } + + +/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar + * Qualified Name: gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Lava + * JD-Core Version: 0.7.0.1 + */ \ No newline at end of file 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 new file mode 100644 index 0000000..392951a --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Solar.java @@ -0,0 +1,161 @@ +/* 1: */ package gregtech.common.tileentities.boilers; +/* 2: */ +/* 3: */ import gregtech.api.enums.Dyes; +import gregtech.api.enums.Textures; +/* 5: */ import gregtech.api.interfaces.ITexture; +/* 6: */ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +/* 7: */ import gregtech.api.metatileentity.MetaTileEntity; +/* 8: */ import gregtech.api.objects.GT_RenderedTexture; +/* 9: */ import gregtech.api.util.GT_ModHandler; +/* 10: */ import gregtech.common.gui.GT_Container_Boiler; +/* 11: */ import gregtech.common.gui.GT_GUIContainer_Boiler; +/* 12: */ import net.minecraft.entity.player.InventoryPlayer; +/* 15: */ import net.minecraftforge.common.util.ForgeDirection; +/* 16: */ import net.minecraftforge.fluids.FluidStack; +/* 17: */ import net.minecraftforge.fluids.IFluidHandler; +/* 18: */ +/* 19: */ public class GT_MetaTileEntity_Boiler_Solar +/* 20: */ extends GT_MetaTileEntity_Boiler +/* 21: */ { +/* 22: */ public GT_MetaTileEntity_Boiler_Solar(int aID, String aName, String aNameRegional) +/* 23: */ { +/* 24: 19 */ super(aID, aName, aNameRegional, "Steam Power by the Sun", new ITexture[0]); +/* 25: */ } +/* 26: */ +/* 27: */ public GT_MetaTileEntity_Boiler_Solar(String aName, int aTier, String aDescription, ITexture[][][] aTextures) +/* 28: */ { +/* 29: 23 */ super(aName, aTier, aDescription, aTextures); +/* 30: */ } +/* 31: */ +/* 32: */ @Override +public ITexture[][][] getTextureSet(ITexture[] aTextures) +/* 33: */ { +/* 34: 28 */ ITexture[][][] rTextures = new ITexture[4][17][]; +/* 35: 29 */ for (byte i = -1; i < 16; i = (byte)(i + 1)) +/* 36: */ {ITexture[] tmp0 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_BOTTOM, Dyes.getModulation(i, Dyes._NULL.mRGBa)) }; +/* 37: 30 */ rTextures[0][(i + 1)] = tmp0; +/* 38: 31 */ ITexture[] tmp1 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_TOP, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_SOLAR) }; + rTextures[1][(i + 1)] = tmp1; +/* 39: 32 */ ITexture[] tmp2 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)) }; + rTextures[2][(i + 1)] = tmp2; +/* 40: 33 */ ITexture[] tmp3 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; + rTextures[3][(i + 1)] = tmp3; +/* 41: */ } +/* 42: 35 */ return rTextures; +/* 43: */ } +/* 44: */ +/* 45: */ @Override +public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) +/* 46: */ { + return mTextures[aSide >= 2 ? ((byte)(aSide != aFacing ? 2 : 3)) : aSide][aColorIndex + 1]; +/* 48: */ } +/* 49: */ +/* 50: */ @Override +public int maxProgresstime() +/* 51: */ { +/* 52: 43 */ return 500; +/* 53: */ } +/* 54: */ +/* 55: */ @Override +public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 56: */ { +/* 57: 47 */ return new GT_Container_Boiler(aPlayerInventory, aBaseMetaTileEntity, 16000); +/* 58: */ } +/* 59: */ +/* 60: */ @Override +public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 61: */ { +/* 62: 52 */ return new GT_GUIContainer_Boiler(aPlayerInventory, aBaseMetaTileEntity, "SolarBoiler.png", 16000); +/* 63: */ } +/* 64: */ +/* 65: */ @Override +public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) +/* 66: */ { +/* 67: 57 */ return new GT_MetaTileEntity_Boiler_Solar(this.mName, this.mTier, this.mDescription, this.mTextures); +/* 68: */ } +/* 69: */ +/* 70: */ @Override +public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) +/* 71: */ { +/* 72: 62 */ if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) +/* 73: */ { +/* 74: 63 */ if (this.mTemperature <= 20) +/* 75: */ { +/* 76: 64 */ this.mTemperature = 20; +/* 77: 65 */ this.mLossTimer = 0; +/* 78: */ } +/* 79: 68 */ if (++this.mLossTimer > 45) +/* 80: */ { +/* 81: 69 */ this.mTemperature -= 1; +/* 82: 70 */ this.mLossTimer = 0; +/* 83: */ } +/* 84: 73 */ if (this.mSteam != null) +/* 85: */ { +/* 86: 74 */ byte i = aBaseMetaTileEntity.getFrontFacing(); +/* 87: 75 */ IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); +/* 88: 76 */ if (tTileEntity != null) +/* 89: */ { +/* 90: 77 */ FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); +/* 91: 78 */ if (tDrained != null) +/* 92: */ { +/* 93: 79 */ int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); +/* 94: 80 */ if (tFilledAmount > 0) { +/* 95: 81 */ tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true); +/* 96: */ } +/* 97: */ } +/* 98: */ } +/* 99: */ } +/* 100: 87 */ if (aTick % 25L == 0L) { +/* 101: 88 */ if (this.mTemperature > 100) +/* 102: */ { +/* 103: 89 */ if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) +/* 104: */ { +/* 105: 90 */ this.mHadNoWater = true; +/* 106: */ } +/* 107: */ else +/* 108: */ { +/* 109: 92 */ if (this.mHadNoWater) +/* 110: */ { +/* 111: 93 */ aBaseMetaTileEntity.doExplosion(2048L); +/* 112: 94 */ return; +/* 113: */ } +/* 114: 96 */ this.mFluid.amount -= 1; +/* 115: 97 */ if (this.mSteam == null) { +/* 116: 98 */ this.mSteam = GT_ModHandler.getSteam(150L); +/* 117:100 */ } else if (GT_ModHandler.isSteam(this.mSteam)) { +/* 118:101 */ this.mSteam.amount += 150; +/* 119: */ } else { +/* 120:103 */ this.mSteam = GT_ModHandler.getSteam(150L); +/* 121: */ } +/* 122: */ } +/* 123: */ } +/* 124: */ else { +/* 125:108 */ this.mHadNoWater = false; +/* 126: */ } +/* 127: */ } +/* 128:112 */ if ((this.mSteam != null) && +/* 129:113 */ (this.mSteam.amount > 16000)) +/* 130: */ { +/* 131:114 */ sendSound((byte)1); +/* 132:115 */ this.mSteam.amount = 12000; +/* 133: */ } +/* 134:119 */ if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (aTick % 256L == 0L) && (!aBaseMetaTileEntity.getWorld().isThundering())) +/* 135: */ { +/* 136:120 */ boolean bRain = (aBaseMetaTileEntity.getWorld().isRaining()) && (aBaseMetaTileEntity.getBiome().rainfall > 0.0F); +/* 137:121 */ this.mProcessingEnergy += (((!bRain) || (aBaseMetaTileEntity.getWorld().skylightSubtracted < 4)) && (aBaseMetaTileEntity.getSkyAtSide((byte)1)) ? 8 : (bRain) || (!aBaseMetaTileEntity.getWorld().isDaytime()) ? 1 : 0); +/* 138: */ } +/* 139:124 */ if ((this.mTemperature < 500) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) +/* 140: */ { +/* 141:125 */ this.mProcessingEnergy -= 1; +/* 142:126 */ this.mTemperature += 1; +/* 143: */ } +/* 144:129 */ aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); +/* 145: */ } +/* 146: */ } +/* 147: */ } + + +/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar + * Qualified Name: gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Solar + * JD-Core Version: 0.7.0.1 + */ \ No newline at end of file diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java new file mode 100644 index 0000000..938577e --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java @@ -0,0 +1,191 @@ +/* 1: */ package gregtech.common.tileentities.boilers; +/* 2: */ +/* 3: */ import gregtech.api.enums.Dyes; +/* 4: */ import gregtech.api.enums.Materials; +/* 5: */ import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.Textures; +/* 7: */ import gregtech.api.interfaces.ITexture; +/* 8: */ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +/* 9: */ import gregtech.api.metatileentity.MetaTileEntity; +/* 10: */ import gregtech.api.objects.GT_RenderedTexture; +/* 11: */ import gregtech.api.util.GT_ModHandler; +/* 12: */ import gregtech.api.util.GT_OreDictUnificator; +/* 13: */ import gregtech.common.gui.GT_Container_Boiler; +/* 14: */ import gregtech.common.gui.GT_GUIContainer_Boiler; +/* 15: */ import net.minecraft.entity.player.InventoryPlayer; +/* 16: */ import net.minecraftforge.common.util.ForgeDirection; +/* 17: */ import net.minecraftforge.fluids.FluidStack; +/* 18: */ import net.minecraftforge.fluids.IFluidHandler; +/* 19: */ +/* 20: */ public class GT_MetaTileEntity_Boiler_Steel +/* 21: */ extends GT_MetaTileEntity_Boiler +/* 22: */ { +/* 23: */ public GT_MetaTileEntity_Boiler_Steel(int aID, String aName, String aNameRegional) +/* 24: */ { +/* 25: 22 */ super(aID, aName, aNameRegional, "Faster than the Bronze Boiler", new ITexture[0]); +/* 26: */ } +/* 27: */ +/* 28: */ public GT_MetaTileEntity_Boiler_Steel(String aName, int aTier, String aDescription, ITexture[][][] aTextures) +/* 29: */ { +/* 30: 26 */ super(aName, aTier, aDescription, aTextures); +/* 31: */ } +/* 32: */ +/* 33: */ @Override +public ITexture[][][] getTextureSet(ITexture[] aTextures) +/* 34: */ { +/* 35: 31 */ ITexture[][][] rTextures = new ITexture[5][17][]; +/* 36: 32 */ for (byte i = -1; i < 16; i = (byte)(i + 1)) +/* 37: */ {ITexture[] tmp0 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_BOTTOM, Dyes.getModulation(i, Dyes._NULL.mRGBa)) }; +/* 38: 33 */ rTextures[0][(i + 1)] = tmp0; +/* 39: 34 */ ITexture[] tmp1 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_TOP, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; +rTextures[1][(i + 1)] = tmp1; +/* 40: 35 */ ITexture[] tmp2 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; +rTextures[2][(i + 1)] = tmp2; +/* 41: 36 */ ITexture[] tmp4 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_FRONT) }; +rTextures[3][(i + 1)] = tmp4; +/* 42: 37 */ ITexture[] tmp5 ={ new GT_RenderedTexture(Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_FRONT_ACTIVE) }; +rTextures[4][(i + 1)] = tmp5; +/* 43: */ } +/* 44: 39 */ return rTextures; +/* 45: */ } +/* 46: */ +/* 47: */ @Override +public int maxProgresstime() +/* 48: */ { +/* 49: 42 */ return 1000; +/* 50: */ } +/* 51: */ +/* 52: */ @Override +public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 53: */ { +/* 54: 46 */ return new GT_Container_Boiler(aPlayerInventory, aBaseMetaTileEntity, 32000); +/* 55: */ } +/* 56: */ +/* 57: */ @Override +public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) +/* 58: */ { +/* 59: 51 */ return new GT_GUIContainer_Boiler(aPlayerInventory, aBaseMetaTileEntity, "SteelBoiler.png", 32000); +/* 60: */ } +/* 61: */ +/* 62: */ @Override +public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) +/* 63: */ { +/* 64: 56 */ return new GT_MetaTileEntity_Boiler_Steel(this.mName, this.mTier, this.mDescription, this.mTextures); +/* 65: */ } +/* 66: */ +/* 67: */ @Override +public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) +/* 68: */ { +/* 69: 61 */ if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) +/* 70: */ { +/* 71: 62 */ if (this.mTemperature <= 20) +/* 72: */ { +/* 73: 63 */ this.mTemperature = 20; +/* 74: 64 */ this.mLossTimer = 0; +/* 75: */ } +/* 76: 67 */ if (++this.mLossTimer > 40) +/* 77: */ { +/* 78: 68 */ this.mTemperature -= 1; +/* 79: 69 */ this.mLossTimer = 0; +/* 80: */ } +/* 81: 72 */ for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) { +/* 82: 72 */ if (i != aBaseMetaTileEntity.getFrontFacing()) +/* 83: */ { +/* 84: 73 */ IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); +/* 85: 74 */ if (tTileEntity != null) +/* 86: */ { +/* 87: 75 */ FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); +/* 88: 76 */ if (tDrained != null) +/* 89: */ { +/* 90: 77 */ int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); +/* 91: 78 */ if (tFilledAmount > 0) { +/* 92: 79 */ tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true); +/* 93: */ } +/* 94: */ } +/* 95: */ } +/* 96: */ } +/* 97: */ } +/* 98: 85 */ if (aTick % 10L == 0L) { +/* 99: 86 */ if (this.mTemperature > 100) +/* 100: */ { +/* 101: 87 */ if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) +/* 102: */ { +/* 103: 88 */ this.mHadNoWater = true; +/* 104: */ } +/* 105: */ else +/* 106: */ { +/* 107: 90 */ if (this.mHadNoWater) +/* 108: */ { +/* 109: 91 */ aBaseMetaTileEntity.doExplosion(2048L); +/* 110: 92 */ return; +/* 111: */ } +/* 112: 94 */ this.mFluid.amount -= 1; +/* 113: 95 */ if (this.mSteam == null) { +/* 114: 96 */ this.mSteam = GT_ModHandler.getSteam(150L); +/* 115: 98 */ } else if (GT_ModHandler.isSteam(this.mSteam)) { +/* 116: 99 */ this.mSteam.amount += 150; +/* 117: */ } else { +/* 118:101 */ this.mSteam = GT_ModHandler.getSteam(150L); +/* 119: */ } +/* 120: */ } +/* 121: */ } +/* 122: */ else { +/* 123:106 */ this.mHadNoWater = false; +/* 124: */ } +/* 125: */ } +/* 126:110 */ if ((this.mSteam != null) && +/* 127:111 */ (this.mSteam.amount > 32000)) +/* 128: */ { +/* 129:112 */ sendSound((byte)1); +/* 130:113 */ this.mSteam.amount = 24000; +/* 131: */ } +/* 132:117 */ if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && +/* 133:118 */ (this.mInventory[2] != null)) { +/* 134:119 */ if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Coal)))) +/* 135: */ { +/* 136:123 */ this.mProcessingEnergy += 160; +/* 137:124 */ aBaseMetaTileEntity.decrStackSize(2, 1); +/* 138:125 */ if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { +/* 139:126 */ aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); +/* 140: */ } +/* 141: */ } +/* 142:129 */ else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Charcoal)))) +/* 143: */ { +/* 144:133 */ this.mProcessingEnergy += 160; +/* 145:134 */ aBaseMetaTileEntity.decrStackSize(2, 1); +/* 146:135 */ if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { +/* 147:136 */ aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); +/* 148: */ } +/* 149: */ } +/* 150:138 */ else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], "fuelCoke")) +/* 151: */ { +/* 152:139 */ this.mProcessingEnergy += 640; +/* 153:140 */ aBaseMetaTileEntity.decrStackSize(2, 1); +/* 154:141 */ if (aBaseMetaTileEntity.getRandomNumber(2) == 0) { +/* 155:142 */ aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); +/* 156: */ } +/* 157: */ } +/* 158:144 */ else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Lignite)))) +/* 159: */ { +/* 160:148 */ this.mProcessingEnergy += 40; +/* 161:149 */ aBaseMetaTileEntity.decrStackSize(2, 1); +/* 162:150 */ if (aBaseMetaTileEntity.getRandomNumber(8) == 0) { +/* 163:151 */ aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); +/* 164: */ } +/* 165: */ } +/* 166: */ } +/* 167:157 */ if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) +/* 168: */ { +/* 169:158 */ this.mProcessingEnergy -= 2; +/* 170:159 */ this.mTemperature += 1; +/* 171: */ } +/* 172:162 */ aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); +/* 173: */ } +/* 174: */ } +/* 175: */ } + + +/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar + * Qualified Name: gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Steel + * JD-Core Version: 0.7.0.1 + */ \ No newline at end of file -- cgit v1.2.3