From 43f3190bd5204a0025c75ee7cabfd0871061211f Mon Sep 17 00:00:00 2001 From: Alkalus Date: Mon, 10 Jul 2017 13:04:13 +1000 Subject: + Added Coal gas. + Added GT++ Coal Coke. + Added a new handler for burnable items. % Changed up the 4 Coke Oven Recipes. - Removed lots of spam log messages during material creation. --- src/Java/gtPlusPlus/core/item/ModItems.java | 5 +- .../core/item/base/BaseItemBurnable.java | 38 +++++++++++++ src/Java/gtPlusPlus/core/item/base/CoreItem.java | 2 +- .../gtPlusPlus/core/item/chemistry/CoalTar.java | 6 ++ src/Java/gtPlusPlus/core/lib/CORE.java | 3 + src/Java/gtPlusPlus/core/material/Material.java | 64 +++++++++++----------- .../gtPlusPlus/core/recipe/RECIPES_GREGTECH.java | 26 ++++----- 7 files changed, 97 insertions(+), 47 deletions(-) create mode 100644 src/Java/gtPlusPlus/core/item/base/BaseItemBurnable.java (limited to 'src/Java/gtPlusPlus/core') diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 9e82297bc3..0ef266a743 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -211,6 +211,8 @@ public final class ModItems { public static Item itemAirFilter; + private static Item itemCoalCoke; + public static final void init(){ @@ -232,7 +234,8 @@ public final class ModItems { - + //Register Hydrogen Blobs first, so we can replace old helium blobs. + itemCoalCoke = new BaseItemBurnable("itemCoalCoke", "Coking Coal", tabMisc, 64, 0, "Used for metallurgy.", "gemCoalCoke", 3200).setTextureName(CORE.MODID + ":itemCoalCoke"); //Register Hydrogen Blobs first, so we can replace old helium blobs. itemHydrogenBlob = new CoreItem("itemHydrogenBlob", "Mysterious Hydrogen Blob", tabMisc).setTextureName(CORE.MODID + ":itemHeliumBlob"); diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemBurnable.java b/src/Java/gtPlusPlus/core/item/base/BaseItemBurnable.java new file mode 100644 index 0000000000..6f27bfda2f --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/base/BaseItemBurnable.java @@ -0,0 +1,38 @@ +package gtPlusPlus.core.item.base; + +import cpw.mods.fml.common.IFuelHandler; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.item.ItemUtils; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.ItemStack; + +public class BaseItemBurnable extends CoreItem implements IFuelHandler{ + + final int burnTime; + + public BaseItemBurnable(String unlocalizedName, String displayName, CreativeTabs creativeTab, + int stackSize, int maxDmg, String description, String oredictName, int burnTime) { + super(unlocalizedName, creativeTab, stackSize, maxDmg, description); + this.burnTime = burnTime; + this.itemName = displayName; + + if (!oredictName.equals("") || oredictName != null){ + registerOrdictionary(oredictName); + } + registerFuel(); + } + + @Override + public int getBurnTime(ItemStack fuel) { + return this.burnTime; + } + + public void registerFuel(){ + CORE.burnables.add(this); + } + + public void registerOrdictionary(String name){ + ItemUtils.addItemToOreDictionary(ItemUtils.getSimpleStack(this), name); + } + +} diff --git a/src/Java/gtPlusPlus/core/item/base/CoreItem.java b/src/Java/gtPlusPlus/core/item/base/CoreItem.java index e3e6b57624..62fc5c0160 100644 --- a/src/Java/gtPlusPlus/core/item/base/CoreItem.java +++ b/src/Java/gtPlusPlus/core/item/base/CoreItem.java @@ -20,7 +20,7 @@ public class CoreItem extends Item private final EnumRarity rarity; private final EnumChatFormatting descColour; private final String itemDescription; - private String itemName; + protected String itemName; private final boolean hasEffect; //Replace Item - What does this item turn into when held. diff --git a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java index fb14c50d04..6e5b1bd976 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java @@ -13,6 +13,12 @@ public class CoalTar { public static void run(){ + //Create Coal Gas + FluidUtils.generateFluidNonMolten("CoalGas", "Coal Gas", 500, new short[]{48, 48, 48, 100}, null, null); + + + + //Ethanol // v - Dehydrate cells to remove water //Create Ethylene diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java index b3e39cc3b1..683209b4ab 100644 --- a/src/Java/gtPlusPlus/core/lib/CORE.java +++ b/src/Java/gtPlusPlus/core/lib/CORE.java @@ -2,6 +2,7 @@ package gtPlusPlus.core.lib; import java.util.*; +import cpw.mods.fml.common.IFuelHandler; import gregtech.api.GregTech_API; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.geo.GeoUtils; @@ -12,6 +13,7 @@ import gtPlusPlus.xmod.gregtech.api.interfaces.internal.IGregtech_RecipeAdder; import gtPlusPlus.xmod.gregtech.api.objects.XSTR; import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy; import gtPlusPlus.xmod.gregtech.common.tileentities.automation.GT_MetaTileEntity_TesseractGenerator; +import net.minecraft.item.Item; import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.common.config.Configuration; @@ -38,6 +40,7 @@ public class CORE { public static final int GREG_FIRST_ID = 760; public static Map PlayerCache; public static final String[] VOLTAGES = {"ULV","LV","MV","HV","EV","IV","LuV","ZPM","UV","MAX"}; + public static List burnables = new ArrayList(); public static final boolean MAIN_GREGTECH_5U_EXPERIMENTAL_FORK = Meta_GT_Proxy.areWeUsingGregtech5uExperimental(); public static final int GREGTECH_API_VERSION = GregTech_API.VERSION; public static IGregtech_RecipeAdder RA; diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 5f83d1a732..5a38e5cf08 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -227,11 +227,11 @@ public class Material { this.vChemicalFormula = this.getToolTip(chemicalSymbol, OrePrefixes.dust.mMaterialAmount / M, true); } else if (!this.vChemicalSymbol.equals("")){ - Utils.LOG_WARNING("materialInput is null, using a valid chemical symbol."); + Utils.LOG_MACHINE_INFO("materialInput is null, using a valid chemical symbol."); this.vChemicalFormula = this.vChemicalSymbol; } else{ - Utils.LOG_WARNING("MaterialInput == null && chemicalSymbol probably equals nothing"); + Utils.LOG_MACHINE_INFO("MaterialInput == null && chemicalSymbol probably equals nothing"); this.vChemicalFormula = "??"; } @@ -267,13 +267,13 @@ public class Material { } } - Utils.LOG_INFO("Creating a Material instance for "+materialName); - Utils.LOG_INFO("Formula: "+this.vChemicalFormula + " Smallest Stack: "+this.smallestStackSizeWhenProcessing+" Smallest Ratio:"+ratio); - Utils.LOG_INFO("Protons: "+this.vProtons); - Utils.LOG_INFO("Neutrons: "+this.vNeutrons); - Utils.LOG_INFO("Mass: "+this.vMass+"/units"); - Utils.LOG_INFO("Melting Point: "+this.meltingPointC+"C."); - Utils.LOG_INFO("Boiling Point: "+this.boilingPointC+"C."); + Utils.LOG_MACHINE_INFO("Creating a Material instance for "+materialName); + Utils.LOG_MACHINE_INFO("Formula: "+this.vChemicalFormula + " Smallest Stack: "+this.smallestStackSizeWhenProcessing+" Smallest Ratio:"+ratio); + Utils.LOG_MACHINE_INFO("Protons: "+this.vProtons); + Utils.LOG_MACHINE_INFO("Neutrons: "+this.vNeutrons); + Utils.LOG_MACHINE_INFO("Mass: "+this.vMass+"/units"); + Utils.LOG_MACHINE_INFO("Melting Point: "+this.meltingPointC+"C."); + Utils.LOG_MACHINE_INFO("Boiling Point: "+this.boilingPointC+"C."); } public final String getLocalizedName(){ @@ -427,21 +427,21 @@ public class Material { if (!this.vMaterialInput.isEmpty()){ final ItemStack[] temp = new ItemStack[this.vMaterialInput.size()]; for (int i=0;i tempInput){ if (tempInput != null){ if (!tempInput.isEmpty()){ - Utils.LOG_WARNING("length: "+tempInput.size()); - Utils.LOG_WARNING("(inputs != null): "+(tempInput != null)); - //Utils.LOG_WARNING("length: "+inputs.length); + Utils.LOG_MACHINE_INFO("length: "+tempInput.size()); + Utils.LOG_MACHINE_INFO("(inputs != null): "+(tempInput != null)); + //Utils.LOG_MACHINE_INFO("length: "+inputs.length); final long[] tempRatio = new long[tempInput.size()]; for (int x=0;x0 ? this.vMaterialInput.size() : 1); - Utils.LOG_INFO("Dividing "+meltingPoint+" / "+divisor+" to get average melting point."); + Utils.LOG_MACHINE_INFO("Dividing "+meltingPoint+" / "+divisor+" to get average melting point."); meltingPoint = (meltingPoint/divisor); return meltingPoint; } diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index eb79614fbb..b0e4f3ac54 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -53,11 +53,11 @@ public class RECIPES_GREGTECH { //GT Logs to Charcoal Recipe //With Sulfuric Acid CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 5L), //Input 1 + ItemUtils.getGregtechCircuit(5), //Input 2 Materials.SulfuricAcid.getFluid(20L), //Fluid Input Materials.Creosote.getFluid(175L), //Fluid Output - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 8L), //Item Output 800, //Time in ticks 30); //EU }catch (final NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} @@ -66,8 +66,8 @@ public class RECIPES_GREGTECH { //Coal -> Coke Recipe //With Sulfuric Acid CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 2L), //Input 1 + ItemUtils.getGregtechCircuit(5), //Input 2 Materials.SulfuricAcid.getFluid(60L), //Fluid Input Materials.Creosote.getFluid(250L), //Fluid Output ItemUtils.getItemStack("Railcraft:fuel.coke", 2), //Item Output @@ -79,8 +79,8 @@ public class RECIPES_GREGTECH { //GT Logs to Charcoal Recipe //Without Sulfuric Acid CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), //Input 2 + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 2L), //Input 1 + ItemUtils.getGregtechCircuit(5), //Input 2 FluidUtils.getFluidStack("oxygen", 80), //Fluid Input Materials.Creosote.getFluid(145L), //Fluid Output GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 2L), //Item Output @@ -90,13 +90,13 @@ public class RECIPES_GREGTECH { try { //Coal -> Coke Recipe - //Without Sulfuric Acid + //Make Coal Gas CORE.RA.addCokeOvenRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 1 - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 1L), //Input 2 - FluidUtils.getFluidStack("oxygen", 185), //Fluid Input - Materials.Creosote.getFluid(200L), //Fluid Output - ItemUtils.getItemStack("Railcraft:fuel.coke", 2), //Item Output + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 10L), //Input 1 + ItemUtils.getGregtechCircuit(1), //Input 2 + FluidUtils.getFluidStack("steam", 1440), //Fluid Input + FluidUtils.getFluidStack("fluid.coalgas", 1440), //Fluid Output + ItemUtils.getItemStackOfAmountFromOreDict("gemCoalCoke", 10), //Item Output 900, //Time in ticks 120); //EU }catch (final NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} -- cgit