aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/item
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2021-05-20 23:07:24 +0000
committerAlkalus <draknyte1@hotmail.com>2021-05-20 23:07:24 +0000
commit7881c840421c191e8c4249fc303e184fa1cbf9a8 (patch)
tree0e1f8d8d19ca14e14dfb16c1ed49750935612dfa /src/Java/gtPlusPlus/core/item
parentde40c882cb16535deae1c29b22f1a535747db536 (diff)
parent5316a0ffcbc403e17a06d4c9e28d57e202f0aafe (diff)
downloadGT5-Unofficial-7881c840421c191e8c4249fc303e184fa1cbf9a8.tar.gz
GT5-Unofficial-7881c840421c191e8c4249fc303e184fa1cbf9a8.tar.bz2
GT5-Unofficial-7881c840421c191e8c4249fc303e184fa1cbf9a8.zip
Merged in MultiFixes (pull request #11)
MultiFixes
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java77
-rw-r--r--src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java68
-rw-r--r--src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockBasicTile.java9
-rw-r--r--src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockRoundRobinator.java5
-rw-r--r--src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java4
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java4
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java10
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java6
-rw-r--r--src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java18
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemBasicScrubberTurbine.java147
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java351
-rw-r--r--src/Java/gtPlusPlus/core/item/general/books/ItemBaseBook.java8
-rw-r--r--src/Java/gtPlusPlus/core/item/general/spawn/ItemCustomSpawnEgg.java285
-rw-r--r--src/Java/gtPlusPlus/core/item/materials/DustDecayable.java2
14 files changed, 733 insertions, 261 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index fd2b98c7be..1e0b779bac 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -11,12 +11,8 @@ import gtPlusPlus.core.block.base.BasicBlock.BlockTypes;
import gtPlusPlus.core.block.base.BlockBaseModular;
import gtPlusPlus.core.common.compat.COMPAT_Baubles;
import gtPlusPlus.core.creative.AddToCreativeTab;
-import gtPlusPlus.core.item.base.BaseEuItem;
-import gtPlusPlus.core.item.base.BaseItemBackpack;
+import gtPlusPlus.core.item.base.*;
import gtPlusPlus.core.item.base.BaseItemComponent.ComponentTypes;
-import gtPlusPlus.core.item.base.BaseItemDamageable;
-import gtPlusPlus.core.item.base.BaseItemTCShard;
-import gtPlusPlus.core.item.base.CoreItem;
import gtPlusPlus.core.item.base.foil.BaseItemFoil;
import gtPlusPlus.core.item.base.foods.BaseItemFood;
import gtPlusPlus.core.item.base.foods.BaseItemHotFood;
@@ -27,39 +23,18 @@ import gtPlusPlus.core.item.base.misc.BaseItemMisc;
import gtPlusPlus.core.item.base.misc.BaseItemMisc.MiscTypes;
import gtPlusPlus.core.item.base.plates.BaseItemPlate;
import gtPlusPlus.core.item.base.plates.BaseItemPlateDouble;
-import gtPlusPlus.core.item.bauble.BatteryPackBaseBauble;
-import gtPlusPlus.core.item.bauble.HealthBoostBauble;
-import gtPlusPlus.core.item.bauble.ModularBauble;
-import gtPlusPlus.core.item.bauble.MonsterKillerBaseBauble;
-import gtPlusPlus.core.item.chemistry.AgriculturalChem;
-import gtPlusPlus.core.item.chemistry.CoalTar;
-import gtPlusPlus.core.item.chemistry.GenericChem;
-import gtPlusPlus.core.item.chemistry.IonParticles;
-import gtPlusPlus.core.item.chemistry.MilledOreProcessing;
-import gtPlusPlus.core.item.chemistry.NuclearChem;
-import gtPlusPlus.core.item.chemistry.RocketFuels;
-import gtPlusPlus.core.item.chemistry.StandardBaseParticles;
+import gtPlusPlus.core.item.bauble.*;
+import gtPlusPlus.core.item.chemistry.*;
import gtPlusPlus.core.item.crafting.ItemDummyResearch;
import gtPlusPlus.core.item.effects.RarityUncommon;
import gtPlusPlus.core.item.food.BaseItemMetaFood;
-import gtPlusPlus.core.item.general.BaseItemGrindle;
-import gtPlusPlus.core.item.general.BufferCore;
-import gtPlusPlus.core.item.general.ItemAirFilter;
-import gtPlusPlus.core.item.general.ItemAreaClear;
-import gtPlusPlus.core.item.general.ItemBasicFirestarter;
-import gtPlusPlus.core.item.general.ItemBlueprint;
-import gtPlusPlus.core.item.general.ItemControlCore;
-import gtPlusPlus.core.item.general.ItemEmpty;
-import gtPlusPlus.core.item.general.ItemGemShards;
-import gtPlusPlus.core.item.general.ItemGenericToken;
-import gtPlusPlus.core.item.general.ItemGiantEgg;
-import gtPlusPlus.core.item.general.ItemHalfCompleteCasings;
-import gtPlusPlus.core.item.general.ItemLavaFilter;
+import gtPlusPlus.core.item.general.*;
import gtPlusPlus.core.item.general.books.ItemBaseBook;
import gtPlusPlus.core.item.general.capture.ItemEntityCatcher;
import gtPlusPlus.core.item.general.chassis.ItemBoilerChassis;
import gtPlusPlus.core.item.general.chassis.ItemDehydratorCoil;
import gtPlusPlus.core.item.general.chassis.ItemDehydratorCoilWire;
+import gtPlusPlus.core.item.general.spawn.ItemCustomSpawnEgg;
import gtPlusPlus.core.item.general.throwables.ItemHydrofluoricAcidPotion;
import gtPlusPlus.core.item.general.throwables.ItemSulfuricAcidPotion;
import gtPlusPlus.core.item.general.throwables.ItemThrowableBomb;
@@ -71,20 +46,12 @@ import gtPlusPlus.core.item.tool.misc.SandstoneHammer;
import gtPlusPlus.core.item.tool.misc.box.AutoLunchBox;
import gtPlusPlus.core.item.tool.misc.box.MagicToolBag;
import gtPlusPlus.core.item.tool.misc.box.UniversalToolBox;
-import gtPlusPlus.core.item.tool.staballoy.MultiPickaxeBase;
-import gtPlusPlus.core.item.tool.staballoy.MultiSpadeBase;
-import gtPlusPlus.core.item.tool.staballoy.StaballoyAxe;
-import gtPlusPlus.core.item.tool.staballoy.StaballoyPickaxe;
+import gtPlusPlus.core.item.tool.staballoy.*;
import gtPlusPlus.core.item.wearable.WearableLoader;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.CORE.ConfigSwitches;
import gtPlusPlus.core.lib.LoadedMods;
-import gtPlusPlus.core.material.ALLOY;
-import gtPlusPlus.core.material.ELEMENT;
-import gtPlusPlus.core.material.MISC_MATERIALS;
-import gtPlusPlus.core.material.Material;
-import gtPlusPlus.core.material.MaterialGenerator;
-import gtPlusPlus.core.material.NONMATERIAL;
+import gtPlusPlus.core.material.*;
import gtPlusPlus.core.material.nuclear.FLUORIDES;
import gtPlusPlus.core.material.nuclear.NUCLIDE;
import gtPlusPlus.core.recipe.common.CI;
@@ -99,19 +66,18 @@ import gtPlusPlus.everglades.GTplusplus_Everglades;
import gtPlusPlus.preloader.CORE_Preloader;
import gtPlusPlus.xmod.cofh.HANDLER_COFH;
import gtPlusPlus.xmod.eio.material.MaterialEIO;
+import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
+import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy;
+import gtPlusPlus.xmod.gregtech.common.helpers.VolumetricFlaskHelper;
import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechItems;
-import net.minecraft.item.EnumRarity;
-import net.minecraft.item.Item;
+import net.minecraft.item.*;
import net.minecraft.item.Item.ToolMaterial;
-import net.minecraft.item.ItemFood;
-import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.common.util.EnumHelper;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidRegistry;
public final class ModItems {
-
public static ToolMaterial STABALLOY = EnumHelper.addToolMaterial("Staballoy", 3, 2500, 7, 1.0F, 18);
public static Item ZZZ_Empty;
@@ -120,7 +86,7 @@ public final class ModItems {
public static Item itemAlkalusDisk;
public static Item itemDebugShapeSpawner;
- public static Item itemBaseSpawnEgg;
+ public static ItemCustomSpawnEgg itemCustomSpawnEgg;
//EnderIO
public static Item itemPlateSoularium;
@@ -295,6 +261,7 @@ public final class ModItems {
public static Item itemSugarCoke;
public static Item itemCircuitLFTR;
+ public static Item itemBasicTurbine;
public static Item itemDebugAreaClear;
@@ -317,7 +284,7 @@ public final class ModItems {
public static Item dustDecayedRadium226;
public static Item dustRadium226;
- public static Item itemBigEgg;
+ public static ItemGiantEgg itemBigEgg;
public static GregtechPump toolGregtechPump;
@@ -384,9 +351,10 @@ public final class ModItems {
itemDebugScanner = new DebugScanner();
itemAlkalusDisk = new BaseItemDamageable("itemAlkalusDisk", AddToCreativeTab.tabMisc, 1, 0, "Unknown Use", EnumRarity.rare, EnumChatFormatting.AQUA, false, null);
- itemBigEgg = new ItemGiantEgg("itemBigEgg", "Ginourmous Chicken Egg", tabMisc, 64, 0, "I had best try disassemble this.. for science!", "fuelLargeChickenEgg", 5000, 0).setTextureName(CORE.MODID + ":itemBigEgg");
+ itemBigEgg = new ItemGiantEgg();
itemGenericToken = new ItemGenericToken();
itemDummyResearch = new ItemDummyResearch();
+ itemCustomSpawnEgg = new ItemCustomSpawnEgg();
//Debug Loading
if (CORE_Preloader.DEBUG_MODE){
@@ -662,6 +630,8 @@ public final class ModItems {
MaterialGenerator.generate(ALLOY.CINOBITE);
MaterialGenerator.generate(ALLOY.PIKYONIUM);
MaterialGenerator.generate(ALLOY.ABYSSAL);
+ MaterialGenerator.generate(ALLOY.LAURENIUM);
+ MaterialGenerator.generate(ALLOY.BOTMIUM);
MaterialGenerator.generate(ALLOY.TITANSTEEL);
@@ -749,6 +719,9 @@ public final class ModItems {
//LFTR Control Circuit
itemCircuitLFTR = new CoreItem("itemCircuitLFTR", ""+EnumChatFormatting.GREEN+"Control Circuit", AddToCreativeTab.tabMisc, 1, 0, new String[] {"Keeps Multiblocks Stable"}, EnumRarity.epic, EnumChatFormatting.DARK_GREEN, false, null);
+ if (CORE.ConfigSwitches.enableMachine_Pollution) {
+ itemBasicTurbine = new ItemBasicScrubberTurbine();
+ }
//Zirconium
//Cinter Pellet.
@@ -973,8 +946,12 @@ public final class ModItems {
itemIonParticleBase = new IonParticles();
itemStandarParticleBase = new StandardBaseParticles();
-
-
+ if (Meta_GT_Proxy.sDoesVolumetricFlaskExist) {
+ Item a8kFlask = VolumetricFlaskHelper.generateNewFlask("Volumetric_Flask_8k", "Large Volumetric Flask", 8000);
+ Item a64kFlask = VolumetricFlaskHelper.generateNewFlask("Volumetric_Flask_32k", "Gigantic Volumetric Flask", 32000);
+ GregtechItemList.VOLUMETRIC_FLASK_8k.set(a8kFlask);
+ GregtechItemList.VOLUMETRIC_FLASK_32k.set(a64kFlask);
+ }
itemBoilerChassis = new ItemBoilerChassis();
itemDehydratorCoilWire = new ItemDehydratorCoilWire();
diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java b/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java
index 54710662d8..79a49f92b7 100644
--- a/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java
+++ b/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java
@@ -14,10 +14,11 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
-
+import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.creative.AddToCreativeTab;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.Utils;
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
public class BaseItemTickable extends CoreItem {
@@ -57,7 +58,7 @@ public class BaseItemTickable extends CoreItem {
}
- boolean active = getIsActive(world, iStack);
+ boolean active = isTicking(world, iStack);
if (active) {
tickItemTag(world, iStack);
}
@@ -113,12 +114,15 @@ public class BaseItemTickable extends CoreItem {
}
}
+ protected int getMaxTicks(ItemStack aStack) {
+ return maxTicks;
+ }
- private boolean createNBT(World world, ItemStack rStack){
+ protected boolean createNBT(World world, ItemStack rStack){
final NBTTagCompound tagMain = new NBTTagCompound();
final NBTTagCompound tagNBT = new NBTTagCompound();
tagNBT.setLong("Tick", 0);
- tagNBT.setLong("maxTick", this.maxTicks);
+ tagNBT.setLong("maxTick", getMaxTicks(rStack));
tagNBT.setBoolean("isActive", true);
//Try set world time
@@ -127,11 +131,12 @@ public class BaseItemTickable extends CoreItem {
}
tagMain.setTag("TickableItem", tagNBT);
- rStack.setTagCompound(tagMain);
+ rStack.setTagCompound(tagMain);
+ Logger.INFO("Created Tickable NBT data.");
return true;
}
- public final long getFilterDamage(World world, final ItemStack aStack) {
+ public final long getTicks(World world, final ItemStack aStack) {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
aNBT = aNBT.getCompoundTag("TickableItem");
@@ -145,7 +150,7 @@ public class BaseItemTickable extends CoreItem {
return 0L;
}
- public final boolean setFilterDamage(World world, final ItemStack aStack, final long aDamage) {
+ public final boolean setTicks(World world, final ItemStack aStack, final long aDamage) {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
aNBT = aNBT.getCompoundTag("TickableItem");
@@ -160,7 +165,7 @@ public class BaseItemTickable extends CoreItem {
return false;
}
- public final boolean getIsActive(World world, final ItemStack aStack) {
+ public final boolean isTicking(World world, final ItemStack aStack) {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
aNBT = aNBT.getCompoundTag("TickableItem");
@@ -174,7 +179,7 @@ public class BaseItemTickable extends CoreItem {
return true;
}
- public final boolean setIsActive(World world, final ItemStack aStack, final boolean active) {
+ public final boolean setTicking(World world, final ItemStack aStack, final boolean active) {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
aNBT = aNBT.getCompoundTag("TickableItem");
@@ -251,26 +256,15 @@ public class BaseItemTickable extends CoreItem {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
if (aNBT.hasKey("TickableItem")) {
- aNBT = aNBT.getCompoundTag("TickableItem");
-
- /*if (!aNBT.hasKey("CreationDate") && world != null) {
- aNBT.setLong("CreationDate", world.getTotalWorldTime());
- }*/
-
+ aNBT = aNBT.getCompoundTag("TickableItem");
//Done Ticking
- if (maxTicks-getFilterDamage(world, aStack) <= 0) {
- setIsActive(world, aStack, false);
+ if (getMaxTicks(aStack)-getTicks(world, aStack) <= 0) {
+ setTicking(world, aStack, false);
return false;
}
- if (getIsActive(world, aStack)) {
+ if (isTicking(world, aStack)) {
if (aNBT != null) {
-
- //if ((world.getTotalWorldTime()-))
-
- // Just tick once
- aNBT.setLong("Tick", getFilterDamage(world, aStack)+1);
-
-
+ aNBT.setLong("Tick", getTicks(world, aStack)+1);
return true;
}
else {
@@ -288,10 +282,11 @@ public class BaseItemTickable extends CoreItem {
@Override
public double getDurabilityForDisplay(ItemStack stack) {
if (stack.getTagCompound() == null){
- createNBT(null, stack);
+ //createNBT(null, stack);
+ return 0;
}
- double currentDamage = getFilterDamage(null, stack);
- double durabilitypercent = currentDamage / maxTicks;
+ double currentDamage = getTicks(null, stack);
+ double durabilitypercent = currentDamage / getMaxTicks(stack);
return durabilitypercent;
}
@@ -302,23 +297,28 @@ public class BaseItemTickable extends CoreItem {
if (this.descriptionString.length > 0) {
list.add(EnumChatFormatting.GRAY+this.descriptionString[0]);
}
+ long maxTicks = getMaxTicks(stack);
+ long ticks = 0;
+ if (stack.hasTagCompound()) {
+ ticks = getTicks(world, stack);
+ }
EnumChatFormatting durability = EnumChatFormatting.GRAY;
- if (maxTicks-getFilterDamage(world, stack) > (maxTicks*0.8)){
+ if (maxTicks-ticks > (maxTicks*0.8)){
durability = EnumChatFormatting.GRAY;
}
- else if (maxTicks-getFilterDamage(world, stack) > (maxTicks*0.6)){
+ else if (maxTicks-ticks > (maxTicks*0.6)){
durability = EnumChatFormatting.GREEN;
}
- else if (maxTicks-getFilterDamage(world, stack) > (maxTicks*0.4)){
+ else if (maxTicks-ticks > (maxTicks*0.4)){
durability = EnumChatFormatting.YELLOW;
}
- else if (maxTicks-getFilterDamage(world, stack) > (maxTicks*0.2)){
+ else if (maxTicks-ticks > (maxTicks*0.2)){
durability = EnumChatFormatting.GOLD;
}
- else if (maxTicks-getFilterDamage(world, stack) > 0){
+ else if (maxTicks-ticks > 0){
durability = EnumChatFormatting.RED;
}
- list.add(durability+""+((maxTicks-getFilterDamage(world, stack))/20)+EnumChatFormatting.GRAY+" seconds until decay");
+ list.add(durability+""+((maxTicks-ticks)/20)+EnumChatFormatting.GRAY+" seconds until decay");
if (this.descriptionString.length > 1) {
for (int h=1;h<this.descriptionString.length;h++) {
diff --git a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockBasicTile.java b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockBasicTile.java
index 251230932c..14344c1817 100644
--- a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockBasicTile.java
+++ b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockBasicTile.java
@@ -51,11 +51,12 @@ public class ItemBlockBasicTile extends ItemBlock {
list.add("Use either Formaldehyde or Hydrogen cyanide");
list.add("Be weary of your neighbours");
}
- else if (this.mID == 7) {
-
+ else if (this.mID == 7) { // Egg Box
+ list.add("A box for holding big eggs");
}
- else if (this.mID == 8){
-
+ else if (this.mID == 8){ // Volumetric Flask Setter
+ list.add("Easy Flask Configuration");
+ list.add("Configure default input slot with a screwdriver");
}
else if (this.mID == 9){
diff --git a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockRoundRobinator.java b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockRoundRobinator.java
index 2d0fd00dd9..7a4222ed0f 100644
--- a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockRoundRobinator.java
+++ b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockRoundRobinator.java
@@ -107,4 +107,9 @@ public class ItemBlockRoundRobinator extends ItemBlockWithMetadata
public int getItemEnchantability(ItemStack stack) {
return 0;
}
+
+ @Override
+ public boolean getHasSubtypes() {
+ return true;
+ }
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java b/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
index 356fdac24e..883eb241da 100644
--- a/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
+++ b/src/Java/gtPlusPlus/core/item/base/ore/BaseOreComponent.java
@@ -178,9 +178,9 @@ public class BaseOreComponent extends Item{
@SideOnly(Side.CLIENT)
public void registerIcons(final IIconRegister par1IconRegister){
if (this.componentType == ComponentTypes.MILLED) {
- this.base = par1IconRegister.registerIcon(CORE.MODID + ":" + "processing/MilledOre/"+this.componentType.getComponent());
+ this.base = par1IconRegister.registerIcon(CORE.MODID + ":" + "processing/MilledOre/milled");
if (this.componentType.hasOverlay()){
- this.overlay = par1IconRegister.registerIcon(CORE.MODID + ":" + "processing/MilledOre/"+this.componentType.getComponent()+"_Overlay");
+ this.overlay = par1IconRegister.registerIcon(CORE.MODID + ":" + "processing/MilledOre/milled_OVERLAY");
}
}
else if (CORE.ConfigSwitches.useGregtechTextures){
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java
index 37428b18d6..badd318414 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java
@@ -5,7 +5,6 @@ import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_OreDictUnificator;
import gtPlusPlus.api.objects.minecraft.ItemPackage;
-import gtPlusPlus.core.item.ModItems;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.Utils;
@@ -289,6 +288,7 @@ public class CoalTar extends ItemPackage {
FluidStack aGtAcid = FluidUtils.getFluidStack("phtalicacid", 500);
if (aMyAcid != null && aGtAcid != null) {
CORE.RA.addDistilleryRecipe(CI.getNumberedBioCircuit(8), aMyAcid, aGtAcid, null, 50, 16, false);
+ CORE.RA.addDistilleryRecipe(CI.getNumberedBioCircuit(9), aGtAcid, aMyAcid, null, 50, 16, false);
}
}
@@ -354,7 +354,7 @@ public class CoalTar extends ItemPackage {
Naphthalene = FluidUtils.generateFluidNonMolten("Naphthalene", "Naphthalene", 115, new short[]{210, 185, 135, 100}, null, null);
// v - Oxidize with mercury and nitric acid
//Create Phthalic Acid
- Phthalic_Acid = FluidUtils.generateFluidNonMolten("PhthalicAcid", "Phtalic Acid", 207, new short[]{210, 220, 210, 100}, null, null);
+ Phthalic_Acid = FluidUtils.generateFluidNonMolten("PhthalicAcid", "Phthalic Acid", 207, new short[]{210, 220, 210, 100}, null, null);
// v - Dehydrate at 180C+
//Create Phthalic Anhydride
//ItemUtils.generateSpecialUseDusts("PhthalicAnhydride", "Phthalic Anhydride", "C6H4(CO)2O", Utils.rgbtoHexValue(175, 175, 175));
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
index 80a51d80cc..f61a2096b7 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java
@@ -406,7 +406,7 @@ public class GenericChem extends ItemPackage {
},
20 *60,
120,
- 2);
+ 4);
//Sodium ethyl xanthate - CH3CH2ONa + CS2 → CH3CH2OCS2Na
CORE.RA.addChemicalPlantRecipe(
@@ -425,7 +425,7 @@ public class GenericChem extends ItemPackage {
},
20 *60,
120,
- 2);
+ 4);
}
@@ -869,7 +869,7 @@ public class GenericChem extends ItemPackage {
},
20 * 30,
500,
- 3);
+ 4);
}
@@ -891,7 +891,7 @@ public class GenericChem extends ItemPackage {
},
20 * 15,
120,
- 1);
+ 2);
/*GT_Values.RA.addChemicalRecipe(
ItemUtils.getItemStackOfAmountFromOreDict("dustPhthalicAnhydride", 4),
@@ -922,7 +922,7 @@ public class GenericChem extends ItemPackage {
},
20 * 40,
120,
- 1);
+ 2);
/*GT_Values.RA.addChemicalRecipe(
ItemUtils.getItemStackOfAmountFromOreDict("platePalladium", 0),
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java b/src/Java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java
index 71bf2f3e6f..8c6e66fcb8 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/MilledOreProcessing.java
@@ -629,7 +629,7 @@ public class MilledOreProcessing extends ItemPackage {
},
20 * 60,
120,
- 2);
+ 3);
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] {
@@ -653,7 +653,7 @@ public class MilledOreProcessing extends ItemPackage {
},
20 * 45,
120,
- 3);
+ 4);
}
@@ -683,7 +683,7 @@ public class MilledOreProcessing extends ItemPackage {
aChances,
aTime * 20,
aEU,
- 1);
+ 3);
}
public static ItemStack[] cleanArray(ItemStack[] input) {
diff --git a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
index 719e5145e9..86088fe8c6 100644
--- a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
+++ b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java
@@ -100,7 +100,7 @@ public class RocketFuels extends ItemPackage {
CORE.RA.addChemicalPlantRecipe(
new ItemStack[]{
- ItemUtils.getItemStackOfAmountFromOreDict("dustCopper", 16),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustCopper", 12),
ItemUtils.getSimpleStack(GenericChem.mOrangeCatalyst, 0),
},
new FluidStack[] {
@@ -118,7 +118,7 @@ public class RocketFuels extends ItemPackage {
new int[]{100, 100, 50, 50},
20*30,
MaterialUtils.getVoltageForTier(3),
- 2);
+ 3);
}
@@ -276,7 +276,7 @@ public class RocketFuels extends ItemPackage {
},
20 * 60,
120,
- 2);
+ 3);
}
@@ -388,7 +388,7 @@ public class RocketFuels extends ItemPackage {
},
20 * 30,
240,
- 3);
+ 4);
// Monomethylhydrazine_Plus_Nitric_Acid
@@ -397,19 +397,19 @@ public class RocketFuels extends ItemPackage {
CI.getNumberedCircuit(3),
},
new FluidStack[] {
- FluidUtils.getFluidStack(Monomethylhydrazine, 1000),
+ FluidUtils.getFluidStack(Monomethylhydrazine, 2000),
FluidUtils.getFluidStack("nitricacid", 1000),
},
new ItemStack[] {
},
new FluidStack[] {
- FluidUtils.getFluidStack(Monomethylhydrazine_Plus_Nitric_Acid, 3000),
+ FluidUtils.getFluidStack(Monomethylhydrazine_Plus_Nitric_Acid, 2000),
},
20 * 45,
480,
- 3);
+ 5);
// Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide
@@ -425,12 +425,12 @@ public class RocketFuels extends ItemPackage {
},
new FluidStack[] {
- FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 4000),
+ FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 5000),
},
20 * 60,
480,
- 3);
+ 6);
}
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemBasicScrubberTurbine.java b/src/Java/gtPlusPlus/core/item/general/ItemBasicScrubberTurbine.java
new file mode 100644
index 0000000000..bd8159eb01
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/general/ItemBasicScrubberTurbine.java
@@ -0,0 +1,147 @@
+package gtPlusPlus.core.item.general;
+import java.util.List;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.IIcon;
+
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.Utils;
+
+public class ItemBasicScrubberTurbine extends Item {
+
+ public IIcon[] icons = new IIcon[1];
+
+ public ItemBasicScrubberTurbine() {
+ super();
+ this.setHasSubtypes(true);
+ String unlocalizedName = "itemBasicTurbine";
+ this.setUnlocalizedName(unlocalizedName);
+ this.setCreativeTab(AddToCreativeTab.tabMisc);
+ this.setMaxStackSize(1);
+ GameRegistry.registerItem(this, unlocalizedName);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ this.icons[0] = reg.registerIcon(CORE.MODID + ":" + "itemBasicTurbine");
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ return this.icons[0];
+ }
+
+ @Override
+ public void getSubItems(Item item, CreativeTabs tab, List list) {
+ for (int i = 0; i < 2; i ++) {
+ list.add(new ItemStack(item, 1, i));
+ }
+ }
+
+ @Override
+ public String getUnlocalizedName(ItemStack stack) {
+ return this.getUnlocalizedName() + "_" + stack.getItemDamage();
+ }
+
+ @Override
+ public String getItemStackDisplayName(final ItemStack tItem) {
+ if (tItem == null) {
+ return "Basic Turbine";
+ }
+ return super.getItemStackDisplayName(tItem);
+ }
+
+ @Override
+ public int getColorFromItemStack(final ItemStack stack, int HEX_OxFFFFFF) {
+ int meta = stack.getItemDamage();
+ if (meta == 0){
+ HEX_OxFFFFFF = Utils.rgbtoHexValue(200,200,200);
+ }
+ if (meta == 1){
+ HEX_OxFFFFFF = Utils.rgbtoHexValue(255,128,0);
+ }
+ return HEX_OxFFFFFF;
+ }
+
+ private static boolean createNBT(ItemStack rStack){
+ final NBTTagCompound tagMain = new NBTTagCompound();
+ final NBTTagCompound tagNBT = new NBTTagCompound();
+ tagNBT.setLong("Damage", 0);
+ tagMain.setTag("BasicTurbine", tagNBT);
+ rStack.setTagCompound(tagMain);
+ return true;
+ }
+
+ public static final long getFilterDamage(final ItemStack aStack) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("BasicTurbine");
+ if (aNBT != null) {
+ return aNBT.getLong("Damage");
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return 0L;
+ }
+
+ public static final boolean setFilterDamage(final ItemStack aStack, final long aDamage) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("BasicTurbine");
+ if (aNBT != null) {
+ aNBT.setLong("Damage", aDamage);
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public int getMaxDurability(ItemStack aStack) {
+ if (aStack != null) {
+ int aMeta = aStack.getItemDamage();
+ if (aMeta == 0) {
+ return 2500;
+ }
+ if (aMeta == 1) {
+ return 5000;
+ }
+ }
+ return 0;
+ }
+
+ @Override
+ public double getDurabilityForDisplay(ItemStack stack) {
+ if (stack.getTagCompound() == null){
+ createNBT(stack);
+ }
+ double currentDamage = getFilterDamage(stack);
+ double meta = getMaxDurability(stack);
+ double durabilitypercent = currentDamage / meta;
+ return durabilitypercent;
+ }
+
+ @Override
+ public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
+ list.add(EnumChatFormatting.GRAY+"An early tier Turbine for Atmospheric Reconditioning.");
+ int maxDamage = getMaxDurability(stack);
+ list.add(EnumChatFormatting.GRAY+""+(maxDamage-getFilterDamage(stack))+"/"+maxDamage+" uses left.");
+ super.addInformation(stack, player, list, bool);
+ }
+
+ @Override
+ public boolean showDurabilityBar(ItemStack stack) {
+ return true;
+ }
+
+} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java b/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java
index d98b27d163..b3338bb681 100644
--- a/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java
+++ b/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java
@@ -4,188 +4,232 @@ import static gtPlusPlus.core.lib.CORE.RANDOM;
import java.util.List;
-import gregtech.api.enums.ItemList;
+import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.api.objects.data.Pair;
import gtPlusPlus.core.entity.item.ItemEntityGiantEgg;
-import gtPlusPlus.core.item.base.BaseItemBurnable;
+import gtPlusPlus.core.item.base.BaseItemTickable;
+import gtPlusPlus.core.item.general.spawn.ItemCustomSpawnEgg;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.math.MathUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.core.util.minecraft.NBTUtils;
-import net.minecraft.creativetab.CreativeTabs;
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
+import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityList;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.MathHelper;
-import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
-public class ItemGiantEgg extends BaseItemBurnable {
+public class ItemGiantEgg extends BaseItemTickable {
- public ItemGiantEgg(String unlocalizedName, String displayName, CreativeTabs creativeTab, int stackSize, int maxDmg,
- String description, String oredictName, int burnTime, int meta) {
- super(unlocalizedName, displayName, creativeTab, stackSize, maxDmg, description, oredictName, burnTime, meta);
- this.setMaxStackSize(1);
- }
+ private static ItemStack turnsIntoItem;
+ private static ItemStack mCorrectEgg;
+ private static ItemStack mCorrectStemCells;
- @Override
- public String getItemStackDisplayName(ItemStack aStack) {
- String localName = super.getItemStackDisplayName(aStack);
- nbtWork(aStack);
- int size = 1;
- if (NBTUtils.hasKey(aStack, "size")){
- size = NBTUtils.getInteger(aStack, "size");
- return ""+size+" "+localName;
- }
- return "?? "+localName;
+ public void registerFuel(int burn){
+ CORE.burnables.add(new Pair<Integer, ItemStack>(burn, ItemUtils.getSimpleStack(this, 1)));
}
- private static ItemStack mCorrectEgg;
- private static ItemStack mCorrectStemCells;
+ public final void registerOrdictionary(String name){