Update 5.08.17

Large Turbines, Heat exchanger, player detector
This commit is contained in:
Blood-Asp 2015-05-25 23:04:14 +02:00
parent a102e63891
commit adb4a5eef6
27 changed files with 943 additions and 114 deletions

View file

@ -261,7 +261,7 @@ public enum Element {
$Uuo (-118,-176, 0, -1, null , "Anti-Ununoctium" , false),
$Ma ( 0, 0,-100, -1, null , "Anti-Magic" , false),
$Nt (0,-100000, 0, -1, null , "Anti-Neutronium" , false);
$Nt (0, -10000, 0, -1, null , "Anti-Neutronium" , false);
public static Element get(String aMaterialName) {
Object tObject = GT_Utility.getFieldContent(Element.class, aMaterialName, false, false);

View file

@ -646,13 +646,13 @@ public enum ItemList implements IItemContainer {
ZPM2, Quantum_Tank_LV,Quantum_Tank_MV,Quantum_Tank_HV,Quantum_Tank_EV,Quantum_Tank_IV, Quantum_Chest_LV, Quantum_Chest_MV, Quantum_Chest_HV, Quantum_Chest_EV, Quantum_Chest_IV,
NULL, Cover_RedstoneTransmitterExternal,Cover_RedstoneTransmitterInternal,Cover_RedstoneReceiverExternal,Cover_RedstoneReceiverInternal,
LargeTurbine,
LargeSteamTurbine,
Ingot_Heavy1,Ingot_Heavy2,Ingot_Heavy3,
Pump_LV, Pump_MV, Pump_HV, Pump_EV, Pump_IV,
Teleporter,
Cover_NeedsMaintainance,
Casing_Turbine,
MobRep_LV,MobRep_MV,MobRep_HV,MobRep_EV,MobRep_IV;
MobRep_LV,MobRep_MV,MobRep_HV,MobRep_EV,MobRep_IV, LargeGasTurbine, LargeHPSteamTurbine, LargePlasmaTurbine, Cover_PlayerDetector, Machine_Multi_HeatExchanger;
public static final ItemList[]
DYE_ONLY_ITEMS = {Color_00, Color_01, Color_02, Color_03, Color_04, Color_05, Color_06, Color_07, Color_08, Color_09, Color_10, Color_11, Color_12, Color_13, Color_14, Color_15}

View file

@ -47,7 +47,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Boron ( 9, TextureSet.SET_DULL , 1.0F, 0, 2, 1 |8 |32 , 250, 250, 250, 0, "Boron" , 0, 0, 2349, 0, F, F, 1, 1, 1, Dyes.dyeWhite , Element.B , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 3))),
Caesium ( 62, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Caesium" , 0, 0, 301, 0, F, F, 4, 1, 1, Dyes._NULL , Element.Cs , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Calcium ( 26, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |32 , 255, 245, 245, 0, "Calcium" , 0, 0, 1115, 0, F, F, 4, 1, 1, Dyes.dyePink , Element.Ca , Arrays.asList(new TC_AspectStack(TC_Aspects.SANO, 1), new TC_AspectStack(TC_Aspects.TUTAMEN, 1))),
Carbon ( 10, TextureSet.SET_DULL , 1.0F, 64, 2, 1 |32|64|128 , 20, 20, 20, 0, "Carbon" , 0, 0, 3800, 0, F, F, 2, 1, 1, Dyes.dyeBlack , Element.C , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.IGNIS, 1))),
Carbon ( 10, TextureSet.SET_DULL , 1.0F, 64, 2, 1|2 |32|64|128 , 20, 20, 20, 0, "Carbon" , 0, 0, 3800, 0, F, F, 2, 1, 1, Dyes.dyeBlack , Element.C , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.IGNIS, 1))),
Cadmium ( 55, TextureSet.SET_SHINY , 1.0F, 0, 2, 1 |8 |32 , 50, 50, 60, 0, "Cadmium" , 0, 0, 594, 0, F, F, 3, 1, 1, Dyes.dyeGray , Element.Cd , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 1), new TC_AspectStack(TC_Aspects.VENENUM, 1))),
Cerium ( 65, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Cerium" , 0, 0, 1068, 1068, T, F, 4, 1, 1, Dyes._NULL , Element.Ce , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Chlorine ( 23, TextureSet.SET_FLUID , 1.0F, 0, 2, 16|32 , 255, 255, 255, 0, "Chlorine" , 0, 0, 171, 0, F, F, 2, 1, 1, Dyes.dyeCyan , Element.Cl , Arrays.asList(new TC_AspectStack(TC_Aspects.AQUA, 2), new TC_AspectStack(TC_Aspects.PANNUS, 1))),
@ -72,7 +72,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Iron ( 32, TextureSet.SET_METALLIC , 6.0F, 256, 2, 1|2 |8 |32|64|128 , 200, 200, 200, 0, "Iron" , 0, 0, 1811, 0, F, F, 3, 1, 1, Dyes.dyeLightGray , Element.Fe , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 3))),
Lanthanum ( 64, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Lanthanum" , 0, 0, 1193, 1193, T, F, 4, 1, 1, Dyes._NULL , Element.La , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Lead ( 89, TextureSet.SET_DULL , 8.0F, 64, 1, 1|2 |8 |32|64|128 , 140, 100, 140, 0, "Lead" , 0, 0, 600, 0, F, F, 3, 1, 1, Dyes.dyePurple , Element.Pb , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.ORDO, 1))),
Lithium ( 6, TextureSet.SET_DULL , 1.0F, 0, 2, 1 |8 |32 , 225, 220, 255, 0, "Lithium" , 0, 0, 454, 0, F, F, 4, 1, 1, Dyes.dyeLightBlue , Element.Li , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 2))),
Lithium ( 6, TextureSet.SET_DULL , 1.0F, 0, 2, 1|2 |8 |32 , 225, 220, 255, 0, "Lithium" , 0, 0, 454, 0, F, F, 4, 1, 1, Dyes.dyeLightBlue , Element.Li , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 2))),
Lutetium ( 78, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Lutetium" , 0, 0, 1925, 1925, T, F, 4, 1, 1, Dyes._NULL , Element.Lu , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Magic (-128, TextureSet.SET_SHINY , 8.0F, 5120, 5, 1|2|4|8|16|32|64|128 , 100, 0, 200, 0, "Magic" , 5, 32, 5000, 0, F, F, 7, 1, 1, Dyes.dyePurple , Element.Ma , Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTIO, 4))),
Magnesium ( 18, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 200, 200, 0, "Magnesium" , 0, 0, 923, 0, F, F, 3, 1, 1, Dyes.dyePink , Element.Mg , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.SANO, 1))),
@ -91,7 +91,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Platinum ( 85, TextureSet.SET_SHINY , 12.0F, 64, 2, 1|2 |8 |32|64|128 , 255, 255, 200, 0, "Platinum" , 0, 0, 2041, 0, F, F, 6, 1, 1, Dyes.dyeOrange , Element.Pt , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.NEBRISUM, 1))),
Plutonium ( 100, TextureSet.SET_METALLIC , 6.0F, 512, 3, 1|2 |8 |32|64 , 240, 50, 50, 0, "Plutonium 244" , 0, 0, 912, 0, F, F, 6, 1, 1, Dyes.dyeLime , Element.Pu , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 2))),
Plutonium241 ( 101, TextureSet.SET_SHINY , 6.0F, 512, 3, 1|2 |8 |32|64 , 250, 70, 70, 0, "Plutonium 241" , 0, 0, 912, 0, F, F, 6, 1, 1, Dyes.dyeLime , Element.Pu_241 , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 3))),
Potassium ( 25, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1 |32 , 250, 250, 250, 0, "Potassium" , 0, 0, 336, 0, F, F, 2, 1, 1, Dyes.dyeWhite , Element.K , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 1))),
Potassium ( 25, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1|2 |32 , 250, 250, 250, 0, "Potassium" , 0, 0, 336, 0, F, F, 2, 1, 1, Dyes.dyeWhite , Element.K , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 1))),
Praseodymium ( 66, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Praseodymium" , 0, 0, 1208, 1208, T, F, 4, 1, 1, Dyes._NULL , Element.Pr , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Promethium ( 68, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Promethium" , 0, 0, 1315, 1315, T, F, 4, 1, 1, Dyes._NULL , Element.Pm , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))),
Radon ( 93, TextureSet.SET_FLUID , 1.0F, 0, 2, 16|32 , 255, 0, 255, 240, "Radon" , 0, 0, 202, 0, F, T, 5, 1, 1, Dyes.dyePurple , Element.Rn , Arrays.asList(new TC_AspectStack(TC_Aspects.AER, 1), new TC_AspectStack(TC_Aspects.RADIO, 1))),
@ -169,7 +169,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Endium ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 , 255, 255, 255, 0, "Endium" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
Prismarine ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 |4 , 255, 255, 255, 0, "Prismarine" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
GraveyardDirt ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 , 255, 255, 255, 0, "Graveyard Dirt" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
DarkSteel ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1|2 , 255, 255, 255, 0, "Dark Steel" , 0, 0, 1811, 0, F, F, 3, 1, 1, Dyes._NULL ),
DarkSteel ( 364, TextureSet.SET_DULL , 8.0F, 512, 3, 1|2 |8 |64 , 80, 70, 80, 0, "Dark Steel" , 0, 0, 1811, 0, F, F, 5, 1, 1, Dyes.dyePurple ),
Terrasteel ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1|2 , 255, 255, 255, 0, "Terrasteel" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
TerrasteelAlloyRaw ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1|2 , 255, 255, 255, 0, "Raw Terrasteel Alloy" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
TerrasteelAlloyStrengthened ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1|2 , 255, 255, 255, 0, "Strengthened Terrasteel Alloy" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),

View file

@ -244,7 +244,7 @@ public abstract class GT_MetaGenerated_Tool extends GT_MetaBase_Item implements
aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY);
aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Turbine Efficency: " + EnumChatFormatting.BLUE + (50.0F+(10.0F*getToolCombatDamage(aStack))) + EnumChatFormatting.GRAY);
aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Optimal Steam flow: " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed*20) + EnumChatFormatting.GRAY+ "L/sec");
aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Optimal Steam flow: " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed*1000) + EnumChatFormatting.GRAY+ "L/sec");
}else{
aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);

View file

@ -78,6 +78,7 @@ import net.minecraft.world.World;
checkHeatAcceptor(reactor, x, y + 1, heatAcceptors);
while ((heatAcceptors.size() > 0) && (heat > 0))
{
heat *=sEnergy;
int dheat = heat / heatAcceptors.size();
heat -= dheat;
dheat = ((IReactorComponent)((ItemStackCoord)heatAcceptors.get(0)).stack.getItem()).alterHeat(reactor, ((ItemStackCoord)heatAcceptors.get(0)).stack, ((ItemStackCoord)heatAcceptors.get(0)).x, ((ItemStackCoord)heatAcceptors.get(0)).y, dheat);

View file

@ -197,7 +197,6 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
mEfficiencyIncrease = 0;
if (aBaseMetaTileEntity.isAllowedToWork()) checkRecipe(mInventory[1]);
if(mOutputFluids!=null&&mOutputFluids.length>0){
GT_Mod.instance.achievements.issueAchivementHatchFluid(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), mOutputFluids[0]);
if(mOutputFluids.length>1){GT_Mod.instance.achievements.issueAchievement(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "oilplant");}
}
}
@ -337,16 +336,8 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
}
if (mInventory[1] != null && getBaseMetaTileEntity().getRandomNumber(2) == 0 &&!mInventory[1].getUnlocalizedName().startsWith("gt.blockmachines.basicmachine.")) {
if(mInventory[1].getItem() instanceof GT_MetaGenerated_Tool_01){
((GT_MetaGenerated_Tool)mInventory[1].getItem()).doDamage(mInventory[1], mEUt/5);
}
// mInventory[1].setItemDamage(mInventory[1].getItemDamage() + getDamageToComponent(mInventory[1]));
// if (mInventory[1].getItemDamage() >= mInventory[1].getMaxDamage()) {
// if (explodesOnComponentBreak(mInventory[1])) {
// explodeMultiblock();
// } else {
// mInventory[1] = null;
// }
// return false;
// }
}
}
return true;

View file

@ -0,0 +1,120 @@
package gregtech.common.covers;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraftforge.fluids.Fluid;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
import gregtech.api.util.GT_CoverBehavior;
import gregtech.api.util.GT_Utility;
public class GT_Cover_PlayerDetector extends GT_CoverBehavior{
private String placer = "";
private int range = 8;
public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
{
boolean playerDetected = false;
if(aTileEntity instanceof IGregTechTileEntity){
if(aTileEntity.isUniversalEnergyStored(20)){
aTileEntity.decreaseStoredEnergyUnits(20, true);
range = 32;
}else{range = 8;}
placer = ((IGregTechTileEntity) aTileEntity).getOwnerName();
}
for (Object tObject : aTileEntity.getWorld().playerEntities) {
if ((tObject instanceof EntityPlayerMP))
{
EntityPlayerMP tEntity = (EntityPlayerMP)tObject;
int dist = Math.max(1, (int)tEntity.getDistance(aTileEntity.getXCoord() + 0.5D, aTileEntity.getYCoord() + 0.5D, aTileEntity.getZCoord() + 0.5D));
if (dist < range)
{
if (aCoverVariable == 0)
{
playerDetected=true;
break;
}
if (tEntity.getDisplayName().equalsIgnoreCase(placer))
{
if (aCoverVariable == 1)
{
playerDetected=true;
break;
}
}
else if (aCoverVariable == 2)
{
playerDetected=true;
break;
}
}
}
}
aTileEntity.setOutputRedstoneSignal(aSide, (byte)(playerDetected ? 15 : 0));
return aCoverVariable;
}
public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
/* 64: */ {
/* 65: 54 */ aCoverVariable = (aCoverVariable + 1) % 3;
/* 66: 55 */ if (aCoverVariable == 0) {
/* 67: 55 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if any Player is close");
/* 68: */ }
/* 69: 56 */ if (aCoverVariable == 1) {
/* 70: 56 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if you are close");
/* 71: */ }
/* 72: 57 */ if (aCoverVariable == 2) {
/* 73: 57 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if other player is close");
/* 74: */ }
/* 96: 65 */ return aCoverVariable;
/* 97: */ }
/* 98: */
/* 99: */ public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
/* 100: */ {
/* 101: 70 */ return true;
/* 102: */ }
/* 103: */
/* 104: */ public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
/* 105: */ {
/* 106: 75 */ return true;
/* 107: */ }
/* 108: */
/* 109: */ public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
/* 110: */ {
/* 111: 80 */ return true;
/* 112: */ }
/* 113: */
/* 114: */ public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
/* 115: */ {
/* 116: 85 */ return true;
/* 117: */ }
/* 118: */
/* 119: */ public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
/* 120: */ {
/* 121: 90 */ return true;
/* 122: */ }
/* 123: */
/* 124: */ public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
/* 125: */ {
/* 126: 95 */ return true;
/* 127: */ }
/* 128: */
/* 129: */ public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
/* 130: */ {
/* 131:100 */ return true;
/* 132: */ }
/* 133: */
/* 134: */ public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
/* 135: */ {
/* 136:105 */ return 20;
/* 137: */ }
}

View file

@ -42,6 +42,7 @@ import gregtech.api.util.GT_Utility;
/* 38: */ import gregtech.common.covers.GT_Cover_ItemMeter;
/* 39: */ import gregtech.common.covers.GT_Cover_LiquidMeter;
import gregtech.common.covers.GT_Cover_NeedMaintainance;
import gregtech.common.covers.GT_Cover_PlayerDetector;
/* 40: */ import gregtech.common.covers.GT_Cover_Pump;
import gregtech.common.covers.GT_Cover_RedstoneReceiverExternal;
import gregtech.common.covers.GT_Cover_RedstoneReceiverInternal;
@ -709,13 +710,16 @@ import net.minecraftforge.common.ForgeModContainer;
/* 677:645 */ ItemList.Cover_FluidDetector.set(addItem(tLastID = 732, "Fluid Detector", "Gives out Fluid Amount as Redstone", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L) }));
/* 678:646 */ ItemList.Cover_ItemDetector.set(addItem(tLastID = 733, "Item Detector", "Gives out Item Amount as Redstone", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 1L) }));
/* 679:647 */ ItemList.Cover_EnergyDetector.set(addItem(tLastID = 734, "Energy Detector", "Gives out Energy Amount as Redstone", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L) }));
/* 680: */
/* 680: */ ItemList.Cover_PlayerDetector.set(addItem(tLastID = 735, "Player Detector", "Gives out close Players as Redstone", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L) }));
/* 677:645 */ GT_Values.RA.addAssemblerRecipe( ItemList.Sensor_EV.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 1L),ItemList.Cover_PlayerDetector.get(1L, new Object[0]), 3200, 128);
/* 743:711 */
/* 681:649 */ GregTech_API.registerCover(ItemList.Cover_Controller.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONTROLLER) }), new GT_Cover_ControlsWork());
/* 682:650 */ GregTech_API.registerCover(ItemList.Cover_ActivityDetector.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ACTIVITYDETECTOR) }), new GT_Cover_DoesWork());
/* 683:651 */ GregTech_API.registerCover(ItemList.Cover_FluidDetector.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_FLUIDDETECTOR) }), new GT_Cover_LiquidMeter());
/* 684:652 */ GregTech_API.registerCover(ItemList.Cover_ItemDetector.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ITEMDETECTOR) }), new GT_Cover_ItemMeter());
/* 685:653 */ GregTech_API.registerCover(ItemList.Cover_EnergyDetector.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ENERGYDETECTOR) }), new GT_Cover_EUMeter());
/* 686: */
/* 686: */ GregTech_API.registerCover(ItemList.Cover_PlayerDetector.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[] { Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ACTIVITYDETECTOR) }), new GT_Cover_PlayerDetector());
/* 683:651 */
/* 687:655 */ ItemList.Cover_Screen.set(addItem(tLastID = 740, "Computer Monitor", "Displays Data", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.LUX, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 1L) }));
/* 688:656 */ ItemList.Cover_Crafting.set(addItem(tLastID = 744, "Crafting Table Cover", "Better than a wooden Workbench", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 4L) }));
/* 689:657 */ ItemList.Cover_Drain.set(addItem(tLastID = 745, "Drain", "Absorbs Fluids and collects Rain", new Object[] { new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 2L) }));

View file

