summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java')
-rw-r--r--src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java113
1 files changed, 113 insertions, 0 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java b/src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java
new file mode 100644
index 0000000..ca6b58d
--- /dev/null
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemCrystal.java
@@ -0,0 +1,113 @@
+package darkknight.jewelrycraft.item;
+
+import java.util.List;
+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.util.IIcon;
+import net.minecraft.world.World;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+public class ItemCrystal extends Item
+{
+ public IIcon overlay;
+ public static final int[] dyeColors = new int[]{1973019, 11743532, 3887386, 5320730, 2437522, 8073150, 2651799, 11250603, 4408131, 14188952, 4312372, 14602026, 6719955, 12801229, 15435844, 15790320};
+
+ /**
+ *
+ */
+ public ItemCrystal()
+ {
+ super();
+ setHasSubtypes(true);
+ setMaxDamage(0);
+ }
+
+ /**
+ * @param iconRegister
+ */
+ @Override
+ public void registerIcons(IIconRegister iconRegister)
+ {
+ itemIcon = iconRegister.registerIcon("jewelrycraft:crystal");
+ overlay = iconRegister.registerIcon("jewelrycraft:crystalOverlay");
+ }
+
+ /**
+ * @return
+ */
+ @Override
+ public boolean requiresMultipleRenderPasses()
+ {
+ return true;
+ }
+
+ /**
+ * @param stack
+ * @param pass
+ * @return
+ */
+ @Override
+ @SideOnly (Side.CLIENT)
+ public int getColorFromItemStack(ItemStack stack, int pass)
+ {
+ if (pass == 1 && getDamage(stack) != 16) return dyeColors[getDamage(stack)];
+ return 16777215;
+ }
+
+ /**
+ * @param stack
+ * @param pass
+ * @return
+ */
+ @Override
+ public IIcon getIcon(ItemStack stack, int pass)
+ {
+ return pass == 0 ? itemIcon : overlay;
+ }
+
+ /**
+ * @param stack
+ * @param player
+ * @param world
+ * @param i
+ * @param j
+ * @param k
+ * @param side
+ * @param par8
+ * @param par9
+ * @param par10
+ * @return
+ */
+ @Override
+ public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int i, int j, int k, int side, float par8, float par9, float par10)
+ {
+ return true;
+ }
+
+ /**
+ * @param stack
+ * @return
+ */
+ @Override
+ public String getUnlocalizedName(ItemStack stack)
+ {
+ return super.getUnlocalizedName() + "." + stack.getItemDamage();
+ }
+
+ /**
+ * @param par1
+ * @param par2CreativeTabs
+ * @param par3List
+ */
+ @Override
+ @SuppressWarnings ({"unchecked", "rawtypes"})
+ public void getSubItems(Item par1, CreativeTabs par2CreativeTabs, List par3List)
+ {
+ for(int j = 0; j < 16; ++j)
+ par3List.add(new ItemStack(par1, 1, j));
+ }
+}