aboutsummaryrefslogtreecommitdiff
path: root/src/Java
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2017-07-10 13:04:13 +1000
committerAlkalus <draknyte1@hotmail.com>2017-07-10 13:04:13 +1000
commit43f3190bd5204a0025c75ee7cabfd0871061211f (patch)
tree00fd6c24dd859985dca6fbde2f9eb0a591803b7e /src/Java
parentfda314b86ee93b1c2f9651808a91d6eed9fa8394 (diff)
downloadGT5-Unofficial-43f3190bd5204a0025c75ee7cabfd0871061211f.tar.gz
GT5-Unofficial-43f3190bd5204a0025c75ee7cabfd0871061211f.tar.bz2
GT5-Unofficial-43f3190bd5204a0025c75ee7cabfd0871061211f.zip
+ 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.
Diffstat (limited to 'src/Java')
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java8
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java5
-rw-r--r--src/Java/gtPlusPlus/core/item/base/BaseItemBurnable.java38
-rw-r--r--src/Java/gtPlusPlus/core/item/base/CoreItem.java2
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java6
-rw-r--r--src/Java/gtPlusPlus/core/lib/CORE.java3
-rw-r--r--src/Java/gtPlusPlus/core/material/Material.java64
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java26
8 files changed, 105 insertions, 47 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java
index afed638161..4dc63ff529 100644
--- a/src/Java/gtPlusPlus/GTplusplus.java
+++ b/src/Java/gtPlusPlus/GTplusplus.java
@@ -11,6 +11,7 @@ import java.util.Collection;
import cpw.mods.fml.common.*;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.*;
+import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.util.GT_Recipe;
@@ -210,6 +211,13 @@ public class GTplusplus implements ActionListener {
// ~
ReflectionUtils.becauseIWorkHard();
+
+ //Make Burnables burnable
+ if (!CORE.burnables.isEmpty()){
+ for (int x=0;x<CORE.burnables.size();x++){
+ GameRegistry.registerFuelHandler(CORE.burnables.get(x));
+ }
+ }
// Utils.LOG_INFO("Activating GT OreDictionary Handler, this can take
// some time.");
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<IFuelHandler> burnables = new ArrayList<IFuelHandler>();
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<this.vMaterialInput.size();i++){
- //Utils.LOG_WARNING("i:"+i);
+ //Utils.LOG_MACHINE_INFO("i:"+i);
ItemStack testNull = null;
try {
testNull = this.vMaterialInput.get(i).getValidStack();
} catch (final Throwable r){
- Utils.LOG_WARNING("Failed gathering material stack for "+this.localizedName+".");
- Utils.LOG_WARNING("What Failed: Length:"+this.vMaterialInput.size()+" current:"+i);
+ Utils.LOG_MACHINE_INFO("Failed gathering material stack for "+this.localizedName+".");
+ Utils.LOG_MACHINE_INFO("What Failed: Length:"+this.vMaterialInput.size()+" current:"+i);
}
try {
if (testNull != null){
- //Utils.LOG_WARNING("not null");
+ //Utils.LOG_MACHINE_INFO("not null");
temp[i] = this.vMaterialInput.get(i).getValidStack();
}
} catch (final Throwable r){
- Utils.LOG_WARNING("Failed setting slot "+i+", using "+this.localizedName);
+ Utils.LOG_MACHINE_INFO("Failed setting slot "+i+", using "+this.localizedName);
}
}
return temp;
@@ -489,9 +489,9 @@ public class Material {
public final long[] getSmallestRatio(final ArrayList<MaterialStack> 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;x<tempInput.size();x++){
//tempPercentage = tempPercentage+inputs[x].percentageToUse;
@@ -508,7 +508,7 @@ public class Material {
for (int r=0;r<tempRatio.length;r++){
tempRatioStringThing1 = tempRatioStringThing1 + tempRatio[r] +" : ";
}
- Utils.LOG_WARNING("Default Ratio: "+tempRatioStringThing1);
+ Utils.LOG_MACHINE_INFO("Default Ratio: "+tempRatioStringThing1);
String tempRatioStringThing = "";
int tempSmallestCraftingUseSize = 0;
@@ -517,7 +517,7 @@ public class Material {
tempSmallestCraftingUseSize = (int) (tempSmallestCraftingUseSize + smallestRatio[r]);
}
//this.smallestStackSizeWhenProcessing = tempSmallestCraftingUseSize;
- Utils.LOG_WARNING("Smallest Ratio: "+tempRatioStringThing);
+ Utils.LOG_MACHINE_INFO("Smallest Ratio: "+tempRatioStringThing);
return smallestRatio;
}
}
@@ -529,7 +529,7 @@ public class Material {
if (!aShowQuestionMarks && (this.vChemicalFormula.equals("?")||this.vChemicalFormula.equals("??"))) {
return "";
}
- Utils.LOG_WARNING("===============| Calculating Atomic Formula for "+this.localizedName+" |===============");
+ Utils.LOG_MACHINE_INFO("===============| Calculating Atomic Formula for "+this.localizedName+" |===============");
if (!chemSymbol.equals("")) {
return chemSymbol;
}
@@ -572,13 +572,13 @@ public class Material {
return MaterialUtils.subscript(dummyFormula);
//return dummyFormula;
}
- Utils.LOG_WARNING("dummyFormulaArray <= 0");
+ Utils.LOG_MACHINE_INFO("dummyFormulaArray <= 0");
}
- Utils.LOG_WARNING("dummyFormulaArray == null");
+ Utils.LOG_MACHINE_INFO("dummyFormulaArray == null");
}
- Utils.LOG_WARNING("tempInput.length <= 0");
+ Utils.LOG_MACHINE_INFO("tempInput.length <= 0");
}
- Utils.LOG_WARNING("tempInput == null");
+ Utils.LOG_MACHINE_INFO("tempInput == null");
return "??";
}
@@ -592,7 +592,7 @@ public class Material {
} catch (final Throwable e){}
if (Materials.get(this.localizedName).mFluid == null){
- Utils.LOG_WARNING("Generating our own fluid.");
+ Utils.LOG_MACHINE_INFO("Generating our own fluid.");
//Generate a Cell if we need to
if (ItemUtils.getItemStackOfAmountFromOreDictNoBroken("cell"+this.getUnlocalizedName(), 1) == null){
@@ -638,7 +638,7 @@ public class Material {
return this.generatePlasma();
}
}
- Utils.LOG_WARNING("Getting the fluid from a GT material instead.");
+ Utils.LOG_MACHINE_INFO("Getting the fluid from a GT material instead.");
return Materials.get(this.localizedName).mFluid;
}
@@ -646,11 +646,11 @@ public class Material {
final Materials isValid = Materials.get(this.getLocalizedName());
if ((isValid != Materials._NULL) && (isValid != null) && (isValid != Materials.Clay)){
if (isValid.mPlasma != null){
- Utils.LOG_INFO("Using a pre-defined Plasma from GT.");
+ Utils.LOG_MACHINE_INFO("Using a pre-defined Plasma from GT.");
return isValid.mPlasma;
}
}
- Utils.LOG_INFO("Generating our own Plasma.");
+ Utils.LOG_MACHINE_INFO("Generating our own Plasma.");
return FluidUtils.addGTPlasma(this);
//return null;
}
@@ -658,9 +658,9 @@ public class Material {
final public FluidStack getFluid(final int fluidAmount) {
- Utils.LOG_WARNING("Attempting to get "+fluidAmount+"L of "+this.vMoltenFluid.getName());
+ Utils.LOG_MACHINE_INFO("Attempting to get "+fluidAmount+"L of "+this.vMoltenFluid.getName());
final FluidStack moltenFluid = new FluidStack(this.vMoltenFluid, fluidAmount);
- Utils.LOG_WARNING("Info: "+moltenFluid.getFluid().getName()+" Info: "+moltenFluid.amount+" Info: "+moltenFluid.getFluidID());
+ Utils.LOG_MACHINE_INFO("Info: "+moltenFluid.getFluid().getName()+" Info: "+moltenFluid.amount+" Info: "+moltenFluid.getFluidID());
return moltenFluid;
}
@@ -670,10 +670,10 @@ public class Material {
for (MaterialStack part : this.vMaterialInput){
int incrementor = part.getStackMaterial().getMeltingPointC();
meltingPoint += incrementor;
- Utils.LOG_INFO("Melting Point for "+this.getLocalizedName()+" increased to "+ incrementor);
+ Utils.LOG_MACHINE_INFO("Melting Point for "+this.getLocalizedName()+" increased to "+ incrementor);
}
int divisor = (this.vMaterialInput.size()>0 ? 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");}