@ -6,9 +6,16 @@ import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.visnet.VisNetHandler;
import cpw.mods.fml.common.Loader;
import net.minecraft.block.Block;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.entity.item.EntityEnderCrystal;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemEnchantedBook;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ConfigCategories;
@ -74,7 +81,7 @@ import gregtech.api.util.GT_Utility;
this.mEfficiency =GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.efficiency.tier."+this.mTier, 100-this.mTier*10);
this.sAllowMultipleEggs = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.AllowMultipleEggs", false);
this.sEnergyPerEnderCrystal = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.EnergyPerTick.EnderCrystal", 32);
this.sEnergyFromVis = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.EnergyPerVisDivisor", 2500);
this.sEnergyFromVis = (GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.EnergyPerVisDivisor", 2500)*10);
this.sDragonEggEnergyPerTick = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MagicEnergyAbsorber.EnergyPerTick", 2048);
this.isThaumcraftLoaded = Loader.isModLoaded("Thaumcraft");
}
@ -84,7 +91,7 @@ import gregtech.api.util.GT_Utility;
if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + aBaseMetaTileEntity.getEUCapacity()) {
//Dragon Egg
if(hasEgg()&&aTick%10==0){
getBaseMetaTileEntity().increaseStoredEnergyUnits(sDragonEggEnergyPerTick*getEfficiency()/10, false);
getBaseMetaTileEntity().increaseStoredEnergyUnits(sDragonEggEnergyPerTick*getEfficiency()*10, false);
if ((mActiveSiphon != this) && (!sAllowMultipleEggs)) {
if ((mActiveSiphon == null) || (mActiveSiphon.getBaseMetaTileEntity() == null) || (mActiveSiphon.getBaseMetaTileEntity().isInvalidTileEntity()) || (!mActiveSiphon.hasEgg())) {
mActiveSiphon = this;
@ -107,13 +114,97 @@ import gregtech.api.util.GT_Utility;
int order = VisNetHandler.drainVis(tmpWorld, tmpX, tmpY, tmpZ, Aspect.ORDER, 1000);
int water = VisNetHandler.drainVis(tmpWorld, tmpX, tmpY, tmpZ, Aspect.WATER, 1000);
int visEU = (int) (Math.pow(fire, 4)+Math.pow(earth, 4)+Math.pow(air, 4)+Math.pow(destruction, 4)+Math.pow(order, 4)+Math.pow(water, 4));
int mult = 85;
if(fire>4)mult+=15;
if(earth>4)mult+=15;
if(air>4)mult+=15;
if(destruction>4)mult+=15;
if(order>4)mult+=15;
if(water>4)mult+=15;
visEU = (visEU*mult) / 100;
getBaseMetaTileEntity().increaseStoredEnergyUnits(Math.min(maxEUOutput(), visEU*getEfficiency()/this.sEnergyFromVis), false);
}catch (Throwable e){}
}
//EnderCrystal
//GC Creeper Egg
if (sEnergyPerEnderCrystal > 0) {
if (this.mTargetedCrystal == null)
{
ArrayList<EntityEnderCrystal> tList = (ArrayList)getBaseMetaTileEntity().getWorld().getEntitiesWithinAABB(EntityEnderCrystal.class, AxisAlignedBB.getBoundingBox(getBaseMetaTileEntity().getXCoord() - 64, getBaseMetaTileEntity().getYCoord() - 64, getBaseMetaTileEntity().getZCoord() - 64, getBaseMetaTileEntity().getXCoord() + 64, getBaseMetaTileEntity().getYCoord() + 64, getBaseMetaTileEntity().getZCoord() + 64));
if ((tList != null) && (!tList.isEmpty()))
{
tList.removeAll(sUsedDragonCrystalList);
if (tList.size() > 0)
{
this.mTargetedCrystal = ((EntityEnderCrystal)tList.get(0));
if (this.mTargetedCrystal != null) {
sUsedDragonCrystalList.add(this.mTargetedCrystal);
}
}
}
}
else if (this.mTargetedCrystal.isEntityAlive())
{
getBaseMetaTileEntity().increaseStoredEnergyUnits(sEnergyPerEnderCrystal * 10, false);
}
else
{
sUsedDragonCrystalList.remove(this.mTargetedCrystal);
this.mTargetedCrystal = null;
}
}
//Absorb entchantments
try
{
if ((this.mInventory[0] != null) && (this.mInventory[1] == null))
{
if ((this.mInventory[0].isItemEnchanted()) && (this.mInventory[0].getItem().getItemEnchantability() > 0))
{
NBTTagList tEnchantments = this.mInventory[0].getEnchantmentTagList();
if (tEnchantments != null)
{
for (int i = 0; i < tEnchantments.tagCount(); i++)
{
short tID = ((NBTTagCompound)tEnchantments.getCompoundTagAt(i)).getShort("id");
short tLevel = ((NBTTagCompound)tEnchantments.getCompoundTagAt(i)).getShort("lvl");
if ((tID > -1) && (tID < Enchantment.enchantmentsList.length))
{
Enchantment tEnchantment = Enchantment.enchantmentsList[tID];
if (tEnchantment != null) {
getBaseMetaTileEntity().increaseStoredEnergyUnits(1000000 * tLevel / (tEnchantment.getMaxLevel() * tEnchantment.getWeight()), true);
}
}
}
this.mInventory[0].stackTagCompound.removeTag("ench");
}
}
else if ((this.mInventory[0].getItem() instanceof ItemEnchantedBook))
{
NBTTagList tEnchantments = ((ItemEnchantedBook)this.mInventory[0].getItem()).func_92110_g(this.mInventory[0]);
if (tEnchantments != null)
{
for (int i = 0; i < tEnchantments.tagCount(); i++)
{
short tID = ((NBTTagCompound)tEnchantments.getCompoundTagAt(i)).getShort("id");
short tLevel = ((NBTTagCompound)tEnchantments.getCompoundTagAt(i)).getShort("lvl");
if ((tID > -1) && (tID < Enchantment.enchantmentsBookList.length))
{
Enchantment tEnchantment = Enchantment.enchantmentsBookList[tID];
if (tEnchantment != null) {
getBaseMetaTileEntity().increaseStoredEnergyUnits(1000000 * tLevel / (tEnchantment.getMaxLevel() * tEnchantment.getWeight()), true);
}
}
}
this.mInventory[0] = new ItemStack(Items.book, 1);
}
}
this.mInventory[1] = this.mInventory[0];
this.mInventory[0] = null;
}
}
catch (Throwable e){}
}
}

View file

@ -51,7 +51,7 @@ onConfigLoad();
public void onConfigLoad()
/* 39: */ {
this.mEfficiency =GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "PlasmaGenerator.efficiency.tier."+this.mTier, (50 + ((this.mTier-5) * 25)));
this.mEfficiency =GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "PlasmaGenerator.efficiency.tier."+this.mTier, (10 + (this.mTier * 10)));
}
/* 43: */

View file

@ -3,6 +3,7 @@
/* 3: */ import java.util.ArrayList;
import java.util.Arrays;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Dyes;
import gregtech.api.enums.Textures;
@ -362,6 +363,8 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
mProgresstime = 0;
mMaxProgresstime = 0;
mEfficiencyIncrease = 0;
if(mOutputFluids!=null&&mOutputFluids.length>0){
GT_Mod.instance.achievements.issueAchivementHatchFluid(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), mOutputFluids[0]);}
this.mEUStore=(int) aBaseMetaTileEntity.getStoredEU();
if (aBaseMetaTileEntity.isAllowedToWork()) checkRecipe(mInventory[1]);
}

View file

