Ejemplo n.º 1
0
        public InapObject(XElement element)
        {
            m_Id          = element.GetString("id");
            m_Name        = element.GetString("name");
            m_Description = element.GetString("description");
            m_Price       = element.GetInt("price");
            m_Type        = (InapObjectType)System.Enum.Parse(typeof(InapObjectType), element.GetString("type"));
            m_Consumable  = element.GetBool("consumable");
            m_Tag         = element.GetInt("tag");
            m_Icon        = element.GetString("icon");
            m_MailTitle   = element.GetString("mail_title");
            m_MailBody    = element.GetString("mail_body");
            m_Available   = element.GetBool("available");
            m_Detail      = element.GetString("detail");
            m_Visible     = element.GetBool("visible");

            m_Data = new Hashtable();
            var inputsElement = element.Element("inputs");

            if (inputsElement != null)
            {
                var dump = inputsElement.Elements("input").Select(ie => {
                    string key = ie.GetString("key");
                    object val = CommonUtils.ParseValue(ie.GetString("value"), ie.GetString("type"));
                    m_Data.Add(key, val);
                    return(key);
                }).ToList();
            }
        }
Ejemplo n.º 2
0
        public List <InapObject> Filtered(params InapObjectType[] types)
        {
            List <InapObject> filteredList = new List <InapObject>();

            if (types == null)
            {
                types = new InapObjectType[] { };
            }

            foreach (var kvp in inaps)
            {
                if (types.Contains(kvp.Value.type))
                {
                    filteredList.Add(kvp.Value);
                }
            }

            filteredList.Sort((first, second) => {
                return(first.id.CompareTo(second.id));
            });

            return(filteredList);
        }
Ejemplo n.º 3
0
        public InapItem(XElement element)
        {
            m_Id         = element.GetString("id");
            m_Name       = element.GetString("name");
            m_Desc       = element.GetString("description");
            m_Price      = element.GetInt("price");
            m_Type       = (InapObjectType)Enum.Parse(typeof(InapObjectType), element.GetString("type"));
            m_Consumable = element.GetBool("consumable");
            m_Tag        = element.GetInt("tag");

            m_Data = new Hashtable();
            var inputsElement = element.Element("inputs");

            if (inputsElement != null)
            {
                inputsElement.Elements("input").Select(ie => {
                    string key = ie.GetString("key");
                    object val = CommonUtils.ParseValue(ie.GetString("value"), ie.GetString("type"));
                    m_Data.Add(key, val);
                    return(key);
                }).ToList();
            }
        }