/// <summary> /// Loads in the JSON for the item list /// To add more variables, add it to the Item constructor and pass it in here /// </summary> /// <param name="itemData"></param> private static void CreateLibrary(JsonData itemData) { for (int i = 0; i < itemData.Count; i++) { IDictionary dictData = itemData[i] as IDictionary; ExtraItemData_JSON eid_json = null; ExtraItemData eid = null; if (dictData.Contains("ied")) { eid_json = JsonMapper.ToObject <ExtraItemData_JSON>(itemData[i]["ied"].ToJson()); eid = new ExtraItemData(); eid.JSON_To_ExtraItemData(eid_json); } itemLibrary.Add(new Item(i, itemData[i]["Name"].ToString(), (int)itemData[i]["Value"], (int)itemData[i]["Price"], (int)itemData[i]["MaxStackSize"], itemData[i]["Description"].ToString(), itemData[i]["Slug"].ToString(), itemData[i]["EquipTag"].ToString(), eid )); // if (itemLibrary[itemLibrary.Count - 1].EID != null) // { // itemLibrary[itemLibrary.Count - 1].EID.ConvertStringsToVariables(); // } } }
public static Item Item_JSON_to_Item(Item_JSON it) { ExtraItemData new_eid = new ExtraItemData(); if (it.EID != null) { new_eid.JSON_To_ExtraItemData(it.EID); } Item newItem = new Item( it.ID, it.Name, it.Value, it.Price, it.MaxStackSize, it.Description, it.Slug, it.EquipTag, new_eid ); return(newItem); }
/// <summary> /// Define the Item, imported from JSON /// </summary> /// <param name="id">ItemManager.itemLibrary Index</param> /// <param name="name">Name of Item</param> /// <param name="value">The sell price</param> /// <param name="price">The buy price</param> /// <param name="maxStack">Maximum number to stack</param> /// <param name="consumable">The item can be placed in the off-hand</param> /// <param name="description">The tooltip description</param> /// <param name="slug">The in-file name of the item to get the Sprite</param> /// <param name="equipTag">Which equipment slot it should go into</param> public Item(int id, string name, int value, int price, int maxStack, string description, string slug, string equipTag, ExtraItemData eid) { this.ID = id; this.Name = name; this.Value = value; this.Price = price; this.MaxStackSize = maxStack; this.Description = description; this.Slug = slug; this.Sprite = Resources.Load <Sprite>("UI Stuff/Inventory/Items/" + slug); this.EquipTag = parseEquipment(equipTag); this.EID = eid; }