@ -0,0 +1,257 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import net.minecraft.block.Block;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import forestry.core.fluids.Fluids;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Materials;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_HeatExchanger extends GT_MetaTileEntity_MultiBlockBase{
/* 25: */ public GT_MetaTileEntity_HeatExchanger(int aID, String aName, String aNameRegional)
/* 26: */ {
/* 27: 25 */ super(aID, aName, aNameRegional);
/* 28: */ }
/* 29: */
/* 30: */ public GT_MetaTileEntity_HeatExchanger(String aName)
/* 31: */ {
/* 32: 29 */ super(aName);
/* 33: */ }
/* 34: */
/* 35: */ public String[] getDescription()
/* 36: */ {
/* 37: 34 */ return new String[] { "Controller Block for the Heat Exchanger", "Size: 3x3x4", "Controller (front middle at bottom)", "3x3x4 of Stable Titanium Casing (hollow, Min 24!)", "2 Titanium Pipe Casing Blocks inside the Hollow Casing", "1x Distillated Water Input (one of the Casings)","min 1 Steam Output (one of the Casings)", "1x Maintenance Hatch (one of the Casings)", "1x Hot Fluid Input (botton Center)", "1x Cold Fluid Output (top Center)" };
/* 38: */ }
public GT_MetaTileEntity_Hatch_Input mInputHotFluidHatch;
public GT_MetaTileEntity_Hatch_Output mOutputColdFluidHatch;
public boolean superheated=false;
/* 59: */
/* 60: */ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone)
/* 61: */ {
/* 62: 53 */ if (aSide == aFacing) {
/* 63: 53 */ return new ITexture[] { Textures.BlockIcons.CASING_BLOCKS[50], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_LARGE_BOILER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_LARGE_BOILER) };
/* 64: */ }
/* 65: 54 */ return new ITexture[] { Textures.BlockIcons.CASING_BLOCKS[50] };
/* 66: */ }
/* 67: */
/* 68: */ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity)
/* 69: */ {
/* 70: 59 */ return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "LargeBoiler.png");
/* 71: */ }
/* 72: */
/* 73: */ public boolean isCorrectMachinePart(ItemStack aStack)
/* 74: */ {
/* 75: 64 */ return true;
/* 76: */ }
/* 77: */
/* 78: */ public boolean isFacingValid(byte aFacing)
/* 79: */ {
/* 80: 67 */ return aFacing > 1;
/* 81: */ }
/* 82: */
/* 83: */ public boolean checkRecipe(ItemStack aStack)
/* 84: */ {
if(GT_ModHandler.isLava(mInputHotFluidHatch.getFluid())){
int fluidAmount = mInputHotFluidHatch.getFluidAmount();
if(fluidAmount >= 1000){superheated=true;}else{superheated=false;}
if(fluidAmount>2000){fluidAmount=2000;}
mInputHotFluidHatch.drain(fluidAmount, true);
mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2pahoehoelava", fluidAmount), true);
this.mMaxProgresstime = 20;
this.mEUt = fluidAmount*2;
this.mEfficiencyIncrease = 80;
return true;
}
if(mInputHotFluidHatch.getFluid().isFluidEqual(FluidRegistry.getFluidStack("ic2hotcoolant", 1))){
int fluidAmount = mInputHotFluidHatch.getFluidAmount();
if(fluidAmount >= 4000){superheated=true;}else{superheated=false;}
if(fluidAmount>8000){fluidAmount=8000;}
mInputHotFluidHatch.drain(fluidAmount, true);
mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2coolant", fluidAmount), true);
this.mMaxProgresstime = 20;
this.mEUt = fluidAmount/2;
this.mEfficiencyIncrease = 20;
return true;
}
return false;}
/* 133: */
/* 134: */ public boolean onRunningTick(ItemStack aStack)
/* 135: */ {
/* 136:115 */ if (this.mEUt > 0)
/* 137: */ {System.out.println("EU: "+mEUt+" Eff: "+mEfficiency);
/* 138:116 */ int tGeneratedEU = (int)(this.mEUt * 2L * this.mEfficiency / 10000L);
/* 139:117 */ if (tGeneratedEU > 0) {
/* 140:118 */ if (depleteInput(GT_ModHandler.getDistilledWater(((superheated ? tGeneratedEU/2 :tGeneratedEU) + 160) / 160))) {
if(superheated){
addOutput(FluidRegistry.getFluidStack("ic2superheatedsteam", tGeneratedEU/2));
}else{
/* 141:119 */ addOutput(GT_ModHandler.getSteam(tGeneratedEU));}
/* 142: */ } else {
/* 143:121 */ explodeMultiblock();
/* 144: */ }
/* 145: */ }
/* 146:124 */ return true;
/* 147: */ }
/* 148:126 */ return true;
/* 149: */ }
/* 150: */ private static boolean controller;
/* 151: */ public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack)
/* 152: */ {
/* 153:131 */ int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
/* 154: */
/* 155:133 */ int tCasingAmount = 0;int tFireboxAmount = 0;controller=false;
/* 156:135 */ for (int i = -1; i < 2; i++) {
/* 157:135 */ for (int j = -1; j < 2; j++) {
/* 158:136 */ if ((i != 0) || (j != 0))
/* 159: */ {
/* 160:137 */ for (int k = 0; k <= 3; k++) {
/* 161:138 */ if (!addOutputToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, k, zDir + j), 50)&&!addInputToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, k, zDir + j), 50)&&!addMaintenanceToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, k, zDir + j), 50)&&!ignoreController(aBaseMetaTileEntity.getBlockOffset(xDir + i, k, zDir + j)))
/* 162: */ {
/* 163:139 */ if (aBaseMetaTileEntity.getBlockOffset(xDir + i, k, zDir + j) != getCasingBlock()) {
/* 164:139 */ return false;
/* 165: */ }
/* 166:140 */ if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, k, zDir + j) != getCasingMeta()) {
/* 167:140 */ return false;
/* 168: */ }
/* 169:141 */ tCasingAmount++;
/* 170: */ }
}
/* 171: */ }else{
if(!addHotFluidInputToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, 0, zDir + j), 50)){
return false;
}
if(!addColdFluidOutputToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, 3, zDir + j), 50)){
return false;
}
/* 177:146 */ if (aBaseMetaTileEntity.getBlockOffset(xDir + i, 1, zDir + j) != getPipeBlock()) {
/* 178:146 */ return false;
/* 179: */ }
/* 180:147 */ if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, 1, zDir + j) != getPipeMeta()) {
/* 181:147 */ return false;
/* 182: */ }
/* 177:146 */ if (aBaseMetaTileEntity.getBlockOffset(xDir + i, 2, zDir + j) != getPipeBlock()) {
/* 178:146 */ return false;
/* 179: */ }
/* 180:147 */ if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, 2, zDir + j) != getPipeMeta()) {
/* 181:147 */ return false;
/* 182: */ }
/* 172: */ }
/* 195: */ }
/* 196: */ }
/* 215:166 */ return (tCasingAmount >= 24);
/* 216: */ }
public boolean ignoreController(Block tTileEntity){
if(!controller&&tTileEntity == GregTech_API.sBlockMachines){return true;}
return false;
}
public boolean addColdFluidOutputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
if (aTileEntity == null) return false;
IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
if (aMetaTileEntity == null) return false;
if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Output) {
((GT_MetaTileEntity_Hatch)aMetaTileEntity).mMachineBlock = (byte)aBaseCasingIndex;
mOutputColdFluidHatch = (GT_MetaTileEntity_Hatch_Output)aMetaTileEntity;
return true;
}
return false;
}
public boolean addHotFluidInputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
if (aTileEntity == null) return false;
IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
if (aMetaTileEntity == null) return false;
if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Input) {
((GT_MetaTileEntity_Hatch)aMetaTileEntity).mMachineBlock = (byte)aBaseCasingIndex;
((GT_MetaTileEntity_Hatch_Input)aMetaTileEntity).mRecipeMap = getRecipeMap();
mInputHotFluidHatch = (GT_MetaTileEntity_Hatch_Input)aMetaTileEntity;
return true;
}
return false;
}
/* 26: */ public Block getCasingBlock()
/* 27: */ {
/* 28:22 */ return GregTech_API.sBlockCasings4;
/* 29: */ }
/* 30: */
/* 31: */ public byte getCasingMeta()
/* 32: */ {
/* 33:23 */ return 2;
/* 34: */ }
/* 35: */
/* 36: */ public byte getCasingTextureIndex()
/* 37: */ {
/* 38:24 */ return 50;
/* 39: */ }
/* 40: */
/* 41: */ public Block getPipeBlock()
/* 42: */ {
/* 43:26 */ return GregTech_API.sBlockCasings2;
/* 44: */ }
/* 45: */
/* 46: */ public byte getPipeMeta()
/* 47: */ {
/* 48:27 */ return 14;
/* 49: */ }
/* 217: */
/* 218: */ public int getMaxEfficiency(ItemStack aStack)
/* 219: */ {
/* 220:171 */ return 10000;
/* 221: */ }
/* 222: */
/* 223: */ public int getPollutionPerTick(ItemStack aStack)
/* 224: */ {
/* 225:176 */ return 10;
/* 226: */ }
/* 227: */
/* 228: */ public int getDamageToComponent(ItemStack aStack)
/* 229: */ {
/* 230:181 */ return 0;
/* 231: */ }
/* 232: */
/* 233: */ public int getAmountOfOutputs()
/* 234: */ {
/* 235:186 */ return 1;
/* 236: */ }
/* 237: */
/* 238: */ public boolean explodesOnComponentBreak(ItemStack aStack)
/* 239: */ {
/* 240:191 */ return false;
/* 241: */ }
/* 242: */
/* 21: */ public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity)
/* 22: */ {
/* 23:19 */ return new GT_MetaTileEntity_HeatExchanger(this.mName);
/* 24: */ }
}

View file

@ -73,9 +73,3 @@
/* 73:34 */ return 8;
/* 74: */ }
/* 75: */ }
/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
* Qualified Name: gregtech.common.tileentities.machines.multi.GT_MetaTileEntity_LargeBoiler_Titanium
* JD-Core Version: 0.7.0.1
*/

View file

