예제 #1
0
        /// <summary>
        ///     Get an item equipped at a specific equipment slot
        /// </summary>
        /// <param name="parSlot">The slot</param>
        /// <returns>null or the item represented as WoWItem</returns>
        internal WoWItem GetEquippedItem(Enums.EquipSlot parSlot)
        {
            var slot = (int)parSlot;
            var guid = ObjectManager.Player.ReadRelative <ulong>(0x2508 + (slot - 1) * 0x8);

            if (guid == 0)
            {
                return(null);
            }
            return(ObjectManager.Items.FirstOrDefault(i => i.Guid == guid));
        }
예제 #2
0
        /// <summary>
        /// Determines if an item is equipped at a specific equipment slot
        /// </summary>
        /// <param name="parSlot"></param>
        public bool ItemEquipped(Enums.EquipSlot parSlot)
        {
            var slot = (int)parSlot;
            var guid = ObjectManager.Instance.Player.ReadRelative <ulong>(0x2508 + (slot - 1) * 0x8);

            if (guid == 0)
            {
                return(false);
            }
            return(true);
        }
예제 #3
0
        public ObjectData this[Enums.EquipSlot loc]
        {
            get {
                switch (loc)
                {
                case EquipSlot.Light:
                    return(this.Light);

                case EquipSlot.LeftFinger:
                    return(this.LeftFinger);

                case EquipSlot.RightFinger:
                    return(this.RightFinger);

                case EquipSlot.Neck1:
                    return(this.Neck1);

                case EquipSlot.Neck2:
                    return(this.Neck2);

                case EquipSlot.Body:
                    return(this.Body);

                case EquipSlot.Head:
                    return(this.Head);

                case EquipSlot.Legs:
                    return(this.Legs);

                case EquipSlot.Feet:
                    return(this.Feet);

                case EquipSlot.Hands:
                    return(this.Hands);

                case EquipSlot.Arms:
                    return(this.Arms);

                case EquipSlot.Shield:
                    return(this.Shield);

                case EquipSlot.About:
                    return(this.About);

                case EquipSlot.Waist:
                    return(this.Waist);

                case EquipSlot.LeftWrist:
                    return(this.LeftWrist);

                case EquipSlot.RightWrist:
                    return(this.RightWrist);

                case EquipSlot.Wield:
                    return(this.Wield);

                case EquipSlot.Hold:
                    return(this.Hold);

                case EquipSlot.Float:
                    return(this.Float);

                default:
                    return(null);
                }
            }
            set {
                switch (loc)
                {
                case EquipSlot.Light:
                    this.Light = value;
                    break;

                case EquipSlot.LeftFinger:
                    this.LeftFinger = value;
                    break;

                case EquipSlot.RightFinger:
                    this.RightFinger = value;
                    break;

                case EquipSlot.Neck1:
                    this.Neck1 = value;
                    break;

                case EquipSlot.Neck2:
                    this.Neck2 = value;
                    break;

                case EquipSlot.Body:
                    this.Body = value;
                    break;

                case EquipSlot.Head:
                    this.Head = value;
                    break;

                case EquipSlot.Legs:
                    this.Legs = value;
                    break;

                case EquipSlot.Feet:
                    this.Feet = value;
                    break;

                case EquipSlot.Hands:
                    this.Hands = value;
                    break;

                case EquipSlot.Arms:
                    this.Arms = value;
                    break;

                case EquipSlot.Shield:
                    this.Shield = value;
                    break;

                case EquipSlot.About:
                    this.About = value;
                    break;

                case EquipSlot.Waist:
                    this.Waist = value;
                    break;

                case EquipSlot.LeftWrist:
                    this.LeftWrist = value;
                    break;

                case EquipSlot.RightWrist:
                    this.RightWrist = value;
                    break;

                case EquipSlot.Wield:
                    this.Wield = value;
                    break;

                case EquipSlot.Hold:
                    this.Hold = value;
                    break;

                case EquipSlot.Float:
                    this.Float = value;
                    break;

                default:
                    throw new ArgumentException("Unknown equipment slot passed", "loc");
                }
            }
        }