Ejemplo n.º 1
0
    /// <summary>
    /// Creates item object from Jobject, adds it to Item.All, starts coroutine to load image, and returns reference to Item
    /// </summary>
    /// <param name="jobj"></param>
    /// <returns></returns>
    public static Item FromJObjectOrExisting(JObject jobj)
    {
        string uniqueID = (string)jobj["UniqueID"];

        if (ContainsID(uniqueID))
        {
            return(Get(uniqueID));
        }
        Item item = new Item();

        item.UniqueID    = uniqueID;
        item.Name        = (string)jobj["Name"];
        item.Source      = (string)jobj["Source"];
        item.Description = (string)jobj["Description"];
        item.Slot        = (string)jobj["Slot"];
        List <string> attributeNames = ((JObject)jobj["Attributes"]).Properties().Select(p => p.Name).ToList();

        foreach (string attName in attributeNames)
        {
            item._attributes[attName] = (int)jobj["Attributes"][attName];
        }
        item.ImageURL = (string)jobj["ImageUrl"];
        ItemImageLoader.StartLoadingImage(item);
        _all.Add(item);
        return(item);
    }
Ejemplo n.º 2
0
    /// <summary>
    /// Creates item object from Jobject, adds it to Item.All, starts coroutine to load image, and returns reference to Item
    /// </summary>
    /// <param name="jobj"></param>
    /// <returns></returns>
    public static Item FromJObject(JObject jobj)
    {
        Item item = new Item();

        item.UniqueID    = (string)jobj["UniqueID"];
        item.Name        = (string)jobj["Name"];
        item.Source      = (string)jobj["Source"];
        item.Description = (string)jobj["Description"];
        item.Slot        = (Slot)Enum.Parse(typeof(Slot), (string)jobj["Slot"]);
        List <string> attributeNames = ((JObject)jobj["Attributes"]).Properties().Select(p => p.Name).ToList();

        foreach (string attName in attributeNames)
        {
            item._attributes[attName] = (int)jobj["Attributes"][attName];
        }
        item.ImageURL = (string)jobj["ImageUrl"];
        ItemImageLoader.StartLoadingImage(item);
        _all.Add(item);
        return(item);
    }