@ -1,6 +1,10 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Textures;
@ -16,57 +20,22 @@ import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import gregtech.common.items.GT_MetaGenerated_Tool_01;
public class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlockBase{
public abstract class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlockBase{
public GT_MetaTileEntity_LargeTurbine(int aID, String aName, String aNameRegional){super(aID, aName, aNameRegional);}
public GT_MetaTileEntity_LargeTurbine(String aName){super(aName);}
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex+1], aFacing == aSide ? aActive ? new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE_ACTIVE5):new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE5) : Textures.BlockIcons.CASING_BLOCKS[57]};
}
public String[] getDescription()
{
return new String[] {
"Controller Block for the Large Turbine",
"Size: 3x3x4 (Hollow)", "Controller (front centered)",
"1x Input Hatch (side centered)", "1x Output Hatch(side centered)",
"1x Dynamo Hatch (back centered)",
"1x Maintenance Hatch (side centered)",
"Turbine Casings for the rest (24 at least!)" };
}
@Override
public boolean isCorrectMachinePart(ItemStack aStack) {
return getMaxEfficiency(aStack) > 0;
}
protected int baseEff=0;
protected int optFlow=0;
protected int counter=0;
@Override
public boolean checkRecipe(ItemStack aStack) {
if (depleteInput(GT_ModHandler.getSteam(1600L)))
{
this.mEUt = 1000;
this.mMaxProgresstime = 1;
// if (ItemList.Component_Turbine_Bronze.isStackEqual(aStack, true, true)) {
// this.mEfficiencyIncrease = (this.mMaxProgresstime * 10);
// } else if (ItemList.Component_Turbine_Steel.isStackEqual(aStack, true, true)) {
// this.mEfficiencyIncrease = (this.mMaxProgresstime * 20);
// } else if (ItemList.Component_Turbine_Magnalium.isStackEqual(aStack, true, true)) {
// this.mEfficiencyIncrease = (this.mMaxProgresstime * 50);
// } else if (ItemList.Component_Turbine_TungstenSteel.isStackEqual(aStack, true, true)) {
// this.mEfficiencyIncrease = (this.mMaxProgresstime * 15);
// } else if (ItemList.Component_Turbine_Carbon.isStackEqual(aStack, true, true)) {
// this.mEfficiencyIncrease = (this.mMaxProgresstime * 100);
// } else {
this.mEfficiencyIncrease = (this.mMaxProgresstime * 20);
// }
addOutput(GT_ModHandler.getDistilledWater(10L));
return true;
}
return false;
}
public abstract boolean checkRecipe(ItemStack aStack);
@Override
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
@ -102,17 +71,17 @@ public class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlock
for (byte k = 0; k < 4; k = (byte)(k + 1)) {
if (((i == 0) || (j == 0)) && ((k == 1) || (k == 2)))
{
if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == GregTech_API.sBlockCasings4)
if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == getCasingBlock())
{
if (getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == 9) {}
if (getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {}
}
else if (!addToMachineList(getBaseMetaTileEntity().getIGregTechTileEntity(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)))) {
return false;
}
}
else if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == GregTech_API.sBlockCasings4)
else if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == getCasingBlock())
{
if (getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == 9) {}
if (getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide < 4 ? i : -k), tY + j, tZ + (tSide < 4 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {}
}
else {
return false;
@ -126,7 +95,7 @@ public class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlock
if ((tTileEntity != null) && (tTileEntity.getMetaTileEntity() != null)) {
if ((tTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Dynamo)) {
this.mDynamoHatches.add((GT_MetaTileEntity_Hatch_Dynamo)tTileEntity.getMetaTileEntity());
((GT_MetaTileEntity_Hatch)tTileEntity.getMetaTileEntity()).mMachineBlock = (byte)46;
((GT_MetaTileEntity_Hatch)tTileEntity.getMetaTileEntity()).mMachineBlock = getCasingTextureIndex();
} else {
return false;
}
@ -139,16 +108,21 @@ public class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlock
return true;
}
public abstract Block getCasingBlock();
public abstract byte getCasingMeta();
public abstract byte getCasingTextureIndex();
private boolean addToMachineList(IGregTechTileEntity tTileEntity){
return ((addMaintenanceToMachineList(tTileEntity, 46)) || (addInputToMachineList(tTileEntity, 46)) || (addOutputToMachineList(tTileEntity, 46)));
return ((addMaintenanceToMachineList(tTileEntity, getCasingTextureIndex())) || (addInputToMachineList(tTileEntity, getCasingTextureIndex())) || (addOutputToMachineList(tTileEntity, getCasingTextureIndex())));
}
@Override
public int getDamageToComponent(ItemStack aStack) {
return 1;//GT_Utility.areStacksEqual(GT_ModHandler.getModItem("Railcraft","part.turbine.rotor", 1L, 32767), aStack) ? 2 : 1;
return 1;
}
public int getMaxEfficiency(ItemStack aStack)
{
if (GT_Utility.isStackInvalid(aStack)) {
@ -167,7 +141,4 @@ public class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_MultiBlock
public int getAmountOfOutputs() {return 0;}
@Override
public boolean explodesOnComponentBreak(ItemStack aStack) {return true;}
@Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {return new GT_MetaTileEntity_LargeTurbine(mName);}
}

View file

@ -0,0 +1,92 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import java.util.Collection;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeTurbine{
public GT_MetaTileEntity_LargeTurbine_Gas(int aID, String aName, String aNameRegional){super(aID, aName, aNameRegional);}
public GT_MetaTileEntity_LargeTurbine_Gas(String aName){super(aName);}
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex+1], aFacing == aSide ? aActive ? new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE_ACTIVE5):new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE5) : Textures.BlockIcons.CASING_BLOCKS[57]};
}
public String[] getDescription()
{
return new String[] {
"Controller Block for the Large Gas Turbine",
"Size: 3x3x4 (Hollow)", "Controller (front centered)",
"1x Input Hatch (side centered)",
"1x Dynamo Hatch (back centered)",
"1x Maintenance Hatch (side centered)",
"Turbine Casings for the rest (24 at least!)",
"Needs a Turbine Item (inside controller GUI)"};
}
@Override
public boolean checkRecipe(ItemStack aStack) {
ArrayList<FluidStack> steams = getStoredFluids();
if (steams.size()>0)
{if(baseEff==0 || optFlow == 0 || counter >= 1000 || this.getBaseMetaTileEntity().hasWorkJustBeenEnabled() || this.getBaseMetaTileEntity().hasInventoryBeenModified()){
counter = 0;
baseEff = (int) ((50.0F+(10.0F*((GT_MetaGenerated_Tool)aStack.getItem()).getToolCombatDamage(aStack)))*100);
optFlow = (int) Math.max(Float.MIN_NORMAL, ((GT_MetaGenerated_Tool)aStack.getItem()).getToolStats(aStack).getSpeedMultiplier() * ((GT_MetaGenerated_Tool)aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed*50);
}
int tEU=0;
for(int i=0;i<steams.size();i++){
int fuelValue = getFuelValue(steams.get(i));
if(fuelValue>0&&depleteInput(new FluidStack(steams.get(i),optFlow/(fuelValue*2)))){
tEU += optFlow/2;}
}
this.mEUt = baseEff*tEU/10000;
this.mMaxProgresstime = 1;
this.mEfficiencyIncrease = (this.mMaxProgresstime * 10);
if(mEUt==0){return false;}
return true;
}
return false;
}
public int getFuelValue(FluidStack aLiquid) {
if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0;
FluidStack tLiquid;
Collection<GT_Recipe> tRecipeList = GT_Recipe_Map.sTurbineFuels.mRecipeList;
if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue;
return 0;
}
@Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {return new GT_MetaTileEntity_LargeTurbine_Gas(mName);}
@Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings4;
}
@Override
public byte getCasingMeta() {
return 9;
}
@Override
public byte getCasingTextureIndex() {
return 46;
}
}

View file

@ -0,0 +1,89 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
public class GT_MetaTileEntity_LargeTurbine_HPSteam extends GT_MetaTileEntity_LargeTurbine{
public GT_MetaTileEntity_LargeTurbine_HPSteam(int aID, String aName, String aNameRegional){super(aID, aName, aNameRegional);}
public GT_MetaTileEntity_LargeTurbine_HPSteam(String aName){super(aName);}
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex+1], aFacing == aSide ? aActive ? new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE_ACTIVE5):new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE5) : Textures.BlockIcons.CASING_BLOCKS[57]};
}
public String[] getDescription()
{
return new String[] {
"Controller Block for the Large High Pressure Steam Turbine",
"Size: 3x3x4 (Hollow)", "Controller (front centered)",
"1x Input Hatch (side centered)", "1x Output Hatch(side centered)",
"1x Dynamo Hatch (back centered)",
"1x Maintenance Hatch (side centered)",
"Turbine Casings for the rest (24 at least!)",
"Needs a Turbine Item (inside controller GUI)" };
}
@Override
public boolean checkRecipe(ItemStack aStack) {
ArrayList<FluidStack> steams = getStoredFluids();
if (steams.size()>0)
{if(baseEff==0 || optFlow == 0 || counter >= 1000 || this.getBaseMetaTileEntity().hasWorkJustBeenEnabled() || this.getBaseMetaTileEntity().hasInventoryBeenModified()){
counter = 0;
baseEff = (int) ((50.0F+(10.0F*((GT_MetaGenerated_Tool)aStack.getItem()).getToolCombatDamage(aStack)))*100);
optFlow = (int) Math.max(Float.MIN_NORMAL, ((GT_MetaGenerated_Tool)aStack.getItem()).getToolStats(aStack).getSpeedMultiplier() * ((GT_MetaGenerated_Tool)aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed*50);
}
int tEU=0;
int distOut=0;
for(int i=0;i<steams.size();i++){
if(steams.get(i).getFluid().getUnlocalizedName(steams.get(i)).equals("fluid.ic2superheatedsteam")){
int out = Math.min((int)(optFlow*1.5f),steams.get(i).amount);
depleteInput(new FluidStack(steams.get(i),out));
distOut += out;
tEU += steams.get(i).amount;
}
}
if(tEU<optFlow/10){tEU=0;}
if(tEU>optFlow) {tEU = optFlow;}
float tEff = tEU/(optFlow);
this.mEUt = (int) (tEff*tEU*baseEff/10000);
this.mMaxProgresstime = 1;
// System.out.println("Eff: "+baseEff+" optFlow: "+optFlow+" tEff: "+tEff+" eut: "+mEUt+" out: "+distOut);
this.mEfficiencyIncrease = (this.mMaxProgresstime * 10);
if(mEUt==0){return false;}
addOutput(GT_ModHandler.getSteam(distOut));
return true;
}
return false;
}
@Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {return new GT_MetaTileEntity_LargeTurbine_HPSteam(mName);}
@Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings4;
}
@Override
public byte getCasingMeta() {
return 9;
}
@Override
public byte getCasingTextureIndex() {
return 46;
}
}

View file

