aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/miscutil/core')
-rw-r--r--src/Java/miscutil/core/block/HeliumGenerator.java160
-rw-r--r--src/Java/miscutil/core/block/ModBlocks.java5
-rw-r--r--src/Java/miscutil/core/gui/ContainerHeliumGenerator.java95
-rw-r--r--src/Java/miscutil/core/gui/GUIHeliumGenerator.java44
-rw-r--r--src/Java/miscutil/core/gui/ModGUI.java37
-rw-r--r--src/Java/miscutil/core/item/ModItems.java330
-rw-r--r--src/Java/miscutil/core/item/base/BaseItemGeneric.java17
-rw-r--r--src/Java/miscutil/core/tileentities/TILE_ENTITY_BASE.java39
-rw-r--r--src/Java/miscutil/core/tileentities/TileEntityHeliumGenerator.java134
-rw-r--r--src/Java/miscutil/core/util/UtilsItems.java11
10 files changed, 716 insertions, 156 deletions
diff --git a/src/Java/miscutil/core/block/HeliumGenerator.java b/src/Java/miscutil/core/block/HeliumGenerator.java
new file mode 100644
index 0000000000..0df56d0022
--- /dev/null
+++ b/src/Java/miscutil/core/block/HeliumGenerator.java
@@ -0,0 +1,160 @@
+package miscutil.core.block;
+
+import java.util.Random;
+
+import miscutil.MiscUtils;
+import miscutil.core.creative.AddToCreativeTab;
+import miscutil.core.lib.CORE;
+import miscutil.core.tileentities.TileEntityHeliumGenerator;
+import net.minecraft.block.Block;
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.item.EntityItem;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.IIcon;
+import net.minecraft.util.MathHelper;
+import net.minecraft.world.IBlockAccess;
+import net.minecraft.world.World;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+public class HeliumGenerator extends BlockContainer {
+
+ private IIcon top, sides, front;
+ private Random randy = new Random();
+
+ public HeliumGenerator(){
+ super(Material.iron);
+ setStepSound(Block.soundTypeMetal);
+ setHardness(20.0F);
+ setBlockName("helium_collector");
+ setHarvestLevel("pickaxe", 3);
+ setCreativeTab(AddToCreativeTab.tabMachines);
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ public void registerBlockIcons (IIconRegister iconRegister)
+ {
+ this.top = iconRegister.registerIcon(CORE.MODID+":blockDefault");
+ this.sides = iconRegister.registerIcon(CORE.MODID+":blockDefault");
+ this.front = iconRegister.registerIcon(CORE.MODID+":blockDefault");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side){
+ if(side == 1)
+ return top;
+ int facing = 2;
+ TileEntityHeliumGenerator machine = (TileEntityHeliumGenerator)world.getTileEntity(x, y, z);
+ if(machine != null)
+ facing = machine.getFacing();
+ if(side == facing)
+ return front;
+ else
+ return sides;
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon (int side, int metadata)
+ {
+ if(side == 1)
+ return top;
+ if(side == 3)
+ return front;
+ return sides;
+ }
+
+ @Override
+ public boolean onBlockActivated (World world, int x, int y, int z, EntityPlayer player, int par6, float par7, float par8, float par9)
+ {
+ if (world.isRemote)
+ {
+ return true;
+ }
+ player.openGui(MiscUtils.instance, 2, world, x, y, z);
+ return true;
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world, int meta)
+ {
+ return new TileEntityHeliumGenerator();
+ }
+
+ @Override
+ public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack item)
+ {
+ TileEntity tile = world.getTileEntity(x, y, z);
+ if(tile instanceof TileEntityHeliumGenerator) {
+ TileEntityHeliumGenerator machine = (TileEntityHeliumGenerator)tile;
+ int l = MathHelper.floor_double((double) (player.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
+
+ if (l == 0)
+ machine.setFacing(2);
+
+ if (l == 1)
+ machine.setFacing(5);
+
+ if (l == 2)
+ machine.setFacing(3);
+
+ if (l == 3)
+ machine.setFacing(4);
+ }
+
+ }
+
+ @Override
+ public void breakBlock(World world, int x, int y, int z, Block block, int wut)
+ {
+ TileEntityHeliumGenerator collector = (TileEntityHeliumGenerator)world.getTileEntity(x, y, z);
+
+ if (collector != null)
+ {
+ ItemStack itemstack = collector.getStackInSlot(0);
+
+ if (itemstack != null)
+ {
+ float f = this.randy.nextFloat() * 0.8F + 0.1F;
+ float f1 = this.randy.nextFloat() * 0.8F + 0.1F;
+ float f2 = this.randy.nextFloat() * 0.8F + 0.1F;
+
+ while (itemstack.stackSize > 0)
+ {
+ int j1 = this.randy.nextInt(21) + 10;
+
+ if (j1 > itemstack.stackSize)
+ {
+ j1 = itemstack.stackSize;
+ }
+
+ itemstack.stackSize -= j1;
+ EntityItem entityitem = new EntityItem(world, (double)((float)x + f), (double)((float)y + f1), (double)((float)z + f2), new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));
+
+ if (itemstack.hasTagCompound())
+ {
+ entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());
+ }
+
+ float f3 = 0.05F;
+ entityitem.motionX = (double)((float)this.randy.nextGaussian() * f3);
+ entityitem.motionY = (double)((float)this.randy.nextGaussian() * f3 + 0.2F);
+ entityitem.motionZ = (double)((float)this.randy.nextGaussian() * f3);
+ world.spawnEntityInWorld(entityitem);
+ }
+ }
+
+ world.func_147453_f(x, y, z, block);
+ }
+
+ super.breakBlock(world, x, y, z, block, wut);
+ }
+}
diff --git a/src/Java/miscutil/core/block/ModBlocks.java b/src/Java/miscutil/core/block/ModBlocks.java
index 7ddc3d07af..b9a74a08c4 100644
--- a/src/Java/miscutil/core/block/ModBlocks.java
+++ b/src/Java/miscutil/core/block/ModBlocks.java
@@ -2,6 +2,7 @@ package miscutil.core.block;
import miscutil.core.block.fluids.BlocktestFluid;
import miscutil.core.lib.CORE;
+import miscutil.core.tileentities.TileEntityHeliumGenerator;
import miscutil.core.util.Utils;
import miscutil.gregtech.common.blocks.GregtechMetaCasingBlocks;
import net.minecraft.block.Block;
@@ -18,6 +19,7 @@ public final class ModBlocks {
// WIP TODO public static Block blockToolBuilder;
public static Block blockGriefSaver;
public static Block blockCasingsMisc;
+ public static Block blockHeliumGenerator;
@@ -74,6 +76,9 @@ public final class ModBlocks {
testFluidBlock = new BlocktestFluid(testFluid, Material.water).setBlockName("yourFluid");
GameRegistry.registerBlock(testFluidBlock, CORE.MODID + "_" + testFluidBlock.getUnlocalizedName().substring(5));
testFluid.setUnlocalizedName(testFluidBlock.getUnlocalizedName());
+
+ blockHeliumGenerator = GameRegistry.registerBlock(new HeliumGenerator(), "Helium_Collector");
+ GameRegistry.registerTileEntity(TileEntityHeliumGenerator.class, "Helium");
//WIP TODO
//GameRegistry.registerBlock(blockGriefSaver, "blockGriefSaver");
diff --git a/src/Java/miscutil/core/gui/ContainerHeliumGenerator.java b/src/Java/miscutil/core/gui/ContainerHeliumGenerator.java
new file mode 100644
index 0000000000..ae8e2d3176
--- /dev/null
+++ b/src/Java/miscutil/core/gui/ContainerHeliumGenerator.java
@@ -0,0 +1,95 @@
+package miscutil.core.gui;
+
+import miscutil.core.tileentities.TileEntityHeliumGenerator;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.inventory.Container;
+import net.minecraft.inventory.Slot;
+import net.minecraft.inventory.SlotFurnace;
+import net.minecraft.item.ItemStack;
+
+public class ContainerHeliumGenerator extends Container {
+ private TileEntityHeliumGenerator tileThis;
+
+ public ContainerHeliumGenerator(InventoryPlayer player, TileEntityHeliumGenerator machine)
+ {
+ this.tileThis = machine;
+ this.addSlotToContainer(new SlotFurnace(player.player, machine, 2, 80, 35));
+ int i;
+
+ for (i = 0; i < 3; ++i)
+ {
+ for (int j = 0; j < 9; ++j)
+ {
+ this.addSlotToContainer(new Slot(player, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
+ }
+ }
+
+ for (i = 0; i < 9; ++i)
+ {
+ this.addSlotToContainer(new Slot(player, i, 8 + i * 18, 142));
+ }
+ }
+
+ public boolean canInteractWith(EntityPlayer player)
+ {
+ return this.tileThis.isUseableByPlayer(player);
+ }
+
+ /**
+ * Called when a player shift-clicks on a slot. You must override this or you will crash when someone does that.
+ */
+ public ItemStack transferStackInSlot(EntityPlayer player, int slotNumber)
+ {
+ ItemStack itemstack = null;
+ Slot slot = (Slot)this.inventorySlots.get(slotNumber);
+
+ if (slot != null && slot.getHasStack())
+ {
+ ItemStack itemstack1 = slot.getStack();
+ itemstack = itemstack1.copy();
+
+ if (slotNumber == 0)
+ {
+ if (!this.mergeItemStack(itemstack1, 1, 37, true))
+ {
+ return null;
+ }
+
+ slot.onSlotChange(itemstack1, itemstack);
+ }
+ else
+ {
+ if (slotNumber >= 1 && slotNumber < 28)
+ {
+ if (!this.mergeItemStack(itemstack1, 28, 37, false))
+ {
+ return null;
+ }
+ }
+ else if (slotNumber >= 28 && slotNumber < 37 && !this.mergeItemStack(itemstack1, 1, 28, false))
+ {
+ return null;
+ }
+ }
+
+ if (itemstack1.stackSize == 0)
+ {
+ slot.putStack((ItemStack)null);
+ }
+ else
+ {
+ slot.onSlotChanged();
+ }
+
+ if (itemstack1.stackSize == itemstack.stackSize)
+ {
+ return null;
+ }
+
+ slot.onPickupFromSlot(player, itemstack1);
+ }
+
+ return itemstack;
+ }
+} \ No newline at end of file
diff --git a/src/Java/miscutil/core/gui/GUIHeliumGenerator.java b/src/Java/miscutil/core/gui/GUIHeliumGenerator.java
new file mode 100644
index 0000000000..6510f7480f
--- /dev/null
+++ b/src/Java/miscutil/core/gui/GUIHeliumGenerator.java
@@ -0,0 +1,44 @@
+package miscutil.core.gui;
+
+import miscutil.core.lib.CORE;
+import miscutil.core.tileentities.TileEntityHeliumGenerator;
+import net.minecraft.client.gui.inventory.GuiContainer;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.util.ResourceLocation;
+import net.minecraft.util.StatCollector;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+@SideOnly(Side.CLIENT)
+public class GUIHeliumGenerator extends GuiContainer
+{
+ private static final ResourceLocation collectorGuiTexture = new ResourceLocation(CORE.MODID, "textures/gui/helium_collector_gui.png");
+
+ public GUIHeliumGenerator(InventoryPlayer player, TileEntityHeliumGenerator machine)
+ {
+ super(new ContainerHeliumGenerator(player, machine));
+ }
+
+ /**
+ * Draw the foreground layer for the GuiContainer (everything in front of the items)
+ */
+ protected void drawGuiContainerForegroundLayer(int p_146979_1_, int p_146979_2_)
+ {
+ String s = StatCollector.translateToLocal("container.helium_collector");
+ this.fontRendererObj.drawString(s, this.xSize / 2 - this.fontRendererObj.getStringWidth(s) / 2, 6, 4210752);
+ this.fontRendererObj.drawString(StatCollector.translateToLocal("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
+ }
+
+ protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_)
+ {
+ GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
+ this.mc.getTextureManager().bindTexture(collectorGuiTexture);
+ int k = (this.width - this.xSize) / 2;
+ int l = (this.height - this.ySize) / 2;
+ this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize);
+
+ }
+} \ No newline at end of file
diff --git a/src/Java/miscutil/core/gui/ModGUI.java b/src/Java/miscutil/core/gui/ModGUI.java
index 28987ccc1b..1e4d172637 100644
--- a/src/Java/miscutil/core/gui/ModGUI.java
+++ b/src/Java/miscutil/core/gui/ModGUI.java
@@ -1,6 +1,12 @@
package miscutil.core.gui;
+import miscutil.MiscUtils;
+import miscutil.core.tileentities.TileEntityHeliumGenerator;
import miscutil.core.util.Utils;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.world.World;
+import cpw.mods.fml.common.network.IGuiHandler;
+import cpw.mods.fml.common.network.NetworkRegistry;
public class ModGUI {
@@ -8,8 +14,37 @@ public class ModGUI {
public static void init(){
Utils.LOG_INFO("Registering GUIs.");
-
+ NetworkRegistry.INSTANCE.registerGuiHandler(MiscUtils.instance, new GUI_HANDLER());
//Register GuiHandler
//NetworkRegistry.INSTANCE.registerGuiHandler(MiscUtils.instance, new GuiHandler());
}
}
+
+class GUI_HANDLER implements IGuiHandler {
+
+ @Override
+ public Object getClientGuiElement (int ID, EntityPlayer player, World world, int x, int y, int z){
+ if(ID == 0)
+ return false;
+ else if(ID == 1)
+ return false;
+ else if(ID == 2)
+ return new GUIHeliumGenerator(player.inventory, (TileEntityHeliumGenerator)world.getTileEntity(x, y, z));
+ else if(ID == 3)
+ return false;
+ return null;
+ }
+
+ @Override
+ public Object getServerGuiElement (int ID, EntityPlayer player, World world, int x, int y, int z){
+ if(ID == 0)
+ return false;
+ else if(ID == 1)
+ return false;
+ else if(ID == 2)
+ return new ContainerHeliumGenerator(player.inventory, (TileEntityHeliumGenerator)world.getTileEntity(x, y, z));
+ else if(ID == 3)
+ return false;
+ return null;
+ }
+}
diff --git a/src/Java/miscutil/core/item/ModItems.java b/src/Java/miscutil/core/item/ModItems.java
index 0d7f4c2542..ab97e89edc 100644
--- a/src/Java/miscutil/core/item/ModItems.java
+++ b/src/Java/miscutil/core/item/ModItems.java
@@ -1,9 +1,7 @@
package miscutil.core.item;
-import static miscutil.core.creative.AddToCreativeTab.tabMisc;
import static miscutil.core.lib.CORE.LOAD_ALL_CONTENT;
import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.item.effects.RarityUncommon;
import miscutil.core.item.general.BufferCore;
import miscutil.core.item.tool.misc.SandstoneHammer;
import miscutil.core.item.tool.staballoy.StaballoyAxe;
@@ -11,13 +9,14 @@ import miscutil.core.item.tool.staballoy.StaballoyPickaxe;
import miscutil.core.lib.CORE;
import miscutil.core.lib.LoadedMods;
import miscutil.core.util.Utils;
+import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.Item.ToolMaterial;
-import net.minecraft.item.ItemArmor.ArmorMaterial;
import net.minecraftforge.common.util.EnumHelper;
import cpw.mods.fml.common.registry.GameRegistry;
public final class ModItems {
+ private static int totalGenerated = 0;
/* A name for the material. This should be the same as the name of the variable we use to store the material (in this case "TUTORIAL").
A harvest level for pickaxes. This is a value between 0 and 3 and defines which blocks can be mined with this tool. Its also possible to create blocks which need a higher harvest level than 3, but then you are not able to mine them with vanilla tools.
Common values for the harvest level are:
@@ -59,22 +58,6 @@ public final class ModItems {
public static ToolMaterial tutMaterial = EnumHelper.addToolMaterial("BloodSteel Tool Material", 3, 200, 15.0F, 4.0F, 10);
public static ToolMaterial STABALLOY = EnumHelper.addToolMaterial("Staballoy", 3, 2500, 7, 1.0F, 18);
- //Armour Materials
- public static ArmorMaterial tutArmorMaterial = EnumHelper.addArmorMaterial("BloodSteel Armor Material", 33, new int[]{2, 5, 4, 2}, 10);
-
- //Base Classes For Items
- public static Item tutPickaxe;
- public static Item tutAxe;
- public static Item tutSword;
- public static Item tutHoe;
- public static Item tutSpade;
-
- //Base Classes For Armour
- public static Item tutHelmet;
- public static Item tutPlate;
- public static Item tutPants;
- public static Item tutBoots;
-
//EnderIO
public static Item itemPlateSoularium;
public static Item itemPlateRedstoneAlloy;
@@ -114,77 +97,34 @@ public final class ModItems {
public static Item itemStaballoyAxe;
public static Item itemPlateStaballoy;
public static Item itemIngotStaballoy;
-
+
//Tools
public static Item itemSandstoneHammer;
//Machine Related
public static Item itemBufferCore0;
-
+
//Material related
public static Item itemStickyRubber;
public static Item itemIngotBatteryAlloy;
public static Item itemPlateBatteryAlloy;
- public static Item item_PLEASE_FACTOR_ME_3;
+ public static Item itemHeliumBlob;
public static Item item_PLEASE_FACTOR_ME_4;
-
- //@SuppressWarnings("unused")
public static final void init(){
- /* //Blood Steel Equipment
-
- //Item Init
- tutPickaxe = new BloodSteelPickaxe(tutMaterial).setUnlocalizedName("BloodSteelPickaxe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelPickaxe");
- tutAxe = new BloodSteelAxe(tutMaterial).setUnlocalizedName("BloodSteelAxe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelAxe");
- tutSword = new BloodSteelSword(tutMaterial).setUnlocalizedName("BloodSteelSword").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelSword");
- tutHoe = new BloodSteelHoe(tutMaterial).setUnlocalizedName("BloodSteelHoe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelHoe");
- tutSpade = new BloodSteelSpade(tutMaterial).setUnlocalizedName("BloodSteelSpade").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelSpade");
- tutHelmet = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 0).setUnlocalizedName("BloodSteelHelmet").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelHelmet");
- tutPlate = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 1).setUnlocalizedName("BloodSteelPlate").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelPlate");
- tutPants = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 2).setUnlocalizedName("BloodSteelPants").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelPants");
- tutBoots = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 3).setUnlocalizedName("BloodSteelBoots").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelBoots");
-
- //Registry
- GameRegistry.registerItem(tutPickaxe, tutPickaxe.getUnlocalizedName());
- GameRegistry.registerItem(tutAxe, tutAxe.getUnlocalizedName());
- GameRegistry.registerItem(tutSword, tutSword.getUnlocalizedName());
- GameRegistry.registerItem(tutHoe, tutHoe.getUnlocalizedName());
- GameRegistry.registerItem(tutSpade, tutSpade.getUnlocalizedName());
- GameRegistry.registerItem(tutHelmet, tutHelmet.getUnlocalizedName());
- GameRegistry.registerItem(tutPlate, tutPlate.getUnlocalizedName());
- GameRegistry.registerItem(tutPants, tutPants.getUnlocalizedName());
- GameRegistry.registerItem(tutBoots, tutBoots.getUnlocalizedName()); */
-
-
-
-
-
-
//EnderIO Resources
if (LoadedMods.EnderIO || LOAD_ALL_CONTENT){
- Utils.LOG_INFO("EnderIO Found - Loading Resources.");
- //Item Init
- itemPlateSoularium = new Item().setUnlocalizedName("itemPlateSoularium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateSoularium");
- itemPlateRedstoneAlloy = new Item().setUnlocalizedName("itemPlateRedstoneAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateRedstoneAlloy");
- itemPlateElectricalSteel = new Item().setUnlocalizedName("itemPlateElectricalSteel").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateElectricalSteel");
- itemPlatePulsatingIron = new Item().setUnlocalizedName("itemPlatePulsatingIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlatePulsatingIron");
- itemPlateEnergeticAlloy = new Item().setUnlocalizedName("itemPlateEnergeticAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateEnergeticAlloy");
- itemPlateVibrantAlloy = new Item().setUnlocalizedName("itemPlateVibrantAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateVibrantAlloy");
- itemPlateConductiveIron = new Item().setUnlocalizedName("itemPlateConductiveIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateConductiveIron");
- itemPlateDarkSteel = new Item().setUnlocalizedName("itemPlateDarkSteel").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateDarkSteel");
-
-
- //Registry
- GameRegistry.registerItem(itemPlateSoularium, "itemPlateSoularium");
- GameRegistry.registerItem(itemPlateRedstoneAlloy, "itemPlateRedstoneAlloy");
- GameRegistry.registerItem(itemPlateElectricalSteel, "itemPlateElectricalSteel");
- GameRegistry.registerItem(itemPlatePulsatingIron, "itemPlatePulsatingIron");
- GameRegistry.registerItem(itemPlateEnergeticAlloy, "itemPlateEnergeticAlloy");
- GameRegistry.registerItem(itemPlateVibrantAlloy, "itemPlateVibrantAlloy");
- GameRegistry.registerItem(itemPlateConductiveIron, "itemPlateConductiveIron");
- GameRegistry.registerItem(itemPlateDarkSteel, "itemPlateDarkSteel");
+ Utils.LOG_INFO("EnderIO Found - Loading Resources.");
+ GenerateItem(itemPlateSoularium, "itemPlateSoularium", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateRedstoneAlloy, "itemPlateRedstoneAlloy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateElectricalSteel, "itemPlateElectricalSteel", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlatePulsatingIron, "itemPlatePulsatingIron", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateEnergeticAlloy, "itemPlateEnergeticAlloy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateVibrantAlloy, "itemPlateVibrantAlloy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateConductiveIron, "itemPlateConductiveIron", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateDarkSteel, "itemPlateDarkSteel", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("EnderIO not Found - Skipping Resources.");
@@ -192,17 +132,10 @@ public final class ModItems {
//Big Reactors
if (LoadedMods.Big_Reactors|| LOAD_ALL_CONTENT){
- Utils.LOG_INFO("BigReactors Found - Loading Resources.");
- //Item Init
- itemPlateBlutonium = new Item().setUnlocalizedName("itemPlateBlutonium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateBlutonium");
- itemPlateCyanite = new Item().setUnlocalizedName("itemPlateCyanite").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateCyanite");
- itemPlateLudicrite = new Item().setUnlocalizedName("itemPlateLudicrite").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateLudicrite");
-
- //Registry
- GameRegistry.registerItem(itemPlateBlutonium, "itemPlateBlutonium");
- GameRegistry.registerItem(itemPlateCyanite, "itemPlateCyanite");
- GameRegistry.registerItem(itemPlateLudicrite, "itemPlateLudicrite");
-
+ Utils.LOG_INFO("BigReactors Found - Loading Resources.");
+ GenerateItem(itemPlateBlutonium, "itemPlateBlutonium", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateCyanite, "itemPlateCyanite", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateLudicrite, "itemPlateLudicrite", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("BigReactors not Found - Skipping Resources.");
@@ -210,17 +143,8 @@ public final class ModItems {
//Thaumcraft
if (LoadedMods.Thaumcraft|| LOAD_ALL_CONTENT){
- Utils.LOG_INFO("Thaumcraft Found - Loading Resources.");
- //Item Init
- try {
- itemPlateVoidMetal = new Item().setUnlocalizedName("itemPlateVoidMetal").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateVoidMetal");
- } catch (NullPointerException e){
- e.getClass();
- }
-
- //Registry
- GameRegistry.registerItem(itemPlateVoidMetal, "itemPlateVoidMetal");
-
+ Utils.LOG_INFO("Thaumcraft Found - Loading Resources.");
+ GenerateItem(itemPlateVoidMetal, "itemPlateVoidMetal", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("Thaumcraft not Found - Skipping Resources.");
@@ -228,16 +152,8 @@ public final class ModItems {
//ExtraUtils
if (LoadedMods.Extra_Utils|| LOAD_ALL_CONTENT){
- Utils.LOG_INFO("ExtraUtilities Found - Loading Resources.");
- //Item Init
- try {
- itemPlateBedrockium = new Item().setUnlocalizedName("itemPlateBedrockium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateBedrockium");
- } catch (NullPointerException e){
- e.getClass();
- }
- //Registry
- GameRegistry.registerItem(itemPlateBedrockium, "itemPlateBedrockium");
-
+ Utils.LOG_INFO("ExtraUtilities Found - Loading Resources.");
+ GenerateItem(itemPlateBedrockium, "itemPlateBedrockium", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("ExtraUtilities not Found - Skipping Resources.");
@@ -245,13 +161,8 @@ public final class ModItems {
//Pneumaticraft
if (LoadedMods.PneumaticCraft|| LOAD_ALL_CONTENT){
- Utils.LOG_INFO("PneumaticCraft Found - Loading Resources.");
- //Item Init
- itemPlateCompressedIron = new Item().setUnlocalizedName("itemPlateCompressedIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateCompressedIron");
-
- //Registry
- GameRegistry.registerItem(itemPlateCompressedIron, "itemPlateCompressedIron");
-
+ Utils.LOG_INFO("PneumaticCraft Found - Loading Resources.");
+ GenerateItem(itemPlateCompressedIron, "itemPlateCompressedIron", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("PneumaticCraft not Found - Skipping Resources.");
@@ -260,12 +171,7 @@ public final class ModItems {
//Simply Jetpacks
if (LoadedMods.Simply_Jetpacks|| LOAD_ALL_CONTENT){
Utils.LOG_INFO("SimplyJetpacks Found - Loading Resources.");
- //Item Init
- itemPlateEnrichedSoularium = new RarityUncommon().setUnlocalizedName("itemPlateEnrichedSoularium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateSoularium");
-
- //Registry
- GameRegistry.registerItem(itemPlateEnrichedSoularium, "itemPlateEnrichedSoularium");
-
+ GenerateItem(itemPlateEnrichedSoularium, "itemPlateEnrichedSoularium", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("SimplyJetpacks not Found - Skipping Resources.");
@@ -275,12 +181,7 @@ public final class ModItems {
//rfTools
if (LoadedMods.RFTools|| LOAD_ALL_CONTENT){
Utils.LOG_INFO("rfTools Found - Loading Resources.");
- //Item Init
- itemPlateDimensionShard = new Item().setUnlocalizedName("itemPlateDimensionShard").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateDimensionShard");
-
- //Registry
- GameRegistry.registerItem(itemPlateDimensionShard, "itemPlateDimensionShard");
-
+ GenerateItem(itemPlateDimensionShard, "itemPlateDimensionShard", AddToCreativeTab.tabMisc, 64, 0);
}
else {
Utils.LOG_WARNING("rfTools not Found - Skipping Resources.");
@@ -295,50 +196,165 @@ public final class ModItems {
GameRegistry.registerItem(itemStaballoyPickaxe, itemStaballoyPickaxe.getUnlocalizedName());
itemStaballoyAxe = new StaballoyAxe("itemStaballoyAxe", STABALLOY).setCreativeTab(AddToCreativeTab.tabTools);
GameRegistry.registerItem(itemStaballoyAxe, itemStaballoyAxe.getUnlocalizedName());
-
- //Staballoy Ingot/Plate
- itemIngotStaballoy = new Item().setUnlocalizedName("itemIngotStaballoy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemIngotStaballoy");
- GameRegistry.registerItem(itemIngotStaballoy, "itemIngotStaballoy");
- itemPlateStaballoy = new Item().setUnlocalizedName("itemPlateStaballoy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemPlateStaballoy");
- GameRegistry.registerItem(itemPlateStaballoy, "itemPlateStaballoy");
-
- //Blood Steel Ingot/Plate
- itemIngotBloodSteel = new Item().setUnlocalizedName("itemIngotBloodSteel").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemIngotBloodSteel");
- GameRegistry.registerItem(itemIngotBloodSteel, "itemIngotBloodSteel");
- itemPlateBloodSteel = new Item().setUnlocalizedName("itemPlateBloodSteel").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemPlateBloodSteel");
- GameRegistry.registerItem(itemPlateBloodSteel, "itemPlateBloodSteel");
-
+
//Sandstone Hammer
itemSandstoneHammer = new SandstoneHammer("itemSandstoneHammer").setCreativeTab(AddToCreativeTab.tabTools);
GameRegistry.registerItem(itemSandstoneHammer, itemSandstoneHammer.getUnlocalizedName());
-
+
//Buffer Cores!
Item itemBufferCore;
for(int i=1; i<=10; i++){
Utils.LOG_INFO(""+i);
itemBufferCore = new BufferCore("itemBufferCore", i).setCreativeTab(AddToCreativeTab.tabMisc);
GameRegistry.registerItem(itemBufferCore, itemBufferCore.getUnlocalizedName()+i);
- System.out.println("Buffer Core registration count is: "+i);
- }
-
+ System.out.println("Buffer Core registration count is: "+i);
+ }
+
+ GenerateItem(itemHeliumBlob, "itemHeliumBlob", AddToCreativeTab.tabMisc, 32, 2);
+ GenerateItem(itemStickyRubber, "itemStickyRubber", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemIngotBatteryAlloy, "itemIngotBatteryAlloy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateBatteryAlloy, "itemPlateBatteryAlloy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemIngotStaballoy, "itemIngotStaballoy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateStaballoy, "itemPlateStaballoy", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemIngotBloodSteel, "itemIngotBloodSteel", AddToCreativeTab.tabMisc, 64, 0);
+ GenerateItem(itemPlateBloodSteel, "itemPlateBloodSteel", AddToCreativeTab.tabMisc, 64, 0);
+
+
+ /*GenerateItem(itemHeliumBlob, "heliumBlob", AddToCreativeTab.tabMisc);
+ GenerateItem(itemHeliumBlob, "heliumBlob", AddToCreativeTab.tabMisc);
+
+//Armour Materials
+ public static ArmorMaterial tutArmorMaterial = EnumHelper.addArmorMaterial("BloodSteel Armor Material", 33, new int[]{2, 5, 4, 2}, 10);
+
+ //Base Classes For Items
+ public static Item tutPickaxe;
+ public static Item tutAxe;
+ public static Item tutSword;
+ public static Item tutHoe;
+ public static Item tutSpade;
+
+ //Base Classes For Armour
+ public static Item tutHelmet;
+ public static Item tutPlate;
+ public static Item tutPants;
+ public static Item tutBoots;
+
+ itemPlateDimensionShard = new Item().setUnlocalizedName("itemPlateDimensionShard").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateDimensionShard");
+ GameRegistry.registerItem(itemPlateDimensionShard, "itemPlateDimensionShard");
+
+
+ //Item Init
+ itemPlateSoularium = new Item().setUnlocalizedName("itemPlateSoularium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateSoularium");
+ itemPlateRedstoneAlloy = new Item().setUnlocalizedName("itemPlateRedstoneAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateRedstoneAlloy");
+ itemPlateElectricalSteel = new Item().setUnlocalizedName("itemPlateElectricalSteel").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateElectricalSteel");
+ itemPlatePulsatingIron = new Item().setUnlocalizedName("itemPlatePulsatingIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlatePulsatingIron");
+ itemPlateEnergeticAlloy = new Item().setUnlocalizedName("itemPlateEnergeticAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateEnergeticAlloy");
+ itemPlateVibrantAlloy = new Item().setUnlocalizedName("itemPlateVibrantAlloy").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateVibrantAlloy");
+ itemPlateConductiveIron = new Item().setUnlocalizedName("itemPlateConductiveIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateConductiveIron");
+ itemPlateDarkSteel = new Item().setUnlocalizedName("itemPlateDarkSteel").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateDarkSteel");
+
+ //Blood Steel Equipment
+
+ //Item Init
+ tutPickaxe = new BloodSteelPickaxe(tutMaterial).setUnlocalizedName("BloodSteelPickaxe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelPickaxe");
+ tutAxe = new BloodSteelAxe(tutMaterial).setUnlocalizedName("BloodSteelAxe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelAxe");
+ tutSword = new BloodSteelSword(tutMaterial).setUnlocalizedName("BloodSteelSword").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelSword");
+ tutHoe = new BloodSteelHoe(tutMaterial).setUnlocalizedName("BloodSteelHoe").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelHoe");
+ tutSpade = new BloodSteelSpade(tutMaterial).setUnlocalizedName("BloodSteelSpade").setCreativeTab(TMCreativeTabs.tabTools).setTextureName(CORE.MODID + ":BloodSteelSpade");
+ tutHelmet = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 0).setUnlocalizedName("BloodSteelHelmet").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelHelmet");
+ tutPlate = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 1).setUnlocalizedName("BloodSteelPlate").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelPlate");
+ tutPants = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 2).setUnlocalizedName("BloodSteelPants").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelPants");
+ tutBoots = new BloodSteelArmor(tutArmorMaterial, MiscUtils.proxy.addArmor("BloodSteelArmor"), 3).setUnlocalizedName("BloodSteelBoots").setCreativeTab(TMCreativeTabs.tabCombat).setTextureName(CORE.MODID + ":BloodSteelBoots");
+
+ //Registry
+ GameRegistry.registerItem(tutPickaxe, tutPickaxe.getUnlocalizedName());
+ GameRegistry.registerItem(tutAxe, tutAxe.getUnlocalizedName());
+ GameRegistry.registerItem(tutSword, tutSword.getUnlocalizedName());
+ GameRegistry.registerItem(tutHoe, tutHoe.getUnlocalizedName());
+ GameRegistry.registerItem(tutSpade, tutSpade.getUnlocalizedName());
+ GameRegistry.registerItem(tutHelmet, tutHelmet.getUnlocalizedName());
+ GameRegistry.registerItem(tutPlate, tutPlate.getUnlocalizedName());
+ GameRegistry.registerItem(tutPants, tutPants.getUnlocalizedName());
+ GameRegistry.registerItem(tutBoots, tutBoots.getUnlocalizedName());
+
+ //Registry
+ GameRegistry.registerItem(itemPlateSoularium, "itemPlateSoularium");
+ GameRegistry.registerItem(itemPlateRedstoneAlloy, "itemPlateRedstoneAlloy");
+ GameRegistry.registerItem(itemPlateElectricalSteel, "itemPlateElectricalSteel");
+ GameRegistry.registerItem(itemPlatePulsatingIron, "itemPlatePulsatingIron");
+ GameRegistry.registerItem(itemPlateEnergeticAlloy, "itemPlateEnergeticAlloy");
+ GameRegistry.registerItem(itemPlateVibrantAlloy, "itemPlateVibrantAlloy");
+ GameRegistry.registerItem(itemPlateConductiveIron, "itemPlateConductiveIron");
+ GameRegistry.registerItem(itemPlateDarkSteel, "itemPlateDarkSteel");
+
+ //Item Init
+ itemPlateEnrichedSoularium = new RarityUncommon().setUnlocalizedName("itemPlateEnrichedSoularium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateSoularium");
+
+ //Registry
+ GameRegistry.registerItem(itemPlateEnrichedSoularium, "itemPlateEnrichedSoularium");
+ //Item Init
+ itemPlateCompressedIron = new Item().setUnlocalizedName("itemPlateCompressedIron").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateCompressedIron");
+
+ //Registry
+ GameRegistry.registerItem(itemPlateCompressedIron, "itemPlateCompressedIron");
+
+ //Item Init
+ itemPlateBlutonium = new Item().setUnlocalizedName("itemPlateBlutonium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateBlutonium");
+ itemPlateCyanite = new Item().setUnlocalizedName("itemPlateCyanite").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateCyanite");
+ itemPlateLudicrite = new Item().setUnlocalizedName("itemPlateLudicrite").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateLudicrite");
+
+ //Registry
+ GameRegistry.registerItem(itemPlateBlutonium, "itemPlateBlutonium");
+ GameRegistry.registerItem(itemPlateCyanite, "itemPlateCyanite");
+ GameRegistry.registerItem(itemPlateLudicrite, "itemPlateLudicrite");
+
+ //Item Init
+ try {
+ itemPlateVoidMetal = new Item().setUnlocalizedName("itemPlateVoidMetal").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateVoidMetal");
+ } catch (NullPointerException e){
+ e.getClass();
+ }
+
+ //Registry
+ GameRegistry.registerItem(itemPlateVoidMetal, "itemPlateVoidMetal");
+
+ //Item Init
+ try {
+ itemPlateBedrockium = new Item().setUnlocalizedName("itemPlateBedrockium").setCreativeTab(AddToCreativeTab.tabMisc).setTextureName(CORE.MODID + ":itemPlateBedrockium");
+ } catch (NullPointerException e){
+ e.getClass();
+ }
+ //Registry
+ GameRegistry.registerItem(itemPlateBedrockium, "itemPlateBedrockium");
+
//Dev Items
itemStickyRubber = new Item().setUnlocalizedName("itemStickyRubber").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
GameRegistry.registerItem(itemStickyRubber, "itemStickyRubber");
-
+
//Battery Alloy For cheap Niggers
itemIngotBatteryAlloy = new Item().setUnlocalizedName("itemIngotBatteryAlloy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
GameRegistry.registerItem(itemIngotBatteryAlloy, "itemIngotBatteryAlloy");
itemPlateBatteryAlloy = new Item().setUnlocalizedName("itemPlateBatteryAlloy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
- GameRegistry.registerItem(itemPlateBatteryAlloy, "itemPlateBatteryAlloy");
-
-
- /*
- item_PLEASE_FACTOR_ME_3 = new Item().setUnlocalizedName("unlocalName3").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
- GameRegistry.registerItem(item_PLEASE_FACTOR_ME_3, "localName3");
- item_PLEASE_FACTOR_ME_4 = new Item().setUnlocalizedName("unlocalName4").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
+ GameRegistry.registerItem(itemPlateBatteryAlloy, "itemPlateBatteryAlloy");*/
+
+
+ /*//Staballoy Ingot/Plate
+ itemIngotStaballoy = new Item().setUnlocalizedName("itemIngotStaballoy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemIngotStaballoy");
+ GameRegistry.registerItem(itemIngotStaballoy, "itemIngotStaballoy");
+ itemPlateStaballoy = new Item().setUnlocalizedName("itemPlateStaballoy").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemPlateStaballoy");
+ GameRegistry.registerItem(itemPlateStaballoy, "itemPlateStaballoy");
+
+ //Blood Steel Ingot/Plate
+ itemIngotBloodSteel = new Item().setUnlocalizedName("itemIngotBloodSteel").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemIngotBloodSteel");
+ GameRegistry.registerItem(itemIngotBloodSteel, "itemIngotBloodSteel");
+ itemPlateBloodSteel = new Item().setUnlocalizedName("itemPlateBloodSteel").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemPlateBloodSteel");
+ GameRegistry.registerItem(itemPlateBloodSteel, "itemPlateBloodSteel");*/
+
+
+ /*item_PLEASE_FACTOR_ME_4 = new Item().setUnlocalizedName("unlocalName4").setCreativeTab(tabMisc).setTextureName(CORE.MODID + ":itemDefault");
GameRegistry.registerItem(item_PLEASE_FACTOR_ME_4, "localName4");*/
-
-
+
+
//Try some New Tools from GT
//GT_Tool_Item x = null;
//x = GregTech_API.constructHardHammerItem("rockBelter", "Sandstone Hammer", 5000 /**Max Damage**/,50 /**Entity Damage**/);
@@ -347,4 +363,14 @@ public final class ModItems {
}
+ private static void GenerateItem(Item item, String name, CreativeTabs tab, int stackSize, int itemDamage){
+ //item = new BaseItemGeneric(name, tab, stackSize, itemDamage);
+ item = new Item().setUnlocalizedName(name).setCreativeTab(tab).setTextureName(CORE.MODID + name);
+ Utils.LOG_INFO("Generating Item ["+totalGenerated+"] Name: "+item.getUnlocalizedName());
+ GameRegistry.registerItem(item, name);
+ totalGenerated++;
+
+ }
+
+
}
diff --git a/src/Java/miscutil/core/item/base/BaseItemGeneric.java b/src/Java/miscutil/core/item/base/BaseItemGeneric.java
new file mode 100644
index 0000000000..ffdb495a21
--- /dev/null
+++ b/src/Java/miscutil/core/item/base/BaseItemGeneric.java
@@ -0,0 +1,17 @@
+package miscutil.core.item.base;
+
+import miscutil.core.lib.CORE;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+
+public class BaseItemGeneric extends Item
+{
+ public BaseItemGeneric(String s, CreativeTabs c, int stackSize, int maxDmg)
+ {
+ setUnlocalizedName(CORE.MODID + "_" + s);
+ setTextureName(CORE.MODID + ":" + s);
+ setCreativeTab(c);
+ setMaxStackSize(stackSize);
+ setMaxDamage(maxDmg);
+ }
+} \ No newline at end of file
diff --git a/src/Java/miscutil/core/tileentities/TILE_ENTITY_BASE.java b/src/Java/miscutil/core/tileentities/TILE_ENTITY_BASE.java
new file mode 100644
index 0000000000..790312a182
--- /dev/null
+++ b/src/Java/miscutil/core/tileentities/TILE_ENTITY_BASE.java
@@ -0,0 +1,39 @@
+package miscutil.core.tileentities;
+
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.network.NetworkManager;
+import net.minecraft.network.Packet;
+import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
+import net.minecraft.tileentity.TileEntity;
+
+public class TILE_ENTITY_BASE extends TileEntity {
+
+ @Override
+ public void writeToNBT(NBTTagCompound tag) {
+ super.writeToNBT(tag);
+ writeCustomNBT(tag);
+ }
+
+ @Override
+ public void readFromNBT(NBTTagCompound tag) {
+ super.readFromNBT(tag);
+ readCustomNBT(tag);
+ }
+
+ public void writeCustomNBT(NBTTagCompound tag) {}
+ public void readCustomNBT(NBTTagCompound tag) {}
+
+ @Override
+ public Packet getDescriptionPacket() {
+ NBTTagCompound tag = new NBTTagCompound();
+ writeCustomNBT(tag);
+ return new S35PacketUpdateTileEntity(xCoord, yCoord, zCoord, -999, tag);
+ }
+
+ @Override
+ public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity packet) {
+ super.onDataPacket(net, packet);
+ readCustomNBT(packet.func_148857_g());
+ }
+
+}
diff --git a/src/Java/miscutil/core/tileentities/TileEntityHeliumGenerator.java b/src/Java/miscutil/core/tileentities/TileEntityHeliumGenerator.java
new file mode 100644
index 0000000000..bc1d452495
--- /dev/null
+++ b/src/Java/miscutil/core/tileentities/TileEntityHeliumGenerator.java
@@ -0,0 +1,134 @@
+package miscutil.core.tileentities;
+
+import miscutil.core.item.ModItems;
+import miscutil.core.util.UtilsItems;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.inventory.IInventory;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class TileEntityHeliumGenerator extends TILE_ENTITY_BASE implements IInventory {
+
+ private ItemStack heliumStack;
+ private int facing = 2;
+ private int progress;
+
+ @Override
+ public void updateEntity(){
+ if(++progress >= 40){
+ //if(++progress >= 300){
+ if(heliumStack == null)
+ heliumStack = UtilsItems.getSimpleStack(ModItems.itemHeliumBlob);
+ else if(heliumStack.getItem() == ModItems.itemHeliumBlob && heliumStack.stackSize < 64)
+ heliumStack.stackSize++;
+ progress = 0;
+ markDirty();
+ }
+ }
+
+ public int getFacing(){
+ return facing;
+ }
+
+ public void setFacing(int dir){
+ facing = dir;
+ }
+
+ @Override
+ public void readCustomNBT(NBTTagCompound tag)
+ {
+ this.heliumStack = ItemStack.loadItemStackFromNBT(tag.getCompoundTag("Helium"));
+ this.progress = tag.getInteger("Progress");
+ this.facing = tag.getShort("Facing");
+ }
+
+ @Override
+ public void writeCustomNBT(NBTTagCompound tag)
+ {
+ tag.setInteger("Progress", this.progress);
+ tag.setShort("Facing", (short) this.facing);
+ if(heliumStack != null) {
+ NBTTagCompound produce = new NBTTagCompound();
+ heliumStack.writeToNBT(produce);
+ tag.setTag("Helium", produce);
+ }
+ else
+ tag.removeTag("Helium");
+ }
+
+ @Override
+ public int getSizeInventory()
+ {
+ return 1;
+ }
+
+ @Override
+ public ItemStack getStackInSlot(int slot){
+ return heliumStack;
+ }
+
+ @Override
+ public ItemStack decrStackSize(int slot, int decrement){
+ if(heliumStack == null)
+ return null;
+ if(decrement < heliumStack.stackSize){
+ ItemStack take = heliumStack.splitStack(decrement);
+ if(heliumStack.stackSize <= 0)
+ heliumStack = null;
+ return take;
+ }
+ ItemStack take = heliumStack;
+ heliumStack = null;
+ return take;
+ }
+
+ @Override
+ public void openInventory() {}
+ @Override
+ public void closeInventory() {}
+
+ @Override
+ public boolean isUseableByPlayer(EntityPlayer player)
+ {
+ return this.worldObj.getTileEntity(this.xCoord, this.yCoord, this.zCoord) == this && player.getDistanceSq((double)this.xCoord + 0.5D, (double)this.yCoord + 0.5D, (double)this.zCoord + 0.5D) <= 64.0D;
+ }
+
+ @Override
+ public boolean isItemValidForSlot(int slot, ItemStack stack){
+ return false;
+ }
+
+ @Override
+ public int getInventoryStackLimit(){
+ return 64;
+ }
+
+ @Override
+ public void setInventorySlotContents(int slot, ItemStack stack){
+ heliumStack = stack;
+ }
+
+ @Override
+ public ItemStack getStackInSlotOnClosing(int slot){
+ return null;
+ }
+
+ /**
+ * Returns the name of the inventory
+ */
+ @Override
+ public String getInventoryName()
+ {
+ return "container.helium_collector";
+ }
+
+ /**
+ * Returns if the inventory is named
+ */
+ @Override
+ public boolean hasCustomInventoryName()
+ {
+ return false;
+ }
+
+}
diff --git a/src/Java/miscutil/core/util/UtilsItems.java b/src/Java/miscutil/core/util/UtilsItems.java
index 6f26b2c3db..bd82cc104a 100644
--- a/src/Java/miscutil/core/util/UtilsItems.java
+++ b/src/Java/miscutil/core/util/UtilsItems.java
@@ -24,15 +24,15 @@ public class UtilsItems {
Item em1 = getItem(mod_itemname_meta);
Utils.LOG_WARNING("Found: "+em1.toString());
- if (!em1.equals(null)){
+ if (em1 != null){
em = em1;
}
else {
em = null;
return null;
}
- if (!em.equals(null)){
- ItemStack returnStack = new ItemStack(em,1,16);
+ if (em != null ){
+ ItemStack returnStack = new ItemStack(em,1);
return returnStack;
}
Utils.LOG_WARNING(mod_itemname_meta+" not found.");
@@ -44,6 +44,11 @@ public class UtilsItems {
}
return null;
}
+
+ public static ItemStack getSimpleStack(Item x){
+ ItemStack r = new ItemStack(x, 1);
+ return r;
+ }
public static void getItemForOreDict(String FQRN, String oreDictName, String itemName, int meta){
try {