예제 #1
0
파일: Armor.cs 프로젝트: Interrupt/zunehack
        /// <summary>
        /// Creates an armor item
        /// </summary>
        public Armor(ArmorData data)
            : base(ItemType.Armor)
        {
            name = data.name;

            // Get or load a texture
            texture = GameManager.GetInstance().GetTexture(data.image);
            if (texture == null) texture = GameManager.GetInstance().LoadTexture(data.image);

            armor = data.armor;
            bonus = data.bonus;
            slot = data.slot;
        }
예제 #2
0
        protected static ArmorData ArmorDataFromHash(Hashtable data)
        {
            ArmorData itm = new ArmorData();
            itm.name = (string)data["name"];
            itm.image = (string)data["image"];

            itm.level = Convert.ToInt32(data["lvl"]);
            itm.armor = Convert.ToInt32(data["armor"]);
            itm.bonus = Convert.ToInt32(data["bonus"]);
            itm.chance = data["chance"] != null ? Convert.ToInt32(data["chance"]) : 10;

            switch (((string)data["location"]).ToLower())
            {
                case "arms":
                    itm.slot = ArmorBodySlot.Arms;
                    break;
                case "body":
                    itm.slot = ArmorBodySlot.Body;
                    break;
                case "feet":
                    itm.slot = ArmorBodySlot.Feet;
                    break;
                case "head":
                    itm.slot = ArmorBodySlot.Head;
                    break;
                case "offhand":
                    itm.slot = ArmorBodySlot.Offhand;
                    break;
                default:
                    itm.slot = ArmorBodySlot.Body;
                    break;
            }

            return itm;
        }