@ -0,0 +1,93 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import java.util.Collection;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
public class GT_MetaTileEntity_LargeTurbine_Plasma extends GT_MetaTileEntity_LargeTurbine{
public GT_MetaTileEntity_LargeTurbine_Plasma(int aID, String aName, String aNameRegional){super(aID, aName, aNameRegional);}
public GT_MetaTileEntity_LargeTurbine_Plasma(String aName){super(aName);}
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex+1], aFacing == aSide ? aActive ? new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE_ACTIVE5):new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE5) : Textures.BlockIcons.CASING_BLOCKS[57]};
}
public String[] getDescription()
{
return new String[] {
"Controller Block for the Large Plasma Generator",
"Size: 3x3x4 (Hollow)", "Controller (front centered)",
"1x Input Hatch (side centered)",
"1x Dynamo Hatch (back centered)",
"1x Maintenance Hatch (side centered)",
"Turbine Casings for the rest (24 at least!)",
"Needs a Turbine Item (inside controller GUI)" };
}
@Override
public boolean checkRecipe(ItemStack aStack) {
ArrayList<FluidStack> steams = getStoredFluids();
if (steams.size()>0)
{if(baseEff==0 || optFlow == 0 || counter >= 1000 || this.getBaseMetaTileEntity().hasWorkJustBeenEnabled() || this.getBaseMetaTileEntity().hasInventoryBeenModified()){
counter = 0;
baseEff = (int) ((50.0F+(10.0F*((GT_MetaGenerated_Tool)aStack.getItem()).getToolCombatDamage(aStack)))*100);
optFlow = (int) Math.max(Float.MIN_NORMAL, ((GT_MetaGenerated_Tool)aStack.getItem()).getToolStats(aStack).getSpeedMultiplier() * ((GT_MetaGenerated_Tool)aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed*50);
optFlow *=10;
}
int tEU=0;
for(int i=0;i<steams.size();i++){
int fuelValue = getFuelValue(steams.get(i));
if(fuelValue>0&&depleteInput(new FluidStack(steams.get(i),optFlow/(fuelValue*2)))){
tEU += optFlow/2;}
}
this.mEUt = baseEff*tEU/10000;
this.mMaxProgresstime = 1;
this.mEfficiencyIncrease = (this.mMaxProgresstime * 10);
if(mEUt==0){return false;}
return true;
}
return false;
}
public int getFuelValue(FluidStack aLiquid) {
if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0;
FluidStack tLiquid;
Collection<GT_Recipe> tRecipeList = GT_Recipe_Map.sPlasmaFuels.mRecipeList;
if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue;
return 0;
}
@Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {return new GT_MetaTileEntity_LargeTurbine_Plasma(mName);}
@Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings4;
}
@Override
public byte getCasingMeta() {
return 9;
}
@Override
public byte getCasingTextureIndex() {
return 46;
}
}

View file

@ -0,0 +1,89 @@
package gregtech.common.tileentities.machines.multi;
import java.util.ArrayList;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_ModHandler;
public class GT_MetaTileEntity_LargeTurbine_Steam extends GT_MetaTileEntity_LargeTurbine{
public GT_MetaTileEntity_LargeTurbine_Steam(int aID, String aName, String aNameRegional){super(aID, aName, aNameRegional);}
public GT_MetaTileEntity_LargeTurbine_Steam(String aName){super(aName);}
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex+1], aFacing == aSide ? aActive ? new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE_ACTIVE5):new GT_RenderedTexture(Textures.BlockIcons.LARGETURBINE5) : Textures.BlockIcons.CASING_BLOCKS[57]};
}
public String[] getDescription()
{
return new String[] {
"Controller Block for the Large Steam Turbine",
"Size: 3x3x4 (Hollow)", "Controller (front centered)",
"1x Input Hatch (side centered)", "1x Output Hatch(side centered)",
"1x Dynamo Hatch (back centered)",
"1x Maintenance Hatch (side centered)",
"Turbine Casings for the rest (24 at least!)",
"Needs a Turbine Item (inside controller GUI)" };
}
@Override
public boolean checkRecipe(ItemStack aStack) {
ArrayList<FluidStack> steams = getStoredFluids();
if (steams.size()>0)
{if(baseEff==0 || optFlow == 0 || counter >= 1000 || this.getBaseMetaTileEntity().hasWorkJustBeenEnabled() || this.getBaseMetaTileEntity().hasInventoryBeenModified()){
counter = 0;
baseEff = (int) ((50.0F+(10.0F*((GT_MetaGenerated_Tool)aStack.getItem()).getToolCombatDamage(aStack)))*100);
optFlow = (int) Math.max(Float.MIN_NORMAL, ((GT_MetaGenerated_Tool)aStack.getItem()).getToolStats(aStack).getSpeedMultiplier() * ((GT_MetaGenerated_Tool)aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed*50);
}
int tEU=0;
int distOut=0;
for(int i=0;i<steams.size();i++){
if(steams.get(i).getFluid().getUnlocalizedName(steams.get(i)).equals("fluid.steam")||steams.get(i).getFluid().getUnlocalizedName(steams.get(i)).equals("fluid.ic2steam")){
int out = Math.min((int)(optFlow*1.5f),steams.get(i).amount);
depleteInput(new FluidStack(steams.get(i),out));
distOut += out/160;
tEU += steams.get(i).amount/2;
}
}
if(tEU<optFlow/20){tEU=0;}
if(tEU>optFlow/2) {tEU = optFlow/2;}
float tEff = tEU/(optFlow/2);
this.mEUt = (int) (tEff*tEU*baseEff/10000);
this.mMaxProgresstime = 1;
// System.out.println("Eff: "+baseEff+" optFlow: "+optFlow+" tEff: "+tEff+" eut: "+mEUt+" out: "+distOut);
this.mEfficiencyIncrease = (this.mMaxProgresstime * 10);
if(mEUt==0){return false;}
addOutput(GT_ModHandler.getDistilledWater(distOut));
return true;
}
return false;
}
@Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {return new GT_MetaTileEntity_LargeTurbine_Steam(mName);}
@Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings4;
}
@Override
public byte getCasingMeta() {
return 9;
}
@Override
public byte getCasingTextureIndex() {
return 46;
}
}

View file

@ -29,7 +29,7 @@
/* 29: */
/* 30:23 */ GT_Values.RA.addFuel(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1L, 4), null, 4, 5);
/* 31:24 */ GT_Values.RA.addFuel(new ItemStack(Items.experience_bottle, 1), null, 10, 5);
/* 32:25 */ GT_Values.RA.addFuel(new ItemStack(Items.ghast_tear, 1), null, 500, 5);
/* 32:25 */ GT_Values.RA.addFuel(new ItemStack(Items.ghast_tear, 1), null, 50, 5);
/* 33:26 */ GT_Values.RA.addFuel(new ItemStack(Blocks.beacon, 1), null, Materials.NetherStar.mFuelPower * 2, Materials.NetherStar.mFuelType);
/* 34: */ }
/* 35: */ }

View file

