aboutsummaryrefslogtreecommitdiff
path: root/src/Java
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java18
-rw-r--r--src/Java/gtPlusPlus/core/item/base/CoreItem.java39
-rw-r--r--src/Java/gtPlusPlus/core/material/ALLOY.java16
-rw-r--r--src/Java/gtPlusPlus/core/material/ELEMENT.java6
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java4
5 files changed, 70 insertions, 13 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index dcb80c75be..f2136c70c6 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -73,6 +73,7 @@ public final class ModItems {
public static Item itemIngotBatteryAlloy;
public static Item itemPlateBatteryAlloy;
public static Item itemHeliumBlob;
+ public static Item itemHydrogenBlob;
public static Item itemPLACEHOLDER_Circuit;
public static Item FuelRod_Empty;
@@ -146,6 +147,7 @@ public final class ModItems {
@SuppressWarnings("unused")
public static final void init(){
+ //Default item used when recipes fail, handy for debugging.
AAA_Broken = new BaseItemIngot("AAA_Broken", "Errors - Tell Alkalus", Utils.rgbtoHexValue(128, 128, 128), 0);
//Debug Loading
@@ -159,10 +161,18 @@ public final class ModItems {
GameRegistry.registerItem(itemStickyRubber, "itemStickyRubber");
GT_OreDictUnificator.registerOre("ingotRubber", ItemUtils.getItemStack(CORE.MODID+":itemStickyRubber", 1));
- itemHeliumBlob = new CoreItem("itemHeliumBlob", tabMisc).setTextureName(CORE.MODID + ":itemHeliumBlob");
- GT_OreDictUnificator.registerOre("dustHydrogen", new ItemStack(ModItems.itemHeliumBlob));
- //GameRegistry.registerItem(itemHeliumBlob, "itemHeliumBlob");
-
+
+
+
+
+
+ //Register Hydrogen Blobs first, so we can replace old helium blobs.
+ itemHydrogenBlob = new CoreItem("itemHydrogenBlob", tabMisc).setTextureName(CORE.MODID + ":itemHydrogenBlob");
+ GT_OreDictUnificator.registerOre("dustHydrogen", new ItemStack(ModItems.itemHydrogenBlob));
+ //Register Old Helium Blob, this will be replaced when held by a player.
+ itemHeliumBlob = new CoreItem("itemHeliumBlob", tabMisc, ItemUtils.getSimpleStack(itemHydrogenBlob)).setTextureName(CORE.MODID + ":itemHeliumBlob");
+
+
//Make some backpacks
//Primary colours
backpack_Red = new BaseItemBackpack("backpackRed", Utils.rgbtoHexValue(200, 0, 0));
diff --git a/src/Java/gtPlusPlus/core/item/base/CoreItem.java b/src/Java/gtPlusPlus/core/item/base/CoreItem.java
index e43834a317..5f4ef7a823 100644
--- a/src/Java/gtPlusPlus/core/item/base/CoreItem.java
+++ b/src/Java/gtPlusPlus/core/item/base/CoreItem.java
@@ -1,13 +1,16 @@
package gtPlusPlus.core.item.base;
import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.Utils;
import java.util.List;
import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.*;
import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.world.World;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -19,6 +22,9 @@ public class CoreItem extends Item
private final EnumChatFormatting descColour;
private final String itemDescription;
private final boolean hasEffect;
+
+ //Replace Item - What does this item turn into when held.
+ private final ItemStack turnsInto;
//0
/*
@@ -28,6 +34,17 @@ public class CoreItem extends Item
{
this(unlocalizedName, creativeTab, 64, 0); //Calls 3
}
+
+ //0.1
+ /*
+ * Name, Tab - 64 Stack, 0 Dmg
+ */
+ public CoreItem(String unlocalizedName, CreativeTabs creativeTab, ItemStack OverrideItem)
+ {
+ this(unlocalizedName, creativeTab, 64, 0, "This item will be replaced by another when helf by a player, it is old and should not be used in recipes.", EnumRarity.uncommon, EnumChatFormatting.UNDERLINE, false, OverrideItem); //Calls 5
+
+ }
+
//1
/*
* Name, Tab, Stack - 0 Dmg
@@ -58,7 +75,7 @@ public class CoreItem extends Item
*/
public CoreItem(String unlocalizedName, CreativeTabs creativeTab, int stackSize, int maxDmg, String description)
{
- this(unlocalizedName, creativeTab, stackSize, maxDmg, description, EnumRarity.common, EnumChatFormatting.GRAY, false); //Calls 4.5
+ this(unlocalizedName, creativeTab, stackSize, maxDmg, description, EnumRarity.common, EnumChatFormatting.GRAY, false, null); //Calls 4.5
}
//4.5
/*
@@ -66,7 +83,7 @@ public class CoreItem extends Item
*/
public CoreItem(String unlocalizedName, CreativeTabs creativeTab, int stackSize, int maxDmg, String description, EnumChatFormatting colour)
{
- this(unlocalizedName, creativeTab, stackSize, maxDmg, description, EnumRarity.common, colour, false); //Calls 5
+ this(unlocalizedName, creativeTab, stackSize, maxDmg, description, EnumRarity.common, colour, false, null); //Calls 5
}
//4.75
@@ -75,14 +92,14 @@ public class CoreItem extends Item
*/
public CoreItem(String unlocalizedName, CreativeTabs creativeTab, int stackSize, int maxDmg, String description, EnumRarity rarity)
{
- this(unlocalizedName, creativeTab, stackSize, maxDmg, description, rarity, EnumChatFormatting.GRAY, false); //Calls 5
+ this(unlocalizedName, creativeTab, stackSize, maxDmg, description, rarity, EnumChatFormatting.GRAY, false, null); //Calls 5
}
//5
/*
* Name, Tab, Stack, Dmg, Description, Rarity, Text Colour, Effect
*/
- public CoreItem(String unlocalizedName, CreativeTabs creativeTab, int stackSize, int maxDmg, String description, EnumRarity regRarity, EnumChatFormatting colour, boolean Effect)
+ public CoreItem(String unlocalizedName, CreativeTabs creativeTab, int stackSize, int maxDmg, String description, EnumRarity regRarity, EnumChatFormatting colour, boolean Effect, ItemStack OverrideItem)
{
setUnlocalizedName(unlocalizedName);
setTextureName(CORE.MODID + ":" + unlocalizedName);
@@ -93,6 +110,7 @@ public class CoreItem extends Item
this.itemDescription = description;
this.descColour = colour;
this.hasEffect = Effect;
+ this.turnsInto = OverrideItem;
GameRegistry.registerItem(this, unlocalizedName);
}
@@ -113,4 +131,17 @@ public class CoreItem extends Item
public boolean hasEffect(ItemStack par1ItemStack){
return hasEffect;
}
+
+ @Override
+ public void onUpdate(ItemStack iStack, World world, Entity entityHolding, int p_77663_4_, boolean p_77663_5_) {
+ if (turnsInto != null){
+ if (entityHolding instanceof EntityPlayer){
+ Utils.LOG_INFO("Replacing "+iStack.getDisplayName()+" with "+turnsInto.getDisplayName()+".");
+ ItemStack tempTransform = turnsInto;
+ tempTransform.stackSize = iStack.stackSize;
+ ((EntityPlayer) entityHolding).inventory.addItemStackToInventory((tempTransform));
+ ((EntityPlayer) entityHolding).inventory.consumeInventoryItem(this);
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/material/ALLOY.java b/src/Java/gtPlusPlus/core/material/ALLOY.java
index 56cc6d1343..b161ea0f4c 100644
--- a/src/Java/gtPlusPlus/core/material/ALLOY.java
+++ b/src/Java/gtPlusPlus/core/material/ALLOY.java
@@ -8,11 +8,16 @@ public final class ALLOY {
new short[]{228, 255, 0, 0}, //Material Colour
5660, //Melting Point in C
0, //Boiling Point in C
- 100, //Protons
- 100, //Neutrons
+ 150, //Protons
+ 80, //Neutrons
true, //Uses Blast furnace?
//Material Stacks with Percentage of required elements.
- null);
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().AER, 5),
+ new MaterialStack(ELEMENT.getInstance().IGNIS, 5),
+ new MaterialStack(ELEMENT.getInstance().TERRA, 5),
+ new MaterialStack(ELEMENT.getInstance().AQUA, 5)
+ });
public static final Material BLOODSTEEL = new Material(
"Blood Steel", //Material Name
@@ -23,7 +28,10 @@ public final class ALLOY {
100, //Neutrons
false, //Uses Blast furnace?
//Material Stacks with Percentage of required elements.
- null);
+ new MaterialStack[]{
+ new MaterialStack(ALLOY.STEEL, 5),
+ new MaterialStack(ELEMENT.getInstance().IGNIS, 5)
+ });
public static final Material STABALLOY = new Material(
"Staballoy", //Material Name
diff --git a/src/Java/gtPlusPlus/core/material/ELEMENT.java b/src/Java/gtPlusPlus/core/material/ELEMENT.java
index 73d49e2694..b9719b44b0 100644
--- a/src/Java/gtPlusPlus/core/material/ELEMENT.java
+++ b/src/Java/gtPlusPlus/core/material/ELEMENT.java
@@ -91,4 +91,10 @@ public final class ELEMENT {
public final Material URANIUM233 = new Material("Uranium-233", new short[]{73, 220, 83, 0}, 1132, 4131, 92, 141, false, MaterialUtils.superscript("233U"), 2);//Not a GT Inherited Material
+ //Misc
+
+ public final Material AER = MaterialUtils.generateMaterialFromGtENUM(Materials.InfusedAir);
+ public final Material IGNIS = MaterialUtils.generateMaterialFromGtENUM(Materials.InfusedFire);
+ public final Material TERRA = MaterialUtils.generateMaterialFromGtENUM(Materials.InfusedEarth);
+ public final Material AQUA = MaterialUtils.generateMaterialFromGtENUM(Materials.InfusedWater);
}
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
index 172a35c3f1..ea02dfbc74 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
@@ -157,6 +157,7 @@ public class RECIPES_Machines {
public static ItemStack IV_MACHINE_Centrifuge;
public static ItemStack IV_MACHINE_BendingMachine;
public static ItemStack IV_MACHINE_Wiremill;
+ public static ItemStack EV_MACHINE_Macerator;
public static ItemStack IV_MACHINE_Macerator;
public static ItemStack IV_MACHINE_MassFabricator;
@@ -337,6 +338,7 @@ public class RECIPES_Machines {
IV_MACHINE_Electrolyzer = ItemList.Machine_IV_Electrolyzer.get(1);
IV_MACHINE_BendingMachine= ItemList.Machine_IV_Bender.get(1);
IV_MACHINE_Wiremill= ItemList.Machine_IV_Wiremill.get(1);
+ EV_MACHINE_Macerator= ItemList.Machine_EV_Macerator.get(1);
IV_MACHINE_Macerator= ItemList.Machine_IV_Macerator.get(1);
IV_MACHINE_MassFabricator= ItemList.Machine_IV_Massfab.get(1);
IV_MACHINE_Centrifuge= ItemList.Machine_IV_Centrifuge.get(1);
@@ -594,7 +596,7 @@ public class RECIPES_Machines {
//Industrial Maceration stack
RecipeUtils.addShapedGregtechRecipe(
"plateTungstenCarbide", IV_MACHINE_Macerator, "plateTungstenCarbide",
- IV_MACHINE_Macerator, circuitTier8, IV_MACHINE_Macerator,
+ EV_MACHINE_Macerator, circuitTier7, EV_MACHINE_Macerator,
"plateTungstenCarbide", machineCasing_IV, "plateTungstenCarbide",
RECIPE_IndustrialMacerationStackController);