summaryrefslogtreecommitdiff
path: root/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
diff options
context:
space:
mode:
authorOnyxDarkKnight <sor1n.iliutza16@gmail.com>2015-02-21 21:31:16 +0000
committerOnyxDarkKnight <sor1n.iliutza16@gmail.com>2015-02-21 21:31:16 +0000
commit420faddca46e70e3a70def168fb4e452ef193b0d (patch)
tree247e334012e4bf9e4fa6d42718bf601ce6bd42d9 /java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
parent3f4c717de5ebc9b942d65ae45ac87c43bdf8a31b (diff)
Added just a butt ton of stuff, also thanks to pau101 for helping me with the Hand Pedestal animation :)
Diffstat (limited to 'java/darkknight/jewelrycraft/util/JewelrycraftUtil.java')
-rw-r--r--java/darkknight/jewelrycraft/util/JewelrycraftUtil.java191
1 files changed, 104 insertions, 87 deletions
diff --git a/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java b/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
index b61267e..70129f0 100644
--- a/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
+++ b/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
@@ -4,16 +4,19 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Random;
-
-import cpw.mods.fml.common.registry.GameData;
-import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.oredict.OreDictionary;
+import cpw.mods.fml.common.registry.GameData;
+import darkknight.jewelrycraft.JewelrycraftMod;
+import darkknight.jewelrycraft.events.EntityEventHandler;
import darkknight.jewelrycraft.item.ItemList;
-import darkknight.jewelrycraft.lib.Reference;
+import darkknight.jewelrycraft.network.PacketRequestPlayerInfo;
public class JewelrycraftUtil
{
@@ -22,26 +25,17 @@ public class JewelrycraftUtil
public static ArrayList<ItemStack> jewelry = new ArrayList<ItemStack>();
public static ArrayList<ItemStack> metal = new ArrayList<ItemStack>();
public static ArrayList<ItemStack> ores = new ArrayList<ItemStack>();
- public static HashMap<String, Integer> curseValues = new HashMap<String, Integer>();
- public static HashMap<Integer, String> curseNames = new HashMap<Integer, String>();
- public static HashMap<Integer, String> availableCurseNames = new HashMap<Integer, String>();
- public static HashMap<String, Integer> availableCurseValues = new HashMap<String, Integer>();
public static HashMap<Item, ItemStack> oreToIngot = new HashMap<Item, ItemStack>();
public static ArrayList<String> jamcraftPlayers = new ArrayList<String>();
public static Random rand = new Random();
+ /**
+ * Adds gems and jewelry to their appropriate list
+ */
public static void addStuff()
{
- // Modifiers
- for(Object item: GameData.getItemRegistry())
- {
- ArrayList<ItemStack> items = new ArrayList<ItemStack>();
- ((Item)item).getSubItems((Item)item, null, items);
- objects.addAll(items);
- }
-
// Jewels
- for (int i = 0; i < 16; i++)
+ for(int i = 0; i < 16; i++)
gem.add(new ItemStack(ItemList.crystal, 1, i));
gem.add(new ItemStack(Blocks.redstone_block));
gem.add(new ItemStack(Blocks.lapis_block));
@@ -50,56 +44,73 @@ public class JewelrycraftUtil
gem.add(new ItemStack(Items.emerald));
gem.add(new ItemStack(Items.ender_pearl));
gem.add(new ItemStack(Items.nether_star));
-
// Jewelry
jewelry.add(new ItemStack(ItemList.ring));
jewelry.add(new ItemStack(ItemList.necklace));
jewelry.add(new ItemStack(ItemList.bracelet));
jewelry.add(new ItemStack(ItemList.earrings));
-
- // Curses
- addCurse(Reference.MODNAME + ":" + "Blind", 0);
- addCurse(Reference.MODNAME + ":" + "Weak", 1);
- addCurse(Reference.MODNAME + ":" + "Anemic", 2);
- addCurse(Reference.MODNAME + ":" + "Scared", 3);
- addCurse(Reference.MODNAME + ":" + "Brave", 4);
+ for(Object item: GameData.getItemRegistry()){
+ ArrayList<ItemStack> items = new ArrayList<ItemStack>();
+ if (((Item)item).getHasSubtypes()){
+ for(int i = 0; i < ((Item)item).getMaxDamage(); i++)
+ items.add(new ItemStack((Item)item, 1, i));
+ }else objects.add(new ItemStack((Item)item));
+ if (!items.isEmpty()) objects.addAll(items);
+ }
}
- public static void jamcrafters()
+ /**
+ * Adds curse points to a player
+ * @param player the player to add the points to
+ * @param points amount of curse points
+ */
+ public static void addCursePoints(EntityPlayer player, int points)
{
- jamcraftPlayers.add("allout58");
- jamcraftPlayers.add("ChewBaker");
- jamcraftPlayers.add("domi1819");
- jamcraftPlayers.add("founderio");
- jamcraftPlayers.add("Ironhammer354");
- jamcraftPlayers.add("isomgirls6");
- jamcraftPlayers.add("jmjmjm439");
- jamcraftPlayers.add("Joban");
- jamcraftPlayers.add("KJ4IPS");
- jamcraftPlayers.add("Mitchellbrine");
- jamcraftPlayers.add("MrComputerGhost");
- jamcraftPlayers.add("MrKol999");
- jamcraftPlayers.add("Resinresin");
- jamcraftPlayers.add("sci4me");
- jamcraftPlayers.add("sor1n");
- jamcraftPlayers.add("theminecoder");
- jamcraftPlayers.add("YSPilot");
- jamcraftPlayers.add("direwolf20");
+ NBTTagCompound playerInfo = PlayerUtils.getModPlayerPersistTag(player, "Jewelrycraft");
+ playerInfo.setInteger("cursePoints", playerInfo.hasKey("cursePoints") ? (playerInfo.getInteger("cursePoints") + points) : points);
+ playerInfo.setBoolean("playerCursePointsChanged", true);
}
- public static void addCurse(String name, int val)
+ public static int getCursePoints(EntityPlayer player)
{
- curseValues.put(name, val);
- curseNames.put(val, name);
- availableCurseValues.put(name, val);
- availableCurseNames.put(val, name);
+ NBTTagCompound playerInfo = PlayerUtils.getModPlayerPersistTag(player, "Jewelrycraft");
+ return playerInfo.getInteger("cursePoints");
}
+ /**
+ * Adds the UUID's of the jamcrafters in a list
+ */
+ public static void jamcrafters()
+ {
+ jamcraftPlayers.add("d3214311-7550-4c9c-a372-d9292c10b8a6");
+ jamcraftPlayers.add("a690119f-c4a2-4bd6-a99d-d63679abb328");
+ jamcraftPlayers.add("de7c9903-51fa-4a24-88cd-48faf122ca36");
+ jamcraftPlayers.add("70aeb298-3a7b-46da-a393-ab10df9359f2");
+ jamcraftPlayers.add("6fbe603c-14bf-4085-afdd-abe592c26e7c");
+ jamcraftPlayers.add("b0d21306-36bf-4d85-84df-a956d183c45a");
+ jamcraftPlayers.add("1733a31f-01f9-4f4d-82aa-7de30ca810d3");
+ jamcraftPlayers.add("4833eacf-1d94-49a7-9f89-4cf88d69dcf9");
+ jamcraftPlayers.add("718cf671-9084-4e78-b91f-033e80aa11bf");
+ jamcraftPlayers.add("bea5e0c4-85c4-454d-a081-e1eaae6895ee");
+ jamcraftPlayers.add("7ecf3e2f-fedf-4f7e-8d24-6731d078db4f");
+ jamcraftPlayers.add("1b11ad3a-f0ca-4695-a019-2d7e5d83a5fd");
+ jamcraftPlayers.add("3ec9ac58-2f1b-4d3f-b4eb-3b875da877ae");
+ jamcraftPlayers.add("cf9fa23f-205e-4eed-aba3-9f2848cd6a4d");
+ jamcraftPlayers.add("91880caa-b032-48e3-bfe8-c2c7ed31824e");
+ jamcraftPlayers.add("8d0b3804-f71c-4219-897b-8c315448ea7c");
+ jamcraftPlayers.add("bbb87dbe-690f-4205-bdc5-72ffb8ebc29d");
+ }
+
+ /**
+ * Adds a random amount of modifiers to a list
+ *
+ * @param randValue maximum number of modifiers
+ * @return a list containing the random modifiers
+ */
public static ArrayList<ItemStack> addRandomModifiers(int randValue)
{
ArrayList<ItemStack> list = new ArrayList<ItemStack>();
- for (int i = 0; i < 2 + randValue; i++)
- {
+ for(int i = 0; i < 2 + randValue; i++){
ItemStack item = objects.get(new Random().nextInt(objects.size()));
item.stackSize = 1 + new Random().nextInt(2);
list.add(item);
@@ -107,26 +118,22 @@ public class JewelrycraftUtil
return list;
}
+ /**
+ * Links ores with their appropriate ingot
+ */
public static void addMetals()
{
int index = 0;
- while (index < OreDictionary.getOreNames().length)
- {
+ while (index < OreDictionary.getOreNames().length){
Iterator<ItemStack> i = OreDictionary.getOres(OreDictionary.getOreNames()[index]).iterator();
-
- while (i.hasNext())
- {
+ while (i.hasNext()){
ItemStack nextStack = i.next();
-
- if ((nextStack.getItem().getUnlocalizedName().toLowerCase().contains("ingot") || nextStack.getItem().getUnlocalizedName().toLowerCase().contains("alloy")) && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("powder") && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("dust") && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("block") && !metal.contains(nextStack))
- {
+ if ((nextStack.getItem().getUnlocalizedName().toLowerCase().contains("ingot") || nextStack.getItem().getUnlocalizedName().toLowerCase().contains("alloy")) && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("powder") && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("dust") && !nextStack.getItem().getUnlocalizedName().toLowerCase().contains("block") && !metal.contains(nextStack)){
metal.add(nextStack);
- if (OreDictionary.getOres(OreDictionary.getOreNames()[index].replace("ingot", "ore")) != null)
- {
+ if (OreDictionary.getOres(OreDictionary.getOreNames()[index].replace("ingot", "ore")) != null){
ores.addAll(OreDictionary.getOres(OreDictionary.getOreNames()[index].replace("ingot", "ore")));
Iterator<ItemStack> ores = OreDictionary.getOres(OreDictionary.getOreNames()[index].replace("ingot", "ore")).iterator();
- while (ores.hasNext())
- {
+ while (ores.hasNext()){
ItemStack ore = ores.next();
oreToIngot.put(ore.getItem(), nextStack);
}
@@ -137,66 +144,76 @@ public class JewelrycraftUtil
}
}
- public static boolean isModifier(ItemStack item)
- {
- Iterator<ItemStack> i = objects.iterator();
-
- while (i.hasNext())
- {
- ItemStack temp = i.next();
- if (temp.getItem() == item.getItem() && temp.getItemDamage() == item.getItemDamage()) return true;
- }
- return false;
- }
-
+ /**
+ * Checks to see if the specified item is a gem
+ *
+ * @param item ItemStack containing the item
+ * @return is the item a gem
+ */
public static boolean isGem(ItemStack item)
{
Iterator<ItemStack> i = gem.iterator();
-
- while (i.hasNext())
- {
+ while (i.hasNext()){
ItemStack temp = i.next();
if (temp.getItem() == item.getItem() && temp.getItemDamage() == item.getItemDamage()) return true;
}
return false;
}
+ /**
+ * Checks to see if the specified item is a metal
+ *
+ * @param item ItemStack containing the item
+ * @return is the item a metal
+ */
public static boolean isMetal(ItemStack item)
{
Iterator<ItemStack> i = metal.iterator();
-
- while (i.hasNext())
- {
+ while (i.hasNext()){
ItemStack temp = i.next();
if (temp.getItem() == item.getItem() && temp.getItemDamage() == item.getItemDamage()) return true;
}
return false;
}
+ /**
+ * Checks to see if the specified item is a piece of jewelry
+ *
+ * @param item ItemStack containing the item
+ * @return is the item a piece of jewelry
+ */
public static boolean isJewelry(ItemStack item)
{
Iterator<ItemStack> i = jewelry.iterator();
-
- while (i.hasNext())
- {
+ while (i.hasNext()){
ItemStack temp = i.next();
if (temp.getItem() == item.getItem() && temp.getItemDamage() == item.getItemDamage()) return true;
}
return false;
}
+ /**
+ * Checks to see if the specified item is an ore
+ *
+ * @param item ItemStack containing the item
+ * @return is the item an ore
+ */
public static boolean isOre(ItemStack item)
{
Iterator<ItemStack> i = ores.iterator();
-
- while (i.hasNext())
- {
+ while (i.hasNext()){
ItemStack temp = i.next();
if (temp.getItem() == item.getItem() && temp.getItemDamage() == item.getItemDamage()) return true;
}
return false;
}
+ /**
+ * Gets the ingot from the ore
+ *
+ * @param ore the ore
+ * @return the ingot
+ */
public static ItemStack getIngotFromOre(Item ore)
{
return oreToIngot.get(ore);