@ -139,8 +139,8 @@ public int adjY = 9;
registerAchievement("magic", 10, 4, ItemList.MagicEnergyConverter_LV.get(1, new Object[] {}), "titan", false);
registerAchievement("highmage", 10, 6, ItemList.MagicEnergyAbsorber_HV.get(1, new Object[] {}), "magic", false);
registerAchievement("artificaldia", 11, 2, ItemList.IC2_Industrial_Diamond.get(1, new Object[] {}), "titan", false);
registerAchievement("muchsteam", 12, 1, ItemList.LargeTurbine.get(1, new Object[] {}), "titan", false);
registerAchievement("efficientsteam", 12, 3, ItemList.LargeTurbine.get(1, new Object[] {}), "muchsteam", false);
registerAchievement("muchsteam", 12, 1, ItemList.LargeSteamTurbine.get(1, new Object[] {}), "titan", false);
registerAchievement("efficientsteam", 12, 3, ItemList.LargeSteamTurbine.get(1, new Object[] {}), "muchsteam", false);
registerAchievement("upgrade", 14, 0, ItemList.Casing_Coil_Kanthal.get(1, new Object[] {}), "titan", false);
registerAchievement("tungsten", 16, 0, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), "upgrade", false);
@ -261,18 +261,19 @@ public int adjY = 9;
}
public void issueAchivementHatchFluid(EntityPlayer player, FluidStack fluid){
System.out.println("fluidAchievement "+fluid.getFluid().getUnlocalizedName());
if (player == null||fluid==null) {
return;
}
if(fluid.getFluid().getUnlocalizedName().equals("plasma.helium")){
if(fluid.getFluid().getUnlocalizedName().equals("fluid.plasma.helium")){
issueAchievement(player, "fusion");
}else if(fluid.getFluid().getUnlocalizedName().equals("molten.europium")){
}else if(fluid.getFluid().getUnlocalizedName().equals("fluid.molten.europium")){
issueAchievement(player, "advancing");
}else if(fluid.getFluid().getUnlocalizedName().equals("molten.americum")){
}else if(fluid.getFluid().getUnlocalizedName().equals("fluid.molten.americium")){
issueAchievement(player, "tothelimit");
}else if(fluid.getFluid().getUnlocalizedName().equals("molten.neutronium")){
}else if(fluid.getFluid().getUnlocalizedName().equals("fluid.molten.neutronium")){
issueAchievement(player, "denseaspossible");
}else if(fluid.getFluid().getUnlocalizedName().equals("plasma.nitrogen")){
}else if(fluid.getFluid().getUnlocalizedName().equals("fluid.plasma.nitrogen")){
issueAchievement(player, "higherefficency");
}
}
@ -367,6 +368,12 @@ public int adjY = 9;
issueAchievement(player, "alienpower");
}else if(stack.getUnlocalizedName().startsWith("gt.blockmachines.basicmachine.replicator.tier.")){
issueAchievement(player, "replication");
}else if(stack.getUnlocalizedName().equals("gt.blockmachines.basicgenerator.plasmagenerator.tier.07")){
issueAchievement(player, "fullefficiency");
}else if(stack.getUnlocalizedName().equals("gt.blockmachines.multimachine.largeturbine")){
issueAchievement(player, "muchsteam");
}else if(stack.getUnlocalizedName().equals("gt.blockmachines.multimachine.largehpturbine")){
issueAchievement(player, "efficientsteam");
}
}else if(stack.getUnlocalizedName().equals("gt.Thoriumcell")){
issueAchievement(player, "newfuel");
@ -379,7 +386,6 @@ public int adjY = 9;
}else if(stack.getUnlocalizedName().equals("gt.blockcasings.15")){
issueAchievement(player, "conducting");
}
}
@SubscribeEvent
@ -457,6 +463,8 @@ public int adjY = 9;
issueAchievement(player, "manipulation");
}else if(stack.getUnlocalizedName().equals("gt.metaitem.01.32729")){
issueAchievement(player, "filterregulate");
}else if(stack.getUnlocalizedName().equals("gt.metaitem.01.32605")){
issueAchievement(player, "whatnow");
}
}else if(stack.getUnlocalizedName().equals("ic2.itemPartCircuitAdv")){
issueAchievement(player, "stepforward");

View file

@ -679,22 +679,28 @@ public class GT_MachineRecipeLoader
GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.AnnealedCopper, 1L), GT_Values.NI, 500, 120, 1200);
GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.AnnealedCopper, 1L), GT_Values.NI, 500, 120, 1200);
// GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Tritium.getGas(125), FluidRegistry.getFluidStack("heliumplasma", 125), 16, 4096, 40000000);
// GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Helium_3.getGas(125), FluidRegistry.getFluidStack("heliumplasma", 125), 16, 2048, 60000000);
// GT_Values.RA.addFusionReactorRecipe(Materials.Lithium.getMolten(9), Materials.Tungsten.getMolten(9), Materials.Iridium.getMolten(9), 32, 32768, 150000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Tritium.getGas(125), Materials.Helium.getPlasma(125), 16, 4096, 40000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Helium_3.getGas(125), Materials.Helium.getPlasma(125), 16, 2048, 60000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(9), Materials.Tungsten.getMolten(9), Materials.Platinum.getMolten(9), 32, 32768, 300000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Neodymium.getMolten(9), Materials.Hydrogen.getGas(27), Materials.Europium.getMolten(9), 64, 24576, 150000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Lutetium.getMolten(9), Materials.Chrome.getMolten(9), Materials.Americium.getMolten(9), 96, 49152, 200000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Plutonium.getMolten(9), Materials.Thorium.getMolten(9), Materials.Naquadah.getMolten(9), 64, 32768, 300000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Americium.getMolten(16), Materials.Naquadria.getMolten(16), Materials.Neutronium.getMolten(1), 1200, 98304, 600000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(9), Materials.Deuterium.getGas(375), Materials.Nitrogen.getPlasma(125), 16, 16384, 180000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Lithium.getMolten(9), Materials.Tungsten.getMolten(9), Materials.Iridium.getMolten(9), 32, 32768, 150000000);
GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Tritium.getGas(125), Materials.Helium.getPlasma(125), 16, 4096, 40000000); //Mark 1 Cheap //
GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Helium_3.getGas(125), Materials.Helium.getPlasma(125), 16, 2048, 60000000); //Mark 1 Expensive //
GT_Values.RA.addCannerRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Lithium, 1L), GT_ModHandler.getIC2Item("reactorLithiumCell", 1) , null, 16, 64);
GT_Values.RA.addFluidExtractionRecipe(GT_ModHandler.getIC2Item("TritiumCell", 1), GT_ModHandler.getIC2Item("fuelRod", 1), Materials.Tritium.getGas(9), 10000, 16, 64);
GT_Values.RA.addFusionReactorRecipe(Materials.Carbon.getMolten(144), Materials.Helium_3.getGas(144), Materials.Oxygen.getPlasma(144), 20, 4096, 80000000); //Mark 1 Expensive //
GT_Values.RA.addFusionReactorRecipe(Materials.Aluminium.getMolten(144), Materials.Lithium.getMolten(144), Materials.Sulfur.getPlasma(144), 20, 10240, 240000000); //Mark 2 Cheap
GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(9), Materials.Deuterium.getGas(375), Materials.Nitrogen.getPlasma(125), 16, 16384, 180000000); //Mark 2 Expensive //
GT_Values.RA.addFusionReactorRecipe(Materials.Silicon.getMolten(9), Materials.Magnesium.getMolten(9), Materials.Iron.getPlasma(9), 20, 8192, 360000000); //Mark 3 Cheap //
GT_Values.RA.addFusionReactorRecipe(Materials.Potassium.getMolten(144), Materials.Fluorine.getGas(144), Materials.Nickel.getPlasma(144), 20, 32768, 480000000); //Mark 3 Expensive //
GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(9), Materials.Tungsten.getMolten(9), Materials.Platinum.getMolten(9), 32, 32768, 300000000); //
GT_Values.RA.addFusionReactorRecipe(Materials.Neodymium.getMolten(9), Materials.Hydrogen.getGas(27), Materials.Europium.getMolten(9), 64, 24576, 150000000); //
GT_Values.RA.addFusionReactorRecipe(Materials.Lutetium.getMolten(9), Materials.Chrome.getMolten(9), Materials.Americium.getMolten(9), 96, 49152, 200000000); //
GT_Values.RA.addFusionReactorRecipe(Materials.Plutonium.getMolten(9), Materials.Thorium.getMolten(9), Materials.Naquadah.getMolten(9), 64, 32768, 300000000); //
GT_Values.RA.addFusionReactorRecipe(Materials.Americium.getMolten(16), Materials.Naquadria.getMolten(16), Materials.Neutronium.getMolten(1), 1200, 98304, 600000000); //
GT_ModHandler.removeRecipeByOutput(ItemList.IC2_Fertilizer.get(1L, new Object[0]));
GT_Values.RA.addImplosionRecipe(ItemList.IC2_Compressed_Coal_Chunk.get(1L, new Object[0]), 8, ItemList.IC2_Industrial_Diamond.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L));
// GT_Values.RA.addDistillationRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oil, 16L), 32, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 16L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 16L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Methane, 15L), 4000, 64);
// GT_Values.RA.addDistillationRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Biomass, 3L), 0, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ethanol, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), ItemList.IC2_Fertilizer.get(1L, new Object[0]), 500, 64);
GT_Values.RA.addDistillationTowerRecipe(Materials.Oil.getFluid(64L), new FluidStack[]{Materials.Lubricant.getFluid(16L) , Materials.Fuel.getFluid(64L), Materials.SulfuricAcid.getFluid(64L), Materials.Glyceryl.getFluid(4L), Materials.Methane.getGas(60L)},null, 16, 64);
GT_Values.RA.addDistillationTowerRecipe(new FluidStack(ItemList.sOilLight, 128), new FluidStack[]{Materials.Lubricant.getFluid(16L) , Materials.Fuel.getFluid(64L), Materials.SulfuricAcid.getFluid(64L), Materials.Glyceryl.getFluid(4L), Materials.Methane.getGas(60L)}, null, 16, 64);
GT_Values.RA.addDistillationTowerRecipe(new FluidStack(ItemList.sOilMedium, 64), new FluidStack[]{Materials.Lubricant.getFluid(16L) , Materials.Fuel.getFluid(64L), Materials.SulfuricAcid.getFluid(64L), Materials.Glyceryl.getFluid(4L), Materials.Methane.getGas(60L)}, null, 16, 64);
@ -1064,7 +1070,9 @@ public class GT_MachineRecipeLoader
GT_Values.RA.addCentrifugeRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1L), GT_Values.NI, GT_Values.NF, Materials.Helium.getGas(120L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Platinum, 1L), new ItemStack(Blocks.sand, 1), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 625, 625, 9000, 0, 0, 0 }, 320, 20);
GT_Values.RA.addCentrifugeRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Netherrack, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Coal, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1L), GT_Values.NI, GT_Values.NI, new int[] { 5625, 9900, 5625, 625, 0, 0 }, 160, 20);
GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.soul_sand, 1), GT_Values.NI, GT_Values.NF, Materials.Oil.getFluid(80L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Saltpeter, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Coal, 1L), new ItemStack(Blocks.sand, 1), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[] { 8000, 2000, 9000, 0, 0, 0 }, 200, 80);
GT_Values.RA.addCentrifugeRecipe(GT_Values.NI, GT_Values.NI, Materials.Lava.getFluid(100L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Silver, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tantalum, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tungsten, 1L), new int[] { 2000, 1000, 250, 250, 250, 125 }, 40, 80);
GT_Values.RA.addCentrifugeRecipe(GT_Values.NI, GT_Values.NI, Materials.Lava.getFluid(100L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Silver, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tantalum, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tungsten, 1L), new int[] { 2000, 1000, 250, 250, 250, 125 }, 80, 80);
GT_Values.RA.addCentrifugeRecipe(GT_Values.NI, GT_Values.NI,FluidRegistry.getFluidStack("ic2pahoehoelava", 100), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Silver, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tantalum, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tungsten, 1L), new int[] { 2000, 1000, 250, 250, 250, 125 }, 40, 80);
GT_Values.RA.addCentrifugeRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neodymium, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Yttrium, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Lanthanum, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cerium, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cadmium, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Caesium, 1L), new int[] { 2500, 2500, 2500, 2500, 2500, 2500 }, 64, 20);
GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("appliedenergistics2", "item.ItemMultiMaterial", 1L, 45), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.BasalticMineralSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Olivine, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Obsidian, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Basalt, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Flint, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.RareEarth, 1L), new int[] { 2000, 2000, 2000, 2000, 2000, 2000 }, 64, 20);
if (GregTech_API.sThaumcraftCompat != null)

View file

