package org.pokenet.client.backend.entity; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import org.newdawn.slick.Image; import org.newdawn.slick.loading.LoadingList; import org.pokenet.client.backend.FileLoader; import org.pokenet.client.backend.ItemDatabase; public class PlayerItem { private int m_number; private Item m_item; private int m_quantity; private Image m_bagImage; /** * Default constructor * @param number * @param quantity */ public PlayerItem(int number, int quantity) { m_number = number; m_quantity = quantity; m_item = getItem(m_number); String respath = System.getProperty("res.path"); if(respath==null) respath=""; try { InputStream f; LoadingList.setDeferredLoading(true); if (m_item.getCategory().equalsIgnoreCase("TM")){ f = FileLoader.loadFile(respath+"res/items/48/TM.png"); } else { f = FileLoader.loadFile(respath+"res/items/48/" + m_item.getId() + ".png"); } m_bagImage = new Image(f, respath+"res/items/48/" + m_item.getId() + ".png", false); LoadingList.setDeferredLoading(false); } catch (Exception e){ try { InputStream f; LoadingList.setDeferredLoading(true); f = FileLoader.loadFile(respath+"res/items/48/0.png"); m_bagImage = new Image(f, respath+"res/items/48/0.png", false); LoadingList.setDeferredLoading(false); } catch (Exception e2){ e2.printStackTrace(); } } } public int getNumber() { return m_number; } public void setNumber(int m_number) { this.m_number = m_number; } public int getQuantity() { return m_quantity; } public void setQuantity(int m_quantity) { this.m_quantity = m_quantity; } public Item getItem() { return m_item; } public void setItem(Item item) { this.m_item = item; } public Image getBagImage(){ return m_bagImage; } public static List<Item> generatePokeballs(){ List<Item> m_items = new ArrayList<Item>(); m_items = ItemDatabase.getCategoryItems("Pokeball"); return m_items; } public static List<Item> generateFieldItems(){ List<Item> m_items = new ArrayList<Item>(); m_items = ItemDatabase.getCategoryItems("Field"); return m_items; } public static List<Item> generatePotions(){ List<Item> m_items = new ArrayList<Item>(); m_items = ItemDatabase.getCategoryItems("Potions"); return m_items; } public static List<Item> generateStatusHeals(){ List<Item> m_items = new ArrayList<Item>(); m_items = ItemDatabase.getCategoryItems("Medicine"); return m_items; } /** * Returns the item based on its item number * @param number * @return */ public static Item getItem(int number) { Item item = ItemDatabase.getInstance().getItem(number); return item; } }