Exemplo n.º 1
0
        internal static void UseItem(this Obj_AI_Hero source, string itemName)
        {
            if (source == null || string.IsNullOrEmpty(itemName))
            {
                return;
            }

            var slot = source.GetItemSlot(itemName);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemName))
            {
                source.SpellBook.CastSpell(slot);
            }
        }
Exemplo n.º 2
0
        public static void UseItem(this Obj_AI_Hero source, Obj_AI_Hero target, string itemName)
        {
            if (source == null || target == null || !target.IsValidTarget() || string.IsNullOrEmpty(itemName))
            {
                return;
            }

            var slot = source.GetItemSlot(itemName);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemName))
            {
                source.SpellBook.CastSpell(slot, target);
            }
        }
Exemplo n.º 3
0
        public static void UseItem(this Obj_AI_Hero source, Vector3 position, string itemName)
        {
            if (source == null || position == Vector3.Zero || string.IsNullOrEmpty(itemName))
            {
                return;
            }

            var slot = source.GetItemSlot(itemName);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemName))
            {
                source.SpellBook.CastSpell(slot, position);
            }
        }
Exemplo n.º 4
0
        internal static bool CanUseItem(this Obj_AI_Hero source, string itemName)
        {
            if (source == null || string.IsNullOrEmpty(itemName))
            {
                return(false);
            }

            var slot = source.GetItemSlot(itemName);

            if (slot != SpellSlot.Unknown)
            {
                return(source.SpellBook.GetSpellState(slot) == SpellState.Ready);
            }

            return(false);
        }
Exemplo n.º 5
0
        public static bool UseItem(this Obj_AI_Hero source, uint itemID)
        {
            if (source == null)
            {
                return(false);
            }

            var slot = source.GetItemSlot(itemID);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemID))
            {
                return(source.SpellBook.CastSpell(slot));
            }

            return(false);
        }
Exemplo n.º 6
0
        public static bool UseItem(this Obj_AI_Hero source, uint itemID, Vector3 position)
        {
            if (source == null || position == Vector3.Zero)
            {
                return(false);
            }

            var slot = source.GetItemSlot(itemID);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemID))
            {
                return(source.SpellBook.CastSpell(slot, position));
            }

            return(false);
        }
Exemplo n.º 7
0
        public static bool UseItem(this Obj_AI_Hero source, uint itemID, Obj_AI_Base target)
        {
            if (source == null || target == null || !target.IsValidTarget())
            {
                return(false);
            }

            var slot = source.GetItemSlot(itemID);

            if (slot != SpellSlot.Unknown && source.CanUseItem(itemID))
            {
                return(source.SpellBook.CastSpell(slot, target));
            }

            return(false);
        }
Exemplo n.º 8
0
        public static bool CanUseItem(this Obj_AI_Hero source, uint itemID)
        {
            if (source == null)
            {
                return(false);
            }

            var slot = source.GetItemSlot(itemID);

            if (slot != SpellSlot.Unknown)
            {
                return(source.SpellBook.GetSpellState(slot) == SpellState.Ready);
            }

            return(false);
        }