@ -202,7 +202,9 @@ import ic2.core.item.ItemRadioactive;
/* 154:155 */ GT_Mod.gregtechproxy.addFluid("Deuterium", "Deuterium", Materials.Deuterium, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Deuterium, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 155:156 */ GT_Mod.gregtechproxy.addFluid("Tritium", "Tritium", Materials.Tritium, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Tritium, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 156:157 */ GT_Mod.gregtechproxy.addFluid("Helium", "Helium", Materials.Helium, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 157:158 */ GT_Mod.gregtechproxy.addFluid("Helium-3", "Helium-3", Materials.Helium_3, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium_3, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 157:158 */ GT_Mod.gregtechproxy.addFluid("Fluorine", "Fluorine", Materials.Fluorine, 2, 53, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
///* 157:158 */ Materials.Lithium.mStandardMoltenFluid = new Fluid("lithium");
GT_Mod.gregtechproxy.addFluid("Helium-3", "Helium-3", Materials.Helium_3, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium_3, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 158:159 */ GT_Mod.gregtechproxy.addFluid("Methane", "Methane", Materials.Methane, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Methane, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 159:160 */ GT_Mod.gregtechproxy.addFluid("Nitrogen", "Nitrogen", Materials.Nitrogen, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
/* 160:161 */ GT_Mod.gregtechproxy.addFluid("NitrogenDioxide", "Nitrogen Dioxide", Materials.NitrogenDioxide, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrogenDioxide, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);

View file

@ -968,13 +968,13 @@ import net.minecraftforge.oredict.OreDictionary;
GT_ModHandler.addCraftingRecipe(ItemList.FusionComputer_ZPMV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CBC", "FMF", "CBC", 'M', ItemList.FusionComputer_LuV, 'C', OrePrefixes.circuit.get(Materials.Master), 'F', ItemList.Field_Generator_IV, 'B', OrePrefixes.plate.get(Materials.Europium) });
GT_ModHandler.addCraftingRecipe(ItemList.FusionComputer_UV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CBC", "FMF", "CBC", 'M', ItemList.FusionComputer_ZPMV, 'C', OrePrefixes.circuit.get(Materials.Master), 'F', ItemList.Field_Generator_IV, 'B', OrePrefixes.plate.get(Materials.Americium) });
ItemList.Generator_Plasma_IV.set(new GT_MetaTileEntity_PlasmaGenerator(1196, "basicgenerator.plasmagenerator.tier.05", "Plasma Generator Mark I",5).getStackForm(1L));
ItemList.Generator_Plasma_LuV.set(new GT_MetaTileEntity_PlasmaGenerator(1197, "basicgenerator.plasmagenerator.tier.06", "Plasma Generator Mark II",6).getStackForm(1L));
ItemList.Generator_Plasma_ZPMV.set(new GT_MetaTileEntity_PlasmaGenerator(1198, "basicgenerator.plasmagenerator.tier.07", "Plasma Generator Mark III",7).getStackForm(1L));
ItemList.Generator_Plasma_IV.set(new GT_MetaTileEntity_PlasmaGenerator(1196, "basicgenerator.plasmagenerator.tier.05", "Plasma Generator Mark I",4).getStackForm(1L));
ItemList.Generator_Plasma_LuV.set(new GT_MetaTileEntity_PlasmaGenerator(1197, "basicgenerator.plasmagenerator.tier.06", "Plasma Generator Mark II",5).getStackForm(1L));
ItemList.Generator_Plasma_ZPMV.set(new GT_MetaTileEntity_PlasmaGenerator(1198, "basicgenerator.plasmagenerator.tier.07", "Plasma Generator Mark III",6).getStackForm(1L));
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_ZPM, Character.valueOf('F'), ItemList.Field_Generator_HV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.cableGt04.get(Materials.Tungsten), Character.valueOf('U'), OrePrefixes.stick.get(Materials.Uranium235) });
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_LuV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_UV, Character.valueOf('F'), ItemList.Field_Generator_EV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.wireGt04.get(Materials.Superconductor), Character.valueOf('U'), OrePrefixes.stick.get(Materials.Plutonium241) });
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_ZPMV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_MAX, Character.valueOf('F'), ItemList.Field_Generator_IV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.wireGt04.get(Materials.Superconductor), Character.valueOf('U'), OrePrefixes.stick.get(Materials.NaquadahEnriched) });
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_LuV, Character.valueOf('F'), ItemList.Field_Generator_HV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.cableGt04.get(Materials.Tungsten), Character.valueOf('U'), OrePrefixes.stick.get(Materials.Plutonium241) });
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_LuV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_ZPM, Character.valueOf('F'), ItemList.Field_Generator_EV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.wireGt04.get(Materials.Superconductor), Character.valueOf('U'), OrePrefixes.stick.get(Materials.Europium) });
GT_ModHandler.addCraftingRecipe(ItemList.Generator_Plasma_ZPMV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "UCU", "FMF", "WCW", Character.valueOf('M'), ItemList.Hull_UV, Character.valueOf('F'), ItemList.Field_Generator_IV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('W'), OrePrefixes.wireGt04.get(Materials.Superconductor), Character.valueOf('U'), OrePrefixes.stick.get(Materials.Americium) });
ItemList.Processing_Array.set(new GT_MetaTileEntity_ProcessingArray(1199,"multimachine.processingarray","Processing Array").getStackForm(1L));
GT_ModHandler.addCraftingRecipe(ItemList.Processing_Array.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CTC", "FMF", "CBC", 'M', ItemList.Hull_EV, 'B', OrePrefixes.pipeLarge.get(Materials.StainlessSteel), 'C', OrePrefixes.circuit.get(Materials.Master), 'F', ItemList.Robot_Arm_EV, 'T', ItemList.Energy_LapotronicOrb });
@ -982,7 +982,16 @@ import net.minecraftforge.oredict.OreDictionary;
ItemList.Distillation_Tower.set(new GT_MetaTileEntity_DistillationTower(1126, "multimachine.distillationtower", "Distillation Tower").getStackForm(1L));
GT_ModHandler.addCraftingRecipe(ItemList.Distillation_Tower.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CBC", "FMF", "CBC", 'M', ItemList.Hull_EV, 'B', OrePrefixes.pipeLarge.get(Materials.StainlessSteel), 'C', OrePrefixes.circuit.get(Materials.Master), 'F', ItemList.Electric_Pump_EV});
ItemList.LargeTurbine.set(new GT_MetaTileEntity_LargeTurbine(1131, "multimachine.largeturbine", "Large Turbine").getStackForm(1L));
ItemList.LargeSteamTurbine.set(new GT_MetaTileEntity_LargeTurbine_Steam(1131, "multimachine.largeturbine", "Large Steam Turbine").getStackForm(1L));
ItemList.LargeGasTurbine.set(new GT_MetaTileEntity_LargeTurbine_Gas(1151, "multimachine.largegasturbine", "Large Gas Turbine").getStackForm(1L));
ItemList.LargeHPSteamTurbine.set(new GT_MetaTileEntity_LargeTurbine_HPSteam(1152, "multimachine.largehpturbine", "Large High Pressure Steam Turbine").getStackForm(1L));
ItemList.LargePlasmaTurbine.set(new GT_MetaTileEntity_LargeTurbine_Plasma(1153, "multimachine.largeplasmaturbine", "Large Plasma Generator").getStackForm(1L));
GT_ModHandler.addCraftingRecipe(ItemList.LargeSteamTurbine.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CPC", "PMP", "BPB", 'M', ItemList.Hull_HV, 'B', OrePrefixes.pipeLarge.get(Materials.StainlessSteel), 'C', OrePrefixes.circuit.get(Materials.Advanced), 'P', OrePrefixes.gearGt.get(Materials.Steel)});
GT_ModHandler.addCraftingRecipe(ItemList.LargeGasTurbine.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CPC", "PMP", "BPB", 'M', ItemList.Hull_EV, 'B', OrePrefixes.pipeLarge.get(Materials.Titanium), 'C', OrePrefixes.circuit.get(Materials.Elite), 'P', OrePrefixes.gearGt.get(Materials.Titanium)});
GT_ModHandler.addCraftingRecipe(ItemList.LargeHPSteamTurbine.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CPC", "PMP", "BPB", 'M', ItemList.Hull_IV, 'B', OrePrefixes.pipeLarge.get(Materials.TungstenSteel), 'C', OrePrefixes.circuit.get(Materials.Master), 'P', OrePrefixes.gearGt.get(Materials.TungstenSteel)});
GT_ModHandler.addCraftingRecipe(ItemList.LargePlasmaTurbine.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CPC", "PMP", "BPB", 'M', ItemList.Hull_UV, 'B', OrePrefixes.pipeHuge.get(Materials.TungstenSteel), 'C', OrePrefixes.circuit.get(Materials.Master), 'P', OrePrefixes.gearGt.get(Materials.TungstenSteel)});
ItemList.Pump_LV.set(new GT_MetaTileEntity_Pump(1140, "basicmachine.pump.tier.01", "Basic Pump",1).getStackForm(1L));
ItemList.Pump_MV.set(new GT_MetaTileEntity_Pump(1141, "basicmachine.pump.tier.02", "Advanced Pump",2).getStackForm(1L));
@ -1011,6 +1020,8 @@ import net.minecraftforge.oredict.OreDictionary;
GT_ModHandler.addCraftingRecipe(ItemList.MobRep_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "EEE", " M ", "CCC", 'M', ItemList.Hull_EV, 'E', ItemList.Emitter_EV.get(1L, new Object[0]), 'C', OrePrefixes.circuit.get(Materials.Data)});
GT_ModHandler.addCraftingRecipe(ItemList.MobRep_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "EEE", " M ", "CCC", 'M', ItemList.Hull_IV, 'E', ItemList.Emitter_IV.get(1L, new Object[0]), 'C', OrePrefixes.circuit.get(Materials.Elite)});
ItemList.Machine_Multi_HeatExchanger.set(new GT_MetaTileEntity_HeatExchanger(1154, "multimachine.heatexchanger", "Large Heat Exchanger").getStackForm(1L));
GT_ModHandler.addCraftingRecipe(ItemList.Machine_Multi_HeatExchanger.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "WCW", "CMC", "WCW", Character.valueOf('M'), ItemList.Casing_Pipe_Titanium, Character.valueOf('C'), OrePrefixes.pipeMedium.get(Materials.Titanium), Character.valueOf('W'), ItemList.Electric_Pump_EV});
}
/* 981: */
/* 982: */ private static void run4()

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,5 @@
{
"animation":{
"frametime":2
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B