From 555492921a5bd9c0f62195a633e0f5a1da627a11 Mon Sep 17 00:00:00 2001 From: Alkalus <3060479+draknyte1@users.noreply.github.com> Date: Fri, 6 Jul 2018 05:53:11 +1000 Subject: % Rebalanced Pollution for some Multiblocks and added some to others. (This may break existing Multiblocks which may now require a muffler hatch.) Closes #328. % Moved intermod postInit to before recipe generator runs. (Fixes issues where recipes got queued after the generator ran.) $ Fixed some recipes not working in the Large Centrifuge and Large Electrolyzer. Closes #324, Closes #321. $ Fixed some Forestry Frame Recipes not working as intended. $ Further improvement to recipe system. --- .../api/objects/minecraft/ShapedRecipe.java | 63 ++- src/Java/gtPlusPlus/core/common/CommonProxy.java | 2 +- .../gtPlusPlus/core/recipe/RECIPES_General.java | 4 + .../gtPlusPlus/core/recipe/RECIPES_Machines.java | 1 + .../core/util/minecraft/RecipeUtils.java | 107 +----- .../forestry/bees/recipe/FR_Gregtech_Recipes.java | 50 +-- .../base/GregtechMeta_MultiBlockBase.java | 235 ++++++----- .../machines/multi/misc/GMTE_AmazonPackager.java | 17 +- .../multi/misc/GregtechMTE_TeslaTower.java | 5 +- ...regtechMetaTileEntity_IndustrialCentrifuge.java | 14 +- .../GregtechMetaTileEntity_IndustrialCokeOven.java | 3 +- ...echMetaTileEntity_IndustrialCuttingMachine.java | 8 +- ...gtechMetaTileEntity_IndustrialElectrolyzer.java | 7 +- .../GregtechMetaTileEntity_IndustrialExtruder.java | 3 +- ...GregtechMetaTileEntity_IndustrialMacerator.java | 3 +- .../GregtechMetaTileEntity_IndustrialMixer.java | 3 +- ...gtechMetaTileEntity_IndustrialMultiMachine.java | 18 +- ...regtechMetaTileEntity_IndustrialPlatePress.java | 3 +- .../GregtechMetaTileEntity_IndustrialSifter.java | 6 +- .../GregtechMetaTileEntity_IndustrialSinter.java | 1 + ...MetaTileEntity_IndustrialThermalCentrifuge.java | 3 +- ...techMetaTileEntity_IndustrialVacuumFreezer.java | 7 +- ...GregtechMetaTileEntity_IndustrialWashPlant.java | 3 +- .../GregtechMetaTileEntity_IndustrialWireMill.java | 3 +- .../advanced/GregtechMetaTileEntity_Adv_EBF.java | 428 +++++++++++---------- .../GregtechMetaTileEntity_Adv_Fusion_MK4.java | 143 +++---- .../GregtechMetaTileEntity_Adv_Implosion.java | 216 +++++------ .../multi/production/GT4Entity_AutoCrafter.java | 3 +- .../multi/production/GT4Entity_ThermalBoiler.java | 3 +- .../production/GregtechMTE_FastNeutronReactor.java | 1 + .../production/GregtechMTE_NuclearReactor.java | 1 + .../GregtechMetaTileEntityGeneratorArray.java | 5 +- .../production/GregtechMetaTileEntityTreeFarm.java | 1 + .../GregtechMetaTileEntity_AlloyBlastSmelter.java | 1 + .../GregtechMetaTileEntity_Cyclotron.java | 3 +- ...egtechMetaTileEntity_IndustrialFishingPond.java | 3 +- .../GregtechMetaTileEntity_MassFabricator.java | 3 +- .../GregtechMetaTileEntity_Refinery.java | 1 + 38 files changed, 724 insertions(+), 657 deletions(-) (limited to 'src/Java') diff --git a/src/Java/gtPlusPlus/api/objects/minecraft/ShapedRecipe.java b/src/Java/gtPlusPlus/api/objects/minecraft/ShapedRecipe.java index f113a67996..4be90061a0 100644 --- a/src/Java/gtPlusPlus/api/objects/minecraft/ShapedRecipe.java +++ b/src/Java/gtPlusPlus/api/objects/minecraft/ShapedRecipe.java @@ -3,6 +3,12 @@ package gtPlusPlus.api.objects.minecraft; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.data.Pair; +import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.everglades.dimension.Dimension_Everglades; +import gtPlusPlus.xmod.forestry.bees.items.FR_ItemRegistry; +import gtPlusPlus.xmod.ic2.item.IC2_Items; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.ShapedOreRecipe; @@ -11,6 +17,8 @@ public class ShapedRecipe { private final static String CHARS = "abcdefghijklmnop"; public ShapedOreRecipe mRecipe; + ItemStack[] mBlackList = null; + public ShapedRecipe( Object aInput1, Object aInput2, Object aInput3, Object aInput4, Object aInput5, Object aInput6, @@ -27,11 +35,18 @@ public class ShapedRecipe { char[] aChar = new char[9]; String[] aLoggingInfo = new String[9]; - - + if (mBlackList == null) { + mBlackList = new ItemStack[] { + ItemUtils.getSimpleStack(ModBlocks.blockNet), + ItemUtils.getSimpleStack(ModBlocks.blockXpConverter), + ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard), + ItemUtils.getSimpleStack(ModBlocks.blockMiningExplosive), + ItemUtils.getSimpleStack(Dimension_Everglades.blockPortalFrame), + }; + } + //Just to be safe try { - Logger.RECIPE("======== B R E A K P O I N T ========="); int xSlot = 0; int xNull = 0; for (Object u : aInputs) { @@ -40,7 +55,10 @@ public class ShapedRecipe { mInfo = (String) u; Logger.RECIPE("Input slot "+xSlot+++" contains "+mInfo); } - else if (u instanceof ItemStack) { + else if (u instanceof ItemStack || u instanceof Item) { + if (u instanceof Item) { + u = ItemUtils.getSimpleStack((Item) u); + } mInfo = ((ItemStack) u).getDisplayName(); Logger.RECIPE("Input slot "+xSlot+++" contains "+mInfo); } @@ -51,6 +69,13 @@ public class ShapedRecipe { Logger.RECIPE("Found "+xNull+" null inputs."); //Check if the output is invalid if (aOutput != null && xNull < 9) { + + for (ItemStack q : mBlackList) { + if (q.isItemEqual(aOutput)) { + Logger.RECIPE("Found recipe Alkalus is Debugging."); + } + } + Object[] mVarags2 = null; Logger.RECIPE("Generating Shaped Crafting Recipe for "+aOutput.getDisplayName()); @@ -75,7 +100,10 @@ public class ShapedRecipe { if (stack instanceof String) { mInfo = (String) stack; } - else if (stack instanceof ItemStack) { + else if (stack instanceof ItemStack || stack instanceof Item) { + if (stack instanceof Item) { + stack = ItemUtils.getSimpleStack((Item) stack); + } mInfo = ((ItemStack) stack).getDisplayName(); } aRecipePairs.put(new Pair(CHARS.charAt(aCharSlot), stack)); @@ -120,11 +148,11 @@ public class ShapedRecipe { //Rebuild the Map without spaces aRecipePairs.clear(); aCharSlot = 0; - + //The amount of spaces in the Varags that the Shape strings takes. //Currently they are inserted as a single array into index 0. final int KEY_COUNTER = 1; - + int counter = KEY_COUNTER; for (Object stack : aInputs) { if (stack != null) { @@ -132,7 +160,10 @@ public class ShapedRecipe { if (stack instanceof String) { mInfo = (String) stack; } - else if (stack instanceof ItemStack) { + else if (stack instanceof ItemStack || stack instanceof Item) { + if (stack instanceof Item) { + stack = ItemUtils.getSimpleStack((Item) stack); + } mInfo = ((ItemStack) stack).getDisplayName(); } aRecipePairs.put(new Pair(CHARS.charAt(aCharSlot), stack)); @@ -156,19 +187,27 @@ public class ShapedRecipe { int counter2 = KEY_COUNTER; for (Pair r : aRecipePairs) { char c = r.getKey(); - Object o = r.getValue(); + Object o = r.getValue(); + + if (o instanceof ItemStack || o instanceof Item) { + if (o instanceof Item) { + o = ItemUtils.getSimpleStack((Item) o); + } + o = ((ItemStack) o).copy(); + } + mVarags2[counter2] = (char) c; mVarags2[counter2+1] = o; counter2 += 2; } - + Logger.RECIPE("Recipe Summary"); Logger.RECIPE("+ = + = + = +"); Logger.RECIPE("= "+aChar[0]+" = "+aChar[1]+" = "+aChar[2]+" ="); Logger.RECIPE("+ = + = + = +"); Logger.RECIPE("= "+aChar[3]+" = "+aChar[4]+" = "+aChar[5]+" ="); Logger.RECIPE("+ = + = + = +"); - Logger.RECIPE("=" +aChar[6]+" = "+aChar[7]+" = "+aChar[8]+" ="); + Logger.RECIPE("= "+aChar[6]+" = "+aChar[7]+" = "+aChar[8]+" ="); Logger.RECIPE("+ = + = + = +"); for (int r=0;r<9;r++) { if (aChar[r] != ' ') { @@ -213,7 +252,7 @@ public class ShapedRecipe { Logger.RECIPE("[Fix][1] Error thrown when making a ShapedOreRecipe object."); t.printStackTrace(); } - + } } diff --git a/src/Java/gtPlusPlus/core/common/CommonProxy.java b/src/Java/gtPlusPlus/core/common/CommonProxy.java index 6035bec37d..462f08184f 100644 --- a/src/Java/gtPlusPlus/core/common/CommonProxy.java +++ b/src/Java/gtPlusPlus/core/common/CommonProxy.java @@ -173,8 +173,8 @@ public class CommonProxy { COMPAT_HANDLER.RemoveRecipesFromOtherMods(); COMPAT_HANDLER.InitialiseHandlerThenAddRecipes(); COMPAT_HANDLER.startLoadingGregAPIBasedRecipes(); - COMPAT_HANDLER.runQueuedRecipes(); COMPAT_IntermodStaging.postInit(); + COMPAT_HANDLER.runQueuedRecipes(); } diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java index 53150ba4d9..9a4367396b 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java @@ -154,6 +154,7 @@ public class RECIPES_General { } //Mining Explosive + Logger.RECIPE("[Inspection] Explosives"); if (RecipeUtils.recipeBuilder( CI.explosiveITNT, CI.explosiveTNT, CI.explosiveITNT, CI.explosiveTNT, "frameGtWroughtIron", CI.explosiveTNT, @@ -186,6 +187,7 @@ public class RECIPES_General { l++; }*/ + Logger.RECIPE("[Inspection] Wither Cage"); if (RecipeUtils.recipeBuilder( "stickBlackSteel", "plateTungstenSteel", "stickBlackSteel", "plateTungstenSteel", getSimpleStack(Items.nether_star), "plateTungstenSteel", @@ -194,6 +196,7 @@ public class RECIPES_General { Logger.INFO("Added a recipe for Wither Cages."); } + Logger.RECIPE("[Inspection] Xp Converter"); if (RecipeUtils.recipeBuilder( getSimpleStack(Items.experience_bottle), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 2, 1), getSimpleStack(Items.experience_bottle), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1), getSimpleStack(Items.nether_star), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1), @@ -230,6 +233,7 @@ public class RECIPES_General { Logger.INFO("Added a recipe for Rope."); } + Logger.RECIPE("[Inspection] Net"); if (RecipeUtils.recipeBuilder( ItemUtils.getSimpleStack(ModItems.itemRope, 1), ItemUtils.getSimpleStack(ModItems.itemRope, 1), ItemUtils.getSimpleStack(ModItems.itemRope, 1), ItemUtils.getSimpleStack(ModItems.itemRope, 1), ItemUtils.getSimpleStack(ModItems.itemRope, 1), ItemUtils.getSimpleStack(ModItems.itemRope, 1), diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java index 1cf1685f91..dbcb49d359 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java @@ -1341,6 +1341,7 @@ public class RECIPES_Machines { //Mystic Frame + Logger.RECIPE("[Inspection] Portal Frame"); if (RecipeUtils.addShapedGregtechRecipe( "circuitMaster", ItemList.Field_Generator_MV.get(1, CI.circuitTier7), "circuitElite", CI.craftingToolScrewdriver, GregtechItemList.Casing_Multi_Use.get(1), CI.craftingToolWrench, diff --git a/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java index b64c0995e7..c05438ba87 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/RecipeUtils.java @@ -28,105 +28,29 @@ import net.minecraftforge.oredict.ShapedOreRecipe; import net.minecraftforge.oredict.ShapelessOreRecipe; public class RecipeUtils { - +public static int mInvalidID = 1; public static boolean recipeBuilder(final Object slot_1, final Object slot_2, final Object slot_3, final Object slot_4, final Object slot_5, final Object slot_6, final Object slot_7, final Object slot_8, final Object slot_9, ItemStack resultItem){ - - final ArrayList validSlots = new ArrayList<>(); if (resultItem == null){ - Logger.INFO("[1234abcd] Found a recipe with an invalid output, yet had a valid inputs. Using Dummy output so recipe can be found.."); + Logger.INFO("[Fix] Found a recipe with an invalid output, yet had a valid inputs. Using Dummy output so recipe can be found.."); resultItem = ItemUtils.getItemStackOfAmountFromOreDict("givemeabrokenitem", 1); + resultItem.setItemDamage(mInvalidID++); RegistrationHandler.recipesFailed++; //return false; } - - if ((slot_1 == null) && (slot_2 == null) && (slot_3 == null) && + else if ((slot_1 == null) && (slot_2 == null) && (slot_3 == null) && (slot_4 == null) && (slot_5 == null) && (slot_6 == null) && (slot_7 == null) && (slot_8 == null) && (slot_9 == null)){ - Logger.INFO("[1234abcd] Found a recipe with 0 inputs, yet had a valid output."); - Logger.INFO("[1234abcd] Error found while adding a recipe for: "+resultItem.getDisplayName()+" | Please report this issue on Github."); + Logger.INFO("[Fix] Found a recipe with 0 inputs, yet had a valid output."); + Logger.INFO("[Fix] Error found while adding a recipe for: "+resultItem != null ? resultItem.getDisplayName() : "Bad Output Item"+" | Please report this issue on Github."); RegistrationHandler.recipesFailed++; return false; } - - /* - //Utils.LOG_WARNING("Trying to add a recipe for "+resultItem.toString()); - String a,b,c,d,e,f,g,h,i; - if (slot_1 == null){ a = " ";} else { a = "1";validSlots.add('1');validSlots.add(slot_1);} - Logger.WARNING(a); - if (slot_2 == null){ b = " ";} else { b = "2";validSlots.add('2');validSlots.add(slot_2);} - Logger.WARNING(b); - if (slot_3 == null){ c = " ";} else { c = "3";validSlots.add('3');validSlots.add(slot_3);} - Logger.WARNING(c); - if (slot_4 == null){ d = " ";} else { d = "4";validSlots.add('4');validSlots.add(slot_4);} - Logger.WARNING(d); - if (slot_5 == null){ e = " ";} else { e = "5";validSlots.add('5');validSlots.add(slot_5);} - Logger.WARNING(e); - if (slot_6 == null){ f = " ";} else { f = "6";validSlots.add('6');validSlots.add(slot_6);} - Logger.WARNING(f); - if (slot_7 == null){ g = " ";} else { g = "7";validSlots.add('7');validSlots.add(slot_7);} - Logger.WARNING(g); - if (slot_8 == null){ h = " ";} else { h = "8";validSlots.add('8');validSlots.add(slot_8);} - Logger.WARNING(h); - if (slot_9 == null){ i = " ";} else { i = "9";validSlots.add('9');validSlots.add(slot_9);} - Logger.WARNING(i); - - - Logger.ERROR("_______"); - final String lineOne = a+b+c; - Logger.ERROR("|"+a+"|"+b+"|"+c+"|"); - Logger.ERROR("_______"); - final String lineTwo = d+e+f; - Logger.ERROR("|"+d+"|"+e+"|"+f+"|"); - Logger.ERROR("_______"); - final String lineThree = g+h+i; - Logger.ERROR("|"+g+"|"+h+"|"+i+"|"); - Logger.ERROR("_______"); - - //validSlots.add(0, lineOne); - //validSlots.add(1, lineTwo); - //validSlots.add(2, lineThree); - boolean advancedLog = false; - if (CORE.DEBUG){ - advancedLog = true; - } - if (advancedLog){ - int j = 0; - final int l = validSlots.size(); - Logger.WARNING("l:"+l); - while (j <= l) { - Logger.WARNING("j:"+j); - if (j <= 2){ - Logger.WARNING("ArrayList Values: "+validSlots.get(j)); - Logger.WARNING("Adding 1."); - j++; - } - else if (j == l){ - Logger.WARNING("Done iteration."); - break; - } - else { - Logger.WARNING("ArrayList Values: '"+validSlots.get(j)+"' "+validSlots.get(j+1)); - if (j < (l-2)){ - Logger.WARNING("Adding 2."); - j=j+2; - } - else { - Logger.WARNING("Done iteration."); - break; - } - } - if ((validSlots.get(j) instanceof String) || (validSlots.get(j) instanceof ItemStack)){ - //Utils.LOG_WARNING("Is Valid: "+validSlots.get(j)); - } - } - }*/ Object[] o = new Object[] {slot_1, slot_2, slot_3, slot_4, slot_5, slot_6, slot_7, slot_8, slot_9}; try { int size = COMPAT_HANDLER.mRecipesToGenerate.size(); COMPAT_HANDLER.mRecipesToGenerate.put(new InternalRecipeObject(o, resultItem, false)); - //Utils.LOG_WARNING("Success! Added a recipe for "+resultItem.getDisplayName()); if (COMPAT_HANDLER.mRecipesToGenerate.size() > size) { if (!COMPAT_HANDLER.areInitItemsLoaded){ @@ -144,7 +68,7 @@ public class RecipeUtils { //k.getClass(); //k.printStackTrace(); //k.getLocalizedMessage(); - Logger.INFO("@@@: Invalid Recipe detected for: "+resultItem != null ? resultItem.getUnlocalizedName() : "INVALID OUTPUT ITEM"); + Logger.INFO("[Fix] Invalid Recipe detected for: "+resultItem != null ? resultItem.getUnlocalizedName() : "INVALID OUTPUT ITEM"); if (!COMPAT_HANDLER.areInitItemsLoaded){ RegistrationHandler.recipesFailed++; } @@ -421,8 +345,7 @@ public class RecipeUtils { public static boolean addShapedGregtechRecipe(final Object[] inputs, ItemStack output){ if (inputs.length != 9){ - Logger.WARNING("Input array for "+output.getDisplayName()+" does not equal 9. "+inputs.length+" is the actual size."); - + Logger.RECIPE("[Fix] Input array for "+output.getDisplayName()+" does not equal 9. "+inputs.length+" is the actual size."); RegistrationHandler.recipesFailed++; return false; } @@ -432,21 +355,19 @@ public class RecipeUtils { inputs[x] = " "; Logger.WARNING("Input slot "+x+" changed from NULL to a blank space."); } - else if (!(inputs[x] instanceof ItemStack) && !(inputs[x] instanceof String)){ + else if (!(inputs[x] instanceof ItemStack) && !(inputs[x] instanceof String) && !(inputs[x] instanceof Item)){ if (output != null){ - Logger.WARNING("Invalid Item inserted into inputArray. Item:"+output.getDisplayName()+" has a bad recipe. Please report to Alkalus."); - + Logger.RECIPE("[Fix] Invalid Item inserted into inputArray. Item:"+output.getDisplayName()+" has a bad recipe. Please report to Alkalus."); RegistrationHandler.recipesFailed++; return false; } else { - Logger.WARNING("Output is Null for a recipe. Report to Alkalus."); + Logger.RECIPE("[Fix] Output is Null for a recipe. Report to Alkalus."); output = ItemUtils.getItemStackOfAmountFromOreDict("sadibasdkjnad", 1); } } } - int size = COMPAT_HANDLER.mGtRecipesToGenerate.size(); COMPAT_HANDLER.mGtRecipesToGenerate.put(new InternalRecipeObject(inputs, output, true)); @@ -557,6 +478,9 @@ public class RecipeUtils { if (o instanceof ItemStack) { aFiltered[aValid++] = o; } + else if (o instanceof Item) { + aFiltered[aValid++] = ItemUtils.getSimpleStack((Item) o); + } else if (o instanceof String) { aFiltered[aValid++] = o; } @@ -573,6 +497,9 @@ public class RecipeUtils { if (p instanceof ItemStack) { validCounter++; } + else if (p instanceof Item) { + validCounter++; + } else if (p instanceof String) { validCounter++; } diff --git a/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java b/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java index 1df25261d1..0bba3d1f84 100644 --- a/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java +++ b/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java @@ -41,7 +41,7 @@ public class FR_Gregtech_Recipes { private static ItemStack hiveFrameSlow = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameSlow); private static ItemStack hiveFrameStalilize = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameStalilize); private static ItemStack hiveFrameArborist = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameArborist); - + public static void registerItems(){ //Magic Bee Like Frames RecipeUtils.addShapedGregtechRecipe( @@ -99,31 +99,31 @@ public class FR_Gregtech_Recipes { null, itemClayDust, null, hiveFrameClay); } - + // Frame Items added by bartimaeusnek - RecipeUtils.addShapedGregtechRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),foil_Electrum,ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1), - hiveFrameSlow); - - RecipeUtils.addShapedGregtechRecipe( - "stickLongWroughtIron","stickWroughtIron","stickLongWroughtIron", - "stickLongWroughtIron","foilWroughtIron","stickLongWroughtIron", - "stickWroughtIron","stickWroughtIron","stickWroughtIron", - hiveFrameDecay); - - RecipeUtils.addShapedGregtechRecipe( - "stickLongOsmiridium","stickOsmiridium","stickLongOsmiridium", - "stickLongOsmiridium","foilOsmiridium","stickLongOsmiridium", - "stickOsmiridium","stickOsmiridium","stickOsmiridium", - hiveFrameStalilize); - - RecipeUtils.addShapedGregtechRecipe( - "stickLongWoodSealed","stickWoodSealed","stickLongWoodSealed", - "stickLongWoodSealed",Items.paper,"stickLongWoodSealed", - "stickWoodSealed","stickWoodSealed","stickWoodSealed", - hiveFrameArborist); + RecipeUtils.addShapedGregtechRecipe( + ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1), + ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),foil_Electrum,ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1), + ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1), + hiveFrameSlow); + + RecipeUtils.addShapedGregtechRecipe( + "stickLongWroughtIron","stickWroughtIron","stickLongWroughtIron", + "stickLongWroughtIron","foilZinc","stickLongWroughtIron", + "stickWroughtIron","stickWroughtIron","stickWroughtIron", + hiveFrameDecay); + + RecipeUtils.addShapedGregtechRecipe( + "stickLongOsmiridium","stickOsmiridium","stickLongOsmiridium", + "stickLongOsmiridium","foilOsmiridium","stickLongOsmiridium", + "stickOsmiridium","stickOsmiridium","stickOsmiridium", + hiveFrameStalilize); + + RecipeUtils.addShapedGregtechRecipe( + "stickLongWoodSealed","stickWoodSealed","stickLongWoodSealed", + "stickLongWoodSealed",Items.paper,"stickLongWoodSealed", + "stickWoodSealed","stickWoodSealed","stickWoodSealed", + hiveFrameArborist); } } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java index 372db7da10..0401d7e15a 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java @@ -242,6 +242,32 @@ GT_MetaTileEntity_MultiBlockBase { return true; } + /** + * A Static {@link Method} object which holds the current status of logging. + */ + Method aLogger = null; + + public void log(String s) { + boolean isDebugLogging = false; + boolean reset = false; + if (aLogger == null || reset) { + if (isDebugLogging) { + try { + aLogger = Logger.class.getMethod("INFO", String.class); + } catch (NoSuchMethodException | SecurityException e) {} + } + else { + try { + aLogger = Logger.class.getMethod("MACHINE_INFO", String.class); + } catch (NoSuchMethodException | SecurityException e) {} + } + } + try { + aLogger.invoke(null, s); + } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {} + + } + public boolean checkRecipeGeneric() { return checkRecipeGeneric(1, 100, 0); } @@ -264,6 +290,9 @@ GT_MetaTileEntity_MultiBlockBase { int aSpeedBonusPercent, int aOutputChanceRoll) { // Based on the Processing Array. A bit overkill, but very flexible. + + + // Reset outputs and progress stats this.mEUt = 0; this.mMaxProgresstime = 0; @@ -272,24 +301,24 @@ GT_MetaTileEntity_MultiBlockBase { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - Logger.MACHINE_INFO("Running checkRecipeGeneric(0)"); + log("Running checkRecipeGeneric(0)"); GT_Recipe tRecipe = findRecipe( getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], aFluidInputs, aItemInputs); - Logger.MACHINE_INFO("Running checkRecipeGeneric(1)"); + log("Running checkRecipeGeneric(1)"); // Remember last recipe - an optimization for findRecipe() this.mLastRecipe = tRecipe; if (tRecipe == null) { - Logger.MACHINE_INFO("BAD RETURN - 1"); + log("BAD RETURN - 1"); return false; } if (!this.canBufferOutputs(tRecipe, aMaxParallelRecipes)) { - Logger.MACHINE_INFO("BAD RETURN - 2"); + log("BAD RETURN - 2"); return false; } @@ -299,23 +328,23 @@ GT_MetaTileEntity_MultiBlockBase { int parallelRecipes = 0; - Logger.MACHINE_INFO("parallelRecipes: "+parallelRecipes); - Logger.MACHINE_INFO("aMaxParallelRecipes: "+aMaxParallelRecipes); - Logger.MACHINE_INFO("tTotalEUt: "+tTotalEUt); - Logger.MACHINE_INFO("tVoltage: "+tVoltage); - Logger.MACHINE_INFO("tRecipeEUt: "+tRecipeEUt); + log("parallelRecipes: "+parallelRecipes); + log("aMaxParallelRecipes: "+aMaxParallelRecipes); + log("tTotalEUt: "+tTotalEUt); + log("tVoltage: "+tVoltage); + log("tRecipeEUt: "+tRecipeEUt); // Count recipes to do in parallel, consuming input items and fluids and considering input voltage limits for (; parallelRecipes < aMaxParallelRecipes && tTotalEUt < (tVoltage - tRecipeEUt); parallelRecipes++) { if (!tRecipe.isRecipeInputEqual(true, aFluidInputs, aItemInputs)) { - Logger.MACHINE_INFO("Broke at "+parallelRecipes+"."); + log("Broke at "+parallelRecipes+"."); break; } - Logger.MACHINE_INFO("Bumped EU from "+tTotalEUt+" to "+(tTotalEUt+tRecipeEUt)+"."); + log("Bumped EU from "+tTotalEUt+" to "+(tTotalEUt+tRecipeEUt)+"."); tTotalEUt += tRecipeEUt; } if (parallelRecipes == 0) { - Logger.MACHINE_INFO("BAD RETURN - 3"); + log("BAD RETURN - 3"); return false; } @@ -412,7 +441,7 @@ GT_MetaTileEntity_MultiBlockBase { // Play sounds (GT++ addition - GT multiblocks play no sounds) startProcess(); - Logger.MACHINE_INFO("GOOD RETURN - 1"); + log("GOOD RETURN - 1"); return true; } @@ -438,16 +467,16 @@ GT_MetaTileEntity_MultiBlockBase { (100 - percentage)); cloneRecipe.mDuration = tempTime; if (cloneRecipe.mDuration < originalTime) { - Logger.MACHINE_INFO("Generated recipe with a smaller time. | " + log("Generated recipe with a smaller time. | " + originalTime + " | " + cloneRecipe.mDuration + " |"); return cloneRecipe; } else { - Logger.MACHINE_INFO("Did not generate recipe with a smaller time. | " + log("Did not generate recipe with a smaller time. | " + originalTime + " | " + cloneRecipe.mDuration + " |"); return tRecipe; } } - Logger.MACHINE_INFO("Error generating recipe, returning null."); + log("Error generating recipe, returning null."); return null; } @@ -807,6 +836,10 @@ GT_MetaTileEntity_MultiBlockBase { public int getPollutionPerTick(ItemStack arg0) { return 0; } + + public String getPollutionTooltip() { + return "Causes " + 20 * this.getPollutionPerTick(null) + " Pollution per second"; + } @Override public void saveNBTData(NBTTagCompound aNBT) { @@ -873,116 +906,118 @@ GT_MetaTileEntity_MultiBlockBase { final boolean aNotUnificated, final boolean aDontCheckStackSizes, final long aVoltage, final FluidStack[] aFluids, final ItemStack aSpecialSlot, ItemStack... aInputs) { if (this.getRecipeMap().mRecipeList.isEmpty()) { - Logger.MACHINE_INFO("No Recipes in Map to search through."); + Logger.INFO("No Recipes in Map to search through."); return null; } GT_Recipe mRecipeResult = null; try { - if (GregTech_API.sPostloadFinished) { - if (this.getRecipeMap().mMinimalInputFluids > 0) { - if (aFluids == null) { - Logger.MACHINE_INFO("aFluids == null && minFluids > 0"); - return null; - } - int tAmount = 0; - for (final FluidStack aFluid : aFluids) { - if (aFluid != null) { - ++tAmount; + if (GregTech_API.sPostloadFinished) { + if (this.getRecipeMap().mMinimalInputFluids > 0) { + if (aFluids == null) { + Logger.INFO("aFluids == null && minFluids > 0"); + return null; } - } - if (tAmount < this.getRecipeMap().mMinimalInputFluids) { - Logger.MACHINE_INFO("Not enough fluids?"); - return null; - } - } - if (this.getRecipeMap().mMinimalInputItems > 0) { - if (aInputs == null) { - Logger.MACHINE_INFO("No inputs and minItems > 0"); - return null; - } - int tAmount = 0; - for (final ItemStack aInput : aInputs) { - if (aInput != null) { - ++tAmount; + int tAmount = 0; + for (final FluidStack aFluid : aFluids) { + if (aFluid != null) { + ++tAmount; + } + } + if (tAmount < this.getRecipeMap().mMinimalInputFluids) { + Logger.INFO("Not enough fluids?"); + return null; } } - if (tAmount < this.getRecipeMap().mMinimalInputItems) { - Logger.MACHINE_INFO("Not enough items?"); - return null; + if (this.getRecipeMap().mMinimalInputItems > 0) { + if (aInputs == null) { + Logger.INFO("No inputs and minItems > 0"); + return null; + } + int tAmount = 0; + for (final ItemStack aInput : aInputs) { + if (aInput != null) { + ++tAmount; + } + } + if (tAmount < this.getRecipeMap().mMinimalInputItems) { + Logger.INFO("Not enough items?"); + return null; + } } } - } - else { - Logger.MACHINE_INFO("Game Not Loaded properly for recipe lookup."); - } - if (aNotUnificated) { - aInputs = GT_OreDictUnificator.getStackArray(true, (Object[]) aInputs); - } - if (aRecipe != null && !aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered - && aRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - mRecipeResult = (aRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= aRecipe.mEUt*/) ? aRecipe : null; - Logger.MACHINE_INFO("x) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); - if (mRecipeResult != null) { - return mRecipeResult; + else { + Logger.INFO("Game Not Loaded properly for recipe lookup."); } - } - if (mRecipeResult == null && this.getRecipeMap().mUsualInputCount >= 0 && aInputs != null && aInputs.length > 0) { - for (final ItemStack tStack : aInputs) { - if (tStack != null) { - Collection tRecipes = this.getRecipeMap().mRecipeItemMap.get(new GT_ItemStack(tStack)); - if (tRecipes != null) { - for (final GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - mRecipeResult = (tRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt*/) - ? tRecipe - : null; - Logger.MACHINE_INFO("1) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); - //return mRecipeResult; + if (aNotUnificated) { + aInputs = GT_OreDictUnificator.getStackArray(true, (Object[]) aInputs); + } + if (aRecipe != null && !aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered + && aRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { + mRecipeResult = (aRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= aRecipe.mEUt*/) ? aRecipe : null; + Logger.INFO("x) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); + if (mRecipeResult != null) { + return mRecipeResult; + } + } + if (mRecipeResult == null && this.getRecipeMap().mUsualInputCount >= 0 && aInputs != null && aInputs.length > 0) { + for (final ItemStack tStack : aInputs) { + if (tStack != null) { + Collection tRecipes = this.getRecipeMap().mRecipeItemMap.get(new GT_ItemStack(tStack)); + if (tRecipes != null) { + for (final GT_Recipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { + mRecipeResult = (tRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt*/) + ? tRecipe + : null; + Logger.INFO("1) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); + //return mRecipeResult; + } } } - } - tRecipes = this.getRecipeMap().mRecipeItemMap - .get(new GT_ItemStack(GT_Utility.copyMetaData(32767L, new Object[]{tStack}))); - if (tRecipes != null) { - for (final GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe - && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - mRecipeResult = (tRecipe.mEnabled && aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt) - ? tRecipe - : null; - Logger.MACHINE_INFO("2) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); - //return mRecipeResult; + + //TODO - Investigate if this requires to be in it's own block + tRecipes = this.getRecipeMap().mRecipeItemMap + .get(new GT_ItemStack(GT_Utility.copyMetaData(32767L, new Object[]{tStack}))); + if (tRecipes != null) { + for (final GT_Recipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe + && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { + mRecipeResult = (tRecipe.mEnabled /*&& aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt*/) + ? tRecipe + : null; + Logger.INFO("2) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); + //return mRecipeResult; + } } } } } } - } - if (mRecipeResult == null && this.getRecipeMap().mMinimalInputItems == 0 && aFluids != null && aFluids.length > 0) { - for (final FluidStack aFluid2 : aFluids) { - if (aFluid2 != null) { - final Collection tRecipes = this.getRecipeMap().mRecipeFluidMap.get(aFluid2.getFluid()); - if (tRecipes != null) { - for (final GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe - && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - mRecipeResult = (tRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt*/) - ? tRecipe - : null; - Logger.MACHINE_INFO("3) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); - //return mRecipeResult; + if (mRecipeResult == null && this.getRecipeMap().mMinimalInputItems == 0 && aFluids != null && aFluids.length > 0) { + for (final FluidStack aFluid2 : aFluids) { + if (aFluid2 != null) { + final Collection tRecipes = this.getRecipeMap().mRecipeFluidMap.get(aFluid2.getFluid()); + if (tRecipes != null) { + for (final GT_Recipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe + && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { + mRecipeResult = (tRecipe.mEnabled/* && aVoltage * this.getRecipeMap().mAmperage >= tRecipe.mEUt*/) + ? tRecipe + : null; + Logger.INFO("3) Found Recipe? "+(mRecipeResult != null ? "true" : "false")); + //return mRecipeResult; + } } } } } } } - } catch (Throwable t) { - Logger.MACHINE_INFO("Invalid recipe lookup."); + Logger.INFO("Invalid recipe lookup."); } if (mRecipeResult == null) { - return this.getRecipeMap().findRecipe(aTileEntity, aRecipe, aNotUnificated, aDontCheckStackSizes, aVoltage, aFluids, aSpecialSlot, aInputs); + return this.getRecipeMap().findRecipe(aTileEntity, aRecipe, aNotUnificated, aDontCheckStackSizes, aVoltage, aFluids, aSpecialSlot, aInputs); } else { return mRecipeResult; diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index 146d1b9fcc..42ef0340d3 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -38,12 +38,10 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { public GMTE_AmazonPackager(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); - initFields(); } public GMTE_AmazonPackager(String aName) { super(aName); - initFields(); } @Override @@ -70,6 +68,7 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { "1x Maintenance Hatch (anywhere)", "1x Muffler (anywhere)", "Supply Depot. Casings for the rest (10 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; } @@ -102,11 +101,14 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @Override - public boolean checkRecipe(ItemStack aStack) { + public boolean checkRecipe(ItemStack aStack) { + + //Just the best place to check this~ + initFields(); + ArrayList tItems = getStoredInputs(); if (this.getGUIItemStack() != null) { - tItems.add(this.getGUIItemStack()); - + tItems.add(this.getGUIItemStack()); } ArrayList tFluids = getStoredFluids(); ItemStack[] tItemInputs = tItems.toArray(new ItemStack[tItems.size()]); @@ -258,4 +260,9 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { return 10000; } + @Override + public int getPollutionPerTick(ItemStack arg0) { + return 2; + } + } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java index 037c7d6ee6..e905324ee5 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java @@ -28,6 +28,7 @@ import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.Pair; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.entity.EntityTeslaTowerLightning; +import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.MaterialUtils; import gtPlusPlus.core.util.minecraft.PlayerUtils; @@ -87,7 +88,9 @@ public class GregtechMTE_TeslaTower extends GregtechMeta_MultiBlockBase { "1x3x1 " + casings + " pillar (Center of base)", "1x3x1 " + MaterialUtils.getMaterialName(getFrameMaterial()) + " Frame Boxes (Each pillar side and on top)", "1x Maintenance Hatch (One of base casings)", - "1x " + VN[getMinTier()] + "+ Energy Hatch (Any bottom layer casing)"}; + "1x " + VN[getMinTier()] + "+ Energy Hatch (Any bottom layer casing)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", + CORE.GT_Tooltip}; } private final void initFields() { diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java index e6e9709800..2512a37eb4 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java @@ -57,9 +57,11 @@ extends GregtechMeta_MultiBlockBase { "1x Input Hatch", "1x Output Hatch", "1x Input Bus", - "1x [HV] Output Bus", - "1x [EV] Energy Hatch (Can be higher Tier) [Blue]", - "Centrifuge Casings for the rest (16 at least)", + "1x Output Bus", + "1x Muffler Hatch", + "1x Energy Hatch [Blue]", + "Centrifuge Casings for the rest (10 at least)", + getPollutionTooltip(), CORE.GT_Tooltip}; } @@ -128,7 +130,7 @@ extends GregtechMeta_MultiBlockBase { final IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j); //Utils.LOG_WARNING("X:"+tTileEntity.getXCoord()+" Y:"+tTileEntity.getYCoord()+" Z:"+tTileEntity.getZCoord()); - if ((!this.addMaintenanceToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addInputToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addOutputToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addEnergyInputToMachineList(tTileEntity, getCasingTextureIndex()))) { + if ((!this.addToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addInputToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addOutputToMachineList(tTileEntity, getCasingTextureIndex())) && (!this.addEnergyInputToMachineList(tTileEntity, getCasingTextureIndex()))) { //Maintenance Hatch if ((tTileEntity != null) && (tTileEntity.getMetaTileEntity() != null)) { @@ -159,7 +161,7 @@ extends GregtechMeta_MultiBlockBase { } } } - return tAmount >= 16; + return tAmount >= 10; } @Override @@ -169,7 +171,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 15; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java index e5e8e075d8..a8ac814c8e 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java @@ -56,6 +56,7 @@ extends GregtechMeta_MultiBlockBase { "1x Maintenance Hatch (one of bottom)", "1x Muffler Hatch (top middle)", "Structural Coke Oven Casings for the rest", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -167,7 +168,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 4; } /* @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java index 229251142d..3bd659f03e 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java @@ -48,8 +48,10 @@ extends GregtechMeta_MultiBlockBase { "2x Output Bus (side centered)", "1x Energy Hatch (top or bottom centered)", "1x Input Hatch (top or bottom centered)", + "1x Muffler Hatch (top)", "1x Maintenance Hatch (back centered)", "Cutting Factory Frames for the rest (32 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; } @@ -158,8 +160,8 @@ extends GregtechMeta_MultiBlockBase { return false; } } - if ((this.mMaintenanceHatches.size() != 1) || (this.mEnergyHatches.size() != 1)) { - Logger.INFO("Incorrect amount of Maintenance or Energy hatches."); + if ((this.mMaintenanceHatches.size() != 1) || (this.mMufflerHatches.size() != 1) || (this.mEnergyHatches.size() < 1)) { + Logger.INFO("Incorrect amount of Maintenance or Energy or Muffler hatches."); return false; } } else { @@ -177,7 +179,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 8; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java index 036b185749..b247a09e00 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java @@ -47,7 +47,8 @@ extends GregtechMeta_MultiBlockBase { "1x Energy Hatch (anywhere)", "1x Maintenance Hatch (anywhere)", "1x Muffler (anywhere)", - "Electrolyzer Casings for the rest (16 at least!)", + "Electrolyzer Casings for the rest (10 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -109,7 +110,7 @@ extends GregtechMeta_MultiBlockBase { } } } - return tAmount >= 16; + return tAmount >= 10; } @Override @@ -119,7 +120,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 15; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java index 6d77354539..ac29fbf27e 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java @@ -60,6 +60,7 @@ extends GregtechMeta_MultiBlockBase { "1x Muffler Hatch (anywhere)", "1x Maintenance Hatch (Back Center)", "Inconel Reinforced Casings for the rest (28 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -216,7 +217,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 50; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java index dfc8f790ce..e04487c8c4 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java @@ -59,6 +59,7 @@ extends GregtechMeta_MultiBlockBase { "1x Energy Hatch (Any casing)", "1x Muffler Hatch (Any casing)", "Maceration Stack Casings for the rest (26 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -188,7 +189,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 100; + return 20; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java index 56f315ecbe..c9d50bfd24 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java @@ -72,6 +72,7 @@ extends GregtechMeta_MultiBlockBase { "1x Muffler Hatch (anywhere)", mCasingName+"s for the rest (16 at least!)", mCasingName2+"s for the internal blocks (2)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -180,7 +181,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 2; + return 40; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java index 3433cc5317..3e004cbb90 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java @@ -74,6 +74,7 @@ extends GregtechMeta_MultiBlockBase { "Controller (front centered)", "6 Multi-Use casings required (Minimum)", "Read Multi-Machine Manual for extra information", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -154,7 +155,7 @@ extends GregtechMeta_MultiBlockBase { } } } - return tAmount >= 6; + return tAmount >= 6 && this.mMufflerHatches.size() > 0; } @Override @@ -163,8 +164,19 @@ extends GregtechMeta_MultiBlockBase { } @Override - public int getPollutionPerTick(final ItemStack aStack) { - return 50; + public int getPollutionPerTick(final ItemStack aStack) { + if (mInternalMode == 0) { + return 20; + } + else if (mInternalMode == 1) { + return 20; + } + else if (mInternalMode == 2) { + return 30; + } + else { + return 50; + } } public int getTextureIndex() { diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java index 9f148f18b8..7766058734 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java @@ -56,6 +56,7 @@ extends GregtechMeta_MultiBlockBase { "1x Maintenance Hatch (anywhere)", "1x Muffler Hatch (anywhere)", "Material Press Machine Casings for the rest (16 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -150,7 +151,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 12; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java index a85c9ad5d7..46d78a6d96 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java @@ -52,9 +52,11 @@ extends GregtechMeta_MultiBlockBase { "1x Input Bus (Any top or bottom edge casing)", "4x Output Bus (Any top or bottom edge casing)", "1x Maintenance Hatch (Any top or bottom edge casing)", + "1x Muffler Hatch (Any top or bottom edge casing)", "1x Energy Hatch (Any top or bottom edge casing)", "18x Sieve Grate (Top and Middle 3x3)", - "Sieve Casings for the rest (47)", + "Sieve Casings for the rest (35 min)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip}; } @@ -263,7 +265,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 2; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSinter.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSinter.java index e5e0cb68ae..6c4c47b1d7 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSinter.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSinter.java @@ -53,6 +53,7 @@ extends GT_MetaTileEntity_MultiBlockBase { "1x Energy Hatch (top or bottom centered)", "1x Maintenance Hatch (back centered)", "Sinter Furnace Casings for the rest (32 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java index b5a48ce525..265346978d 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java @@ -51,6 +51,7 @@ extends GregtechMeta_MultiBlockBase { "1x Energy Hatch (Any bottom layer casing)", "Thermal processing Casings for the rest (8 at least!)", "Noise Hazard Sign Blocks also count as valid casings", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; @@ -135,7 +136,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 45; + return 50; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java index 01305eec4e..4a91bd4080 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java @@ -5,6 +5,7 @@ import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.TAE; import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -72,7 +73,9 @@ public class GregtechMetaTileEntity_IndustrialVacuumFreezer extends GregtechMeta "1x Output Hatch (Any casing, optional)", "1x Maintenance Hatch (Any casing)", "1x Energy Hatch (Any casing)", - mCasingName+"s for the rest (10 at least!)"}; + mCasingName+"s for the rest (10 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", + CORE.GT_Tooltip}; } public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final byte aSide, final byte aFacing, @@ -147,7 +150,7 @@ public class GregtechMetaTileEntity_IndustrialVacuumFreezer extends GregtechMeta } public int getPollutionPerTick(final ItemStack aStack) { - return 50; + return 25; } public int getDamageToComponent(final ItemStack aStack) { diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java index 28e5cbc41b..abdd5834ca 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java @@ -63,6 +63,7 @@ extends GregtechMeta_MultiBlockBase { "1x Maintenance Hatch (Any casing)", "1x Energy Hatch (Any casing)", "Wash Plant Casings for the rest", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; @@ -200,7 +201,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return this.mChemicalMode ? 20 : 5; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java index 36d1cd73cd..fd18f26d28 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java @@ -50,6 +50,7 @@ extends GregtechMeta_MultiBlockBase { "1x Energy Hatch (top or bottom centered)", "1x Maintenance Hatch (back centered)", "Wire Factory Casings for the rest (32 at least!)", + "Produces "+this.getPollutionPerTick(null)+" pollution per tick", CORE.GT_Tooltip }; } @@ -182,7 +183,7 @@ extends GregtechMeta_MultiBlockBase { @Override public int getPollutionPerTick(final ItemStack aStack) { - return 0; + return 5; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java index 196094f5a5..d857023ee8 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java @@ -17,6 +17,7 @@ import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -34,40 +35,40 @@ import java.util.List; import org.apache.commons.lang3.ArrayUtils; public class GregtechMetaTileEntity_Adv_EBF extends GregtechMeta_MultiBlockBase { - - + + public static int CASING_TEXTURE_ID; public static String mHotFuelName = "Blazing Pyrotheum"; public static String mCasingName = "Advanced Blast Furnace Casing"; public static String mHatchName = "Pyrotheum Hatch"; - - private int mHeatingCapacity = 0; - private int controllerY; - private FluidStack[] pollutionFluidStacks = new FluidStack[]{Materials.CarbonDioxide.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), Materials.SulfurDioxide.getGas(1000)}; - - public GregtechMetaTileEntity_Adv_EBF(int aID, String aName, String aNameRegional) { - super(aID, aName, aNameRegional); + + private int mHeatingCapacity = 0; + private int controllerY; + private FluidStack[] pollutionFluidStacks = new FluidStack[]{Materials.CarbonDioxide.getGas(1000), + Materials.CarbonMonoxide.getGas(1000), Materials.SulfurDioxide.getGas(1000)}; + + public GregtechMetaTileEntity_Adv_EBF(int aID, String aName, String aNameRegional) { + super(aID, aName, aNameRegional); CASING_TEXTURE_ID = TAE.getIndexFromPage(2, 11); mHotFuelName = FluidUtils.getFluidStack("pyrotheum", 1).getLocalizedName(); mCasingName = ItemUtils.getLocalizedNameOfBlock(ModBlocks.blockCasings3Misc, 11); mHatchName = ItemUtils.getLocalizedNameOfBlock(GregTech_API.sBlockMachines, 968); - } + } - public GregtechMetaTileEntity_Adv_EBF(String aName) { - super(aName); + public GregtechMetaTileEntity_Adv_EBF(String aName) { + super(aName); CASING_TEXTURE_ID = TAE.getIndexFromPage(2, 11); mHotFuelName = FluidUtils.getFluidStack("pyrotheum", 1).getLocalizedName(); mCasingName = ItemUtils.getLocalizedNameOfBlock(ModBlocks.blockCasings3Misc, 11); mHatchName = ItemUtils.getLocalizedNameOfBlock(GregTech_API.sBlockMachines, 968); - } + } + + public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { + return new GregtechMetaTileEntity_Adv_EBF(this.mName); + } - public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { - return new GregtechMetaTileEntity_Adv_EBF(this.mName); - } + public String[] getDescription() { - public String[] getDescription() { - if (mCasingName.toLowerCase().contains(".name")) { mCasingName = ItemUtils.getLocalizedNameOfBlock(ModBlocks.blockCasings3Misc, 11); } @@ -77,200 +78,201 @@ public class GregtechMetaTileEntity_Adv_EBF extends GregtechMeta_MultiBlockBase if (mHatchName.toLowerCase().contains(".name")) { mHatchName = ItemUtils.getLocalizedNameOfBlock(GregTech_API.sBlockMachines, 968); } - - return new String[]{ - "Controller Block for the Advanced Electric Blast Furnace", + + return new String[]{ + "Controller Block for the Advanced Electric Blast Furnace", "Consumes 1L of "+mHotFuelName+"/t during operation", - "Size(WxHxD): 3x4x3 (Hollow), Controller (Front middle bottom)", - "16x Heating Coils (Two middle Layers, hollow)", - "1x " + mHatchName + " (Any bottom layer casing)", - "1x Input Hatch/Bus (Any bottom layer casing)", - "1x Output Hatch/Bus (Any bottom layer casing)", - "1x Energy Hatch (Any bottom layer casing)", - "1x Maintenance Hatch (Any bottom layer casing)", - "1x Muffler Hatch (Top middle)", - "1x Output Hatch to recover CO2/CO/SO2 (optional, any top layer casing),", - " Recovery scales with Muffler Hatch tier", - mCasingName+"s for the rest", - "Each 900K over the min. Heat Capacity grants 5% speedup (multiplicatively)", - "Each 1800K over the min. Heat Capacity allows for one upgraded overclock", - "Upgraded overclocks reduce recipe time to 25% and increase EU/t to 400%", - "Causes " + 20 * getPollutionPerTick(null) + " Pollution per second"}; - } - - public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { - if (aSide == aFacing) { - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_TEXTURE_ID], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE)}; - } - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_TEXTURE_ID]}; - } - - public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMeta