Tooltips have more info on Steam and pollution, adjusted pollution rates
Boilers tooltips now explicitly state the amount of Steam produced per second. Gas Turbine tooltips now explicitly state how much steam is needed for them to run at full capacity. Machine tooltips now explicitly state how much Pollution they produce per second. Adjusted machine pollution values to have them align better. Diesel Generators / Engines now go 40, 80, 160, 320 Gas Turbines now go 20, 40, 80, 160 Large Boiler tooltips now mention the amount of time needed to heat up Formatted the source code for the Cleanroom Fixed a bug that caused Diesel Generators and Gas Turbines to not have a tooltip.
This commit is contained in:
parent
234c51ac20
commit
d79721085e
21 changed files with 248 additions and 169 deletions
|
@ -22,6 +22,10 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
|
|||
super(aID, aName, aNameRegional, aTier, 3, aDescription, aTextures);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_BasicGenerator(int aID, String aName, String aNameRegional, int aTier, String[] aDescription, ITexture... aTextures) {
|
||||
super(aID, aName, aNameRegional, aTier, 3, aDescription, aTextures);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_BasicGenerator(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
|
||||
super(aName, aTier, 3, aDescription, aTextures);
|
||||
}
|
||||
|
@ -56,7 +60,7 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
|
|||
@Override
|
||||
public String[] getDescription() {
|
||||
String[] desc = new String[mDescription.length + 1];
|
||||
System.arraycopy(mDescription, 0, desc, 0, desc.length);
|
||||
System.arraycopy(mDescription, 0, desc, 0, mDescription.length);
|
||||
desc[mDescription.length] = "Fuel Efficiency: " + getEfficiency() + "%";
|
||||
return desc;
|
||||
}
|
||||
|
@ -186,7 +190,6 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
|
|||
@Override
|
||||
public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
|
||||
if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork() && aTick % 10 == 0) {
|
||||
long tProducedEU = 0;
|
||||
if (mFluid == null) {
|
||||
if (aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + getMinimumStoredEU()) {
|
||||
mInventory[getStackDisplaySlot()] = null;
|
||||
|
@ -200,7 +203,8 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
|
|||
if (tFuelValue > 0 && tConsumed > 0 && mFluid.amount > tConsumed) {
|
||||
long tFluidAmountToUse = Math.min(mFluid.amount / tConsumed, (maxEUStore() - aBaseMetaTileEntity.getUniversalEnergyStored()) / tFuelValue);
|
||||
if (tFluidAmountToUse > 0 && aBaseMetaTileEntity.increaseStoredEnergyUnits(tFluidAmountToUse * tFuelValue, true)) {
|
||||
tProducedEU = tFluidAmountToUse * tFuelValue;
|
||||
GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(), new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()),
|
||||
10 * getPollution());
|
||||
mFluid.amount -= tFluidAmountToUse * tConsumed;
|
||||
}
|
||||
}
|
||||
|
@ -212,14 +216,11 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity
|
|||
if (aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), tEmptyContainer)) {
|
||||
aBaseMetaTileEntity.increaseStoredEnergyUnits(tFuelValue, true);
|
||||
aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
|
||||
tProducedEU = tFuelValue;
|
||||
GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(), new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()),
|
||||
10 * getPollution());
|
||||
}
|
||||
}
|
||||
}
|
||||
if(tProducedEU>0&&getPollution()>0){
|
||||
GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(), new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()),
|
||||
(int) ((tProducedEU * getPollution()/(500*mTier))+1));
|
||||
}
|
||||
}
|
||||
|
||||
if (aBaseMetaTileEntity.isServerSide())
|
||||
|
|
|
@ -27,6 +27,10 @@ public abstract class GT_MetaTileEntity_BasicTank extends GT_MetaTileEntity_Tier
|
|||
super(aID, aName, aNameRegional, aTier, aInvSlotCount, aDescription, aTextures);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_BasicTank(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String[] aDescription, ITexture... aTextures) {
|
||||
super(aID, aName, aNameRegional, aTier, aInvSlotCount, aDescription, aTextures);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_BasicTank(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
|
||||
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
|
||||
}
|
||||
|
|
|
@ -31,6 +31,16 @@ public abstract class GT_MetaTileEntity_TieredMachineBlock extends MetaTileEntit
|
|||
else mTextures = null;
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_TieredMachineBlock(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String[] aDescription, ITexture... aTextures) {
|
||||
super(aID, aName, aNameRegional, aInvSlotCount);
|
||||
mTier = (byte) Math.max(0, Math.min(aTier, 9));
|
||||
mDescription = aDescription;
|
||||
|
||||
// must always be the last call!
|
||||
if (GT.isClientSide()) mTextures = getTextureSet(aTextures);
|
||||
else mTextures = null;
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_TieredMachineBlock(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
|
||||
super(aName, aInvSlotCount);
|
||||
mTier = (byte) aTier;
|
||||
|
|
|
@ -31,6 +31,10 @@ public abstract class GT_MetaTileEntity_Boiler
|
|||
super(aID, aName, aNameRegional, 0, 4, aDescription, aTextures);
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
|
|
|
@ -22,7 +22,10 @@ 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]);
|
||||
super(aID, aName, aNameRegional, new String[]{
|
||||
"An early way to get Steam Power",
|
||||
"Produces 120L of Steam per second",
|
||||
"Causes 20 Pollution per second"}, new ITexture[0]);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_Boiler_Bronze(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
|
||||
|
|
|
@ -22,7 +22,10 @@ import net.minecraftforge.fluids.IFluidHandler;
|
|||
public class GT_MetaTileEntity_Boiler_Lava
|
||||
extends GT_MetaTileEntity_Boiler {
|
||||
public GT_MetaTileEntity_Boiler_Lava(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional, "A Boiler running off Lava", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, new String[]{
|
||||
"A Boiler running off Lava",
|
||||
"Produces 600L of Steam per second",
|
||||
"Causes 20 Pollution per second"}, new ITexture[0]);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_Boiler_Lava(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
|
||||
|
|
|
@ -18,7 +18,12 @@ import net.minecraftforge.fluids.IFluidHandler;
|
|||
public class GT_MetaTileEntity_Boiler_Solar
|
||||
extends GT_MetaTileEntity_Boiler {
|
||||
public GT_MetaTileEntity_Boiler_Solar(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional, "Steam Power by the Sun", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, new String[]{
|
||||
"Steam Power by the Sun",
|
||||
"Produces 120L of Steam per second",
|
||||
"Calcifies over time, reducing Steam output to 40L/s",
|
||||
"Break and replace to decalcify"},
|
||||
new ITexture[0]);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_Boiler_Solar(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
|
||||
|
|
|
@ -22,7 +22,10 @@ import net.minecraftforge.fluids.IFluidHandler;
|
|||
public class GT_MetaTileEntity_Boiler_Steel
|
||||
extends GT_MetaTileEntity_Boiler {
|
||||
public GT_MetaTileEntity_Boiler_Steel(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional, "Faster than the Bronze Boiler", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, new String[]{
|
||||
"Faster than the Bronze Boiler",
|
||||
"Produces 300L of Steam per second",
|
||||
"Causes 20 Pollution per second"}, new ITexture[0]);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_Boiler_Steel(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
|
||||
|
|
|
@ -18,10 +18,15 @@ import net.minecraft.item.ItemStack;
|
|||
public class GT_MetaTileEntity_DieselGenerator
|
||||
extends GT_MetaTileEntity_BasicGenerator {
|
||||
|
||||
public static final int BASE_POLLUTION = 2;
|
||||
|
||||
public int mEfficiency;
|
||||
|
||||
public GT_MetaTileEntity_DieselGenerator(int aID, String aName, String aNameRegional, int aTier) {
|
||||
super(aID, aName, aNameRegional, aTier, "Requires liquid Fuel", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, aTier, new String[]{
|
||||
"Requires liquid Fuel",
|
||||
"Causes " + (int) (20 * BASE_POLLUTION * Math.pow(2, aTier - 1)) + " Pollution per second"},
|
||||
new ITexture[0]);
|
||||
onConfigLoad();
|
||||
}
|
||||
|
||||
|
@ -110,6 +115,6 @@ public class GT_MetaTileEntity_DieselGenerator
|
|||
|
||||
@Override
|
||||
public int getPollution() {
|
||||
return 10;
|
||||
return (int) (GT_MetaTileEntity_DieselGenerator.BASE_POLLUTION * Math.pow(2, mTier - 1));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,10 +13,15 @@ import gregtech.api.util.GT_Recipe;
|
|||
public class GT_MetaTileEntity_GasTurbine
|
||||
extends GT_MetaTileEntity_BasicGenerator {
|
||||
|
||||
public static final int BASE_POLLUTION = 1;
|
||||
|
||||
public int mEfficiency;
|
||||
|
||||
|
||||
public GT_MetaTileEntity_GasTurbine(int aID, String aName, String aNameRegional, int aTier) {
|
||||
super(aID, aName, aNameRegional, aTier, "Requires flammable Gasses", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, aTier, new String[]{
|
||||
"Requires flammable Gasses",
|
||||
"Causes " + (int) (20 * BASE_POLLUTION * Math.pow(2, aTier - 1)) + " Pollution per second"});
|
||||
onConfigLoad();
|
||||
}
|
||||
|
||||
|
@ -97,6 +102,6 @@ public class GT_MetaTileEntity_GasTurbine
|
|||
|
||||
@Override
|
||||
public int getPollution() {
|
||||
return 5;
|
||||
return (int) (GT_MetaTileEntity_GasTurbine.BASE_POLLUTION * Math.pow(2, mTier - 1));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,9 @@ public class GT_MetaTileEntity_SteamTurbine extends GT_MetaTileEntity_BasicGener
|
|||
public int mEfficiency;
|
||||
|
||||
public GT_MetaTileEntity_SteamTurbine(int aID, String aName, String aNameRegional, int aTier) {
|
||||
super(aID, aName, aNameRegional, aTier, "Requires Steam to run", new ITexture[0]);
|
||||
super(aID, aName, aNameRegional, aTier, new String[]{
|
||||
"Converts Steam into EU",
|
||||
"Base rate: 2L of Steam -> 1 EU"}, new ITexture[0]);
|
||||
onConfigLoad();
|
||||
}
|
||||
|
||||
|
@ -45,9 +47,11 @@ public class GT_MetaTileEntity_SteamTurbine extends GT_MetaTileEntity_BasicGener
|
|||
|
||||
@Override
|
||||
public String[] getDescription() {
|
||||
String[] desc = new String[mDescription.length + 1];
|
||||
String[] desc = new String[mDescription.length + 2];
|
||||
System.arraycopy(mDescription, 0, desc, 0, mDescription.length);
|
||||
desc[mDescription.length] = "Fuel Efficiency: " + (600 / getEfficiency()) + "%";
|
||||
desc[mDescription.length + 1] = String.format("Consumes up to %sL of Steam per second",
|
||||
(int) (4000 * (8 * Math.pow(4, mTier) + Math.pow(2, mTier)) / (600 / getEfficiency())));
|
||||
return desc;
|
||||
}
|
||||
|
||||
|
|
|
@ -50,7 +50,8 @@ public class GT_MetaTileEntity_BronzeBlastFurnace
|
|||
"Controller Block for the Bronze Blast Furnace",
|
||||
"How to get your first Steel",
|
||||
"Size(WxHxD): 3x4x3 (Hollow, with opening on top)",
|
||||
"Bronze Plated Bricks for the rest (32 at least!)"};
|
||||
"Bronze Plated Bricks for the rest (32 at least!)",
|
||||
"Causes 50 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
|
@ -44,7 +44,8 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock
|
|||
"11x1x11 of Bricks (Bottom layer only)",
|
||||
"11x5x11 of Logs (Above bottom Brick layer)",
|
||||
"Only grass/dirt can touch Log blocks",
|
||||
"No air between logs allowed"};
|
||||
"No air between logs allowed",
|
||||
"Causes 100 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
|
@ -16,171 +16,188 @@ import net.minecraft.entity.player.InventoryPlayer;
|
|||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_MultiBlockBase {
|
||||
private int mHeatingCapacity = 0;
|
||||
private int mHeatingCapacity = 0;
|
||||
|
||||
public GT_MetaTileEntity_Cleanroom(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional);
|
||||
}
|
||||
public GT_MetaTileEntity_Cleanroom(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_Cleanroom(String aName) {
|
||||
super(aName);
|
||||
}
|
||||
public GT_MetaTileEntity_Cleanroom(String aName) {
|
||||
super(aName);
|
||||
}
|
||||
|
||||
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
|
||||
return new GT_MetaTileEntity_Cleanroom(this.mName);
|
||||
}
|
||||
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
|
||||
return new GT_MetaTileEntity_Cleanroom(this.mName);
|
||||
}
|
||||
|
||||
public String[] getDescription() {
|
||||
return new String[]{
|
||||
"Controller Block for the Cleanroom",
|
||||
"Min(WxHxD): 3x3x3 (Hollow), Max(WxHxD): 15x15x15 (Hollow)",
|
||||
"Controller (Top center), Walls Plascrete",
|
||||
"Top besides contoller and corners filter casings",
|
||||
"1 Reinforced Door",
|
||||
"1x Energy Hatch, 1x Maintainance Hatch",
|
||||
"up to 10 Machine Hull to transfer Items&Energy inside",
|
||||
""};
|
||||
}
|
||||
public String[] getDescription() {
|
||||
return new String[] {
|
||||
"Controller Block for the Cleanroom",
|
||||
"Min(WxHxD): 3x3x3 (Hollow), Max(WxHxD): 15x15x15 (Hollow)",
|
||||
"Controller (Top center), Walls Plascrete",
|
||||
"Top besides contoller and corners filter casings",
|
||||
"1 Reinforced Door",
|
||||
"1x Energy Hatch, 1x Maintainance Hatch",
|
||||
"up to 10 Machine Hull to transfer Items & Energy inside"};
|
||||
}
|
||||
|
||||
public boolean checkRecipe(ItemStack aStack) {
|
||||
this.mEfficiencyIncrease = 100;
|
||||
this.mMaxProgresstime = 100;
|
||||
this.mEUt = -4;
|
||||
return true;
|
||||
}
|
||||
public boolean checkRecipe(ItemStack aStack) {
|
||||
this.mEfficiencyIncrease = 100;
|
||||
this.mMaxProgresstime = 100;
|
||||
this.mEUt = -4;
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
|
||||
int x=1;
|
||||
int z=1;
|
||||
int y=1;
|
||||
int mDoorCount=0;
|
||||
int mHullCount=0;
|
||||
int mPlascreteCount=0;
|
||||
boolean doorState=false;
|
||||
mUpdate = 100;
|
||||
for(int i = 1;i<8;i++){
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(i, 0, 0);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(i, 0, 0);
|
||||
if(tBlock != GregTech_API.sBlockCasings3 || tMeta != 11){
|
||||
if(tBlock ==GregTech_API.sBlockReinforced || tMeta == 2){
|
||||
x=i;
|
||||
z=i;
|
||||
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
|
||||
int x = 1;
|
||||
int z = 1;
|
||||
int y = 1;
|
||||
int mDoorCount = 0;
|
||||
int mHullCount = 0;
|
||||
int mPlascreteCount = 0;
|
||||
boolean doorState = false;
|
||||
mUpdate = 100;
|
||||
for (int i = 1; i < 8; i++) {
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(i, 0, 0);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(i, 0, 0);
|
||||
if (tBlock != GregTech_API.sBlockCasings3 || tMeta != 11) {
|
||||
if (tBlock == GregTech_API.sBlockReinforced || tMeta == 2) {
|
||||
x = i;
|
||||
z = i;
|
||||
break;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (int i = -1; i > -16; i--) {
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(x, i, z);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(x, i, z);
|
||||
if (tBlock != GregTech_API.sBlockReinforced || tMeta != 2) {
|
||||
y = i + 1;
|
||||
break;
|
||||
}else{return false;}
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int i = -1; i>-16;i--){
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(x, i, z);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(x, i, z);
|
||||
if(tBlock != GregTech_API.sBlockReinforced || tMeta != 2){
|
||||
y = i+1;
|
||||
break;
|
||||
if (y > -2) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if(y>-2){return false;}
|
||||
for(int dX=-x;dX<=x;dX++){
|
||||
for(int dZ=-z;dZ<=z;dZ++){
|
||||
for(int dY=0;dY>=y;dY--){
|
||||
if(dX==-x||dX==x||dY==-y||dY==y||dZ==-z||dZ==z){
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(dX, dY, dZ);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(dX, dY, dZ);
|
||||
if(y==0){
|
||||
if(dX==-x||dX==x||dZ==-z||dZ==z){
|
||||
if(tBlock!=GregTech_API.sBlockReinforced||tMeta!=2){return false;}
|
||||
}else if(dX==0&&dZ==0){
|
||||
}else {
|
||||
if(tBlock!=GregTech_API.sBlockCasings3||tMeta!=11){return false;}
|
||||
}
|
||||
}else if(tBlock==GregTech_API.sBlockReinforced&&tMeta==2){
|
||||
mPlascreteCount++;
|
||||
}else{
|
||||
IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(dX, dY, dZ);
|
||||
if((!addMaintenanceToMachineList(tTileEntity, 82)) && (!addEnergyInputToMachineList(tTileEntity, 82))){
|
||||
if(tBlock instanceof ic2.core.block.BlockIC2Door){
|
||||
if((tMeta&8)==0){
|
||||
doorState=(Math.abs(dX)>Math.abs(dZ)==((tMeta&1)!=0))!=((tMeta&4)!=0);
|
||||
for (int dX = -x; dX <= x; dX++) {
|
||||
for (int dZ = -z; dZ <= z; dZ++) {
|
||||
for (int dY = 0; dY >= y; dY--) {
|
||||
if (dX == -x || dX == x || dY == -y || dY == y || dZ == -z || dZ == z) {
|
||||
Block tBlock = aBaseMetaTileEntity.getBlockOffset(dX, dY, dZ);
|
||||
int tMeta = aBaseMetaTileEntity.getMetaIDOffset(dX, dY, dZ);
|
||||
if (y == 0) {
|
||||
if (dX == -x || dX == x || dZ == -z || dZ == z) {
|
||||
if (tBlock != GregTech_API.sBlockReinforced || tMeta != 2) {
|
||||
return false;
|
||||
}
|
||||
} else if (dX == 0 && dZ == 0) {
|
||||
} else {
|
||||
if (tBlock != GregTech_API.sBlockCasings3 || tMeta != 11) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
mDoorCount++;
|
||||
}else{
|
||||
if (tTileEntity == null) {
|
||||
{return false;}
|
||||
}
|
||||
IMetaTileEntity aMetaTileEntity = tTileEntity.getMetaTileEntity();
|
||||
if (aMetaTileEntity == null) {return false;}
|
||||
if (aMetaTileEntity instanceof GT_MetaTileEntity_BasicHull){mHullCount++;
|
||||
}else {return false;}
|
||||
} else if (tBlock == GregTech_API.sBlockReinforced && tMeta == 2) {
|
||||
mPlascreteCount++;
|
||||
} else {
|
||||
IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(dX, dY, dZ);
|
||||
if ((!addMaintenanceToMachineList(tTileEntity, 82)) && (!addEnergyInputToMachineList(tTileEntity, 82))) {
|
||||
if (tBlock instanceof ic2.core.block.BlockIC2Door) {
|
||||
if ((tMeta & 8) == 0) {
|
||||
doorState = (Math.abs(dX) > Math.abs(dZ) == ((tMeta & 1) != 0)) != ((tMeta & 4) != 0);
|
||||
}
|
||||
mDoorCount++;
|
||||
} else {
|
||||
if (tTileEntity == null) {
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
IMetaTileEntity aMetaTileEntity = tTileEntity.getMetaTileEntity();
|
||||
if (aMetaTileEntity == null) {
|
||||
return false;
|
||||
}
|
||||
if (aMetaTileEntity instanceof GT_MetaTileEntity_BasicHull) {
|
||||
mHullCount++;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (mMaintenanceHatches.size() != 1 || mEnergyHatches.size() != 1 || mDoorCount != 2 || mHullCount > 10) {
|
||||
return false;
|
||||
}
|
||||
for (int dX = -x + 1; dX <= x - 1; dX++) {
|
||||
for (int dZ = -z + 1; dZ <= z - 1; dZ++) {
|
||||
for (int dY = -1; dY >= y + 1; dY--) {
|
||||
IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(dX, dY, dZ);
|
||||
if (tTileEntity != null) {
|
||||
IMetaTileEntity aMetaTileEntity = tTileEntity.getMetaTileEntity();
|
||||
if (aMetaTileEntity != null && aMetaTileEntity instanceof GT_MetaTileEntity_BasicMachine_GT_Recipe) {
|
||||
((GT_MetaTileEntity_BasicMachine_GT_Recipe) aMetaTileEntity).mCleanroom = this;
|
||||
}
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(mMaintenanceHatches.size()!=1||mEnergyHatches.size()!=1||mDoorCount!=2||mHullCount>10){return false;}
|
||||
for(int dX=-x+1;dX<=x-1;dX++){
|
||||
for(int dZ=-z+1;dZ<=z-1;dZ++){
|
||||
for(int dY=-1;dY>=y+1;dY--){
|
||||
IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(dX, dY, dZ);
|
||||
if(tTileEntity!=null){
|
||||
IMetaTileEntity aMetaTileEntity = tTileEntity.getMetaTileEntity();
|
||||
if (aMetaTileEntity != null && aMetaTileEntity instanceof GT_MetaTileEntity_BasicMachine_GT_Recipe){
|
||||
((GT_MetaTileEntity_BasicMachine_GT_Recipe)aMetaTileEntity).mCleanroom = this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (doorState) {
|
||||
mEfficiency = Math.max(0, mEfficiency - 200);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
if(doorState){
|
||||
mEfficiency=Math.max(0,mEfficiency-200);
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
if (aSide == 0 || aSide == 1) {
|
||||
return new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE),
|
||||
new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_TOP_CLEANROOM_ACTIVE : Textures.BlockIcons.OVERLAY_TOP_CLEANROOM) };
|
||||
|
||||
}
|
||||
return new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE) };
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
|
||||
return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png");
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
if (aSide == 0 || aSide == 1) {
|
||||
return new ITexture[]{new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE), new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_TOP_CLEANROOM_ACTIVE : Textures.BlockIcons.OVERLAY_TOP_CLEANROOM)};
|
||||
public GT_Recipe.GT_Recipe_Map getRecipeMap() {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
return new ITexture[]{new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE)};
|
||||
}
|
||||
public boolean isCorrectMachinePart(ItemStack aStack) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
|
||||
return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png");
|
||||
}
|
||||
public boolean isFacingValid(byte aFacing) {
|
||||
return aFacing > 1;
|
||||
}
|
||||
|
||||
public GT_Recipe.GT_Recipe_Map getRecipeMap() {
|
||||
return null;
|
||||
}
|
||||
public int getMaxEfficiency(ItemStack aStack) {
|
||||
return 10000;
|
||||
}
|
||||
|
||||
public boolean isCorrectMachinePart(ItemStack aStack) {
|
||||
return true;
|
||||
}
|
||||
public int getPollutionPerTick(ItemStack aStack) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public boolean isFacingValid(byte aFacing) {
|
||||
return aFacing > 1;
|
||||
}
|
||||
public int getDamageToComponent(ItemStack aStack) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getMaxEfficiency(ItemStack aStack) {
|
||||
return 10000;
|
||||
}
|
||||
public int getAmountOfOutputs() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getPollutionPerTick(ItemStack aStack) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getDamageToComponent(ItemStack aStack) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getAmountOfOutputs() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public boolean explodesOnComponentBreak(ItemStack aStack) {
|
||||
return false;
|
||||
}
|
||||
public boolean explodesOnComponentBreak(ItemStack aStack) {
|
||||
return false;
|
||||
}
|
||||
}
|
|
@ -31,6 +31,7 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_MultiBlock
|
|||
public GT_MetaTileEntity_DieselEngine(int aID, String aName, String aNameRegional) {
|
||||
super(aID, aName, aNameRegional);
|
||||
}
|
||||
|
||||
public GT_MetaTileEntity_DieselEngine(String aName) {
|
||||
super(aName);
|
||||
}
|
||||
|
@ -48,7 +49,9 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_MultiBlock
|
|||
"1x Dynamo Hatch (back centered)",
|
||||
"Engine Intake Casings not obstructed in front (only air blocks)",
|
||||
"Supply Diesel Fuel and Lubricant to run. Supply Oxygen to boost output (optional).",
|
||||
"2048EU/t default output, 6144EU/t boosted output"};
|
||||
"Default: Produces 2048EU/t at 100% efficiency",
|
||||
"Boosted: Produces 6144EU/t at 150% efficiency",
|
||||
"Causes 320 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
@ -216,8 +219,9 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_MultiBlock
|
|||
|
||||
@Override
|
||||
public int getPollutionPerTick(ItemStack aStack) {
|
||||
return 15;
|
||||
return 16;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean explodesOnComponentBreak(ItemStack aStack) {
|
||||
return true;
|
||||
|
|
|
@ -44,7 +44,8 @@ public class GT_MetaTileEntity_ElectricBlastFurnace
|
|||
"1x Energy Hatch (Any bottom layer casing)",
|
||||
"1x Maintenance Hatch (Any bottom layer casing)",
|
||||
"1x Muffler Hatch (Top middle)",
|
||||
"Heat Proof Machine Casings for the rest"};
|
||||
"Heat Proof Machine Casings for the rest",
|
||||
"Causes 100 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
|
@ -41,7 +41,8 @@ public class GT_MetaTileEntity_ImplosionCompressor
|
|||
"1x Maintenance Hatch (Any casing)",
|
||||
"1x Muffler Hatch (Any casing)",
|
||||
"1x Energy Hatch (Any casing)",
|
||||
"Solid Steel Casings for the rest (16 at least!)"};
|
||||
"Solid Steel Casings for the rest (16 at least!)",
|
||||
"Causes 2000 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
|
@ -36,7 +36,8 @@ public abstract class GT_MetaTileEntity_LargeBoiler
|
|||
public String[] getDescription() {
|
||||
return new String[]{
|
||||
"Controller Block for the Large Boiler",
|
||||
"Produces "+(getEUt()*40)*(runtimeBoost(20)/20f)+"L of Steam with 1 Coal in "+runtimeBoost(20)+" ticks",
|
||||
"Produces "+(getEUt()*40)*(runtimeBoost(20)/20f)+"L of Steam with 1 Coal at "+getEUt()* 40+"L/s",
|
||||
"A programmed circuit in the main block throttles the boiler (-1000L/s per config)",
|
||||
"Size(WxHxD): 3x5x3, Controller (Front middle in Fireboxes)",
|
||||
"3x1x3 of Fire Boxes (Bottom layer, Min 3)",
|
||||
"3x4x3 of Casings (Above Fireboxes, hollow, Min 24!)",
|
||||
|
@ -46,7 +47,9 @@ public abstract class GT_MetaTileEntity_LargeBoiler
|
|||
"1x Output Hatch (Any Casing)",
|
||||
"1x Maintenance Hatch (Any Firebox)",
|
||||
"1x Muffler Hatch (Any Firebox)",
|
||||
"Diesel fuels have 1/4 efficiency"};
|
||||
"Diesel fuels have 1/4 efficiency",
|
||||
String.format("Takes %.2f seconds to heat up", 500.0 / getEfficiencyIncrease()),
|
||||
"Causes up to 360 Pollution per second"};
|
||||
}
|
||||
|
||||
public abstract Block getCasingBlock();
|
||||
|
@ -239,7 +242,8 @@ public abstract class GT_MetaTileEntity_LargeBoiler
|
|||
}
|
||||
|
||||
public int getPollutionPerTick(ItemStack aStack) {
|
||||
return 12;
|
||||
int adjustedEUOutput = Math.max(25, getEUt() - 25 * integratedCircuitConfig);
|
||||
return Math.max(1, 12 * adjustedEUOutput / getEUt());
|
||||
}
|
||||
|
||||
public int getDamageToComponent(ItemStack aStack) {
|
||||
|
|
|
@ -42,7 +42,8 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT
|
|||
"1x Dynamo Hatch (Back centered)",
|
||||
"Stainless Steel Turbine Casings for the rest (24 at least!)",
|
||||
"Needs a Turbine Item (Inside controller GUI)",
|
||||
"Output depending on Rotor: 102-6720EU/t"};
|
||||
"Output depending on Rotor: 102-6720EU/t",
|
||||
"Causes 160 Pollution per second"};
|
||||
}
|
||||
|
||||
public int getFuelValue(FluidStack aLiquid) {
|
||||
|
|
|
@ -45,7 +45,8 @@ public class GT_MetaTileEntity_MultiFurnace
|
|||
"1x Maintenance Hatch (One of bottom)",
|
||||
"1x Muffler Hatch (Top middle)",
|
||||
"1x Energy Hatch (One of bottom)",
|
||||
"Heat Proof Machine Casings for the rest",};
|
||||
"Heat Proof Machine Casings for the rest",
|
||||
"Causes 100 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
|
@ -39,7 +39,8 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlock
|
|||
"1x Maintenance Hatch (Any bottom layer casing)",
|
||||
"1x Muffler Hatch (Centered 3x1x3 area in Top layer)",
|
||||
"1x Energy Hatch (Any bottom layer casing)",
|
||||
"ULV Machine Casings for the rest (60 at least!)"};
|
||||
"ULV Machine Casings for the rest (60 at least!)",
|
||||
"Causes 400 Pollution per second"};
|
||||
}
|
||||
|
||||
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
|
||||
|
|
Loading…
Reference in a new issue