Exemplo n.º 1
0
        public override void run()
        {
            L2Player player = Client.CurrentPlayer;

            if (player.Summon == null || !(player.Summon is L2Pet))
            {
                player.sendActionFailed();
                return;
            }

            L2Pet pet = (L2Pet)player.Summon;

            if (pet._p_block_act == 1 || pet._isDead)
            {
                player.sendActionFailed();
                return;
            }

            if (!pet.Inventory.Items.ContainsKey(sID))
            {
                player.sendSystemMessage(352); //Incorrect item.
                player.sendActionFailed();
                return;
            }

            L2Item item = pet.Inventory.Items[sID];

            if (ItemHandler.getInstance().Process(pet, item))
            {
                return;
            }

            player.sendActionFailed();
        }
Exemplo n.º 2
0
        public override void RunImpl()
        {
            L2Player player = _client.CurrentPlayer;

            if (!(player.Summon is L2Pet))
            {
                player.SendActionFailed();
                return;
            }

            L2Pet pet = (L2Pet)player.Summon;

            if ((pet.PBlockAct == 1) || pet.Dead)
            {
                player.SendActionFailed();
                return;
            }

            //if (!pet.Inventory.Items.ContainsKey(sID))
            //{
            //    player.sendSystemMessage(SystemMessage.SystemMessageId.INCORRECT_ITEM);
            //    player.sendActionFailed();
            //    return;
            //}

            L2Item item = pet.Inventory.Items[_sId];

            if (ItemHandler.Instance.Process(pet, item))
            {
                return;
            }

            player.SendActionFailed();
        }
        public override void run()
        {
            L2Player player = Client.CurrentPlayer;

            if (player.Summon == null || !(player.Summon is L2Pet) || player.EnchantState != 0)
            {
                player.sendActionFailed();
                return;
            }

            L2Pet pet = (L2Pet)player.Summon;

            if (pet._isDead)
            {
                player.sendSystemMessage(590);//Your pet is dead and any attempt you make to give it something goes unrecognized.
                player.sendActionFailed();
                return;
            }

            if (!pet.Inventory.Items.ContainsKey(objectId))
            {
                player.sendActionFailed();
                return;
            }

            L2Item item = pet.Inventory.Items[objectId];

            if (item.TempBlock)
            {
                player.sendActionFailed();
                return;
            }

            if (item.Template.is_drop == 0 || item.Template.is_destruct == 0 || item.Template.is_trade == 0 || item.Template.can_equip_hero != -1 || pet.ControlItem.ObjID == objectId)
            {
                player.sendSystemMessage(544);//Your pet cannot carry this item.
                player.sendActionFailed();
                return;
            }

            if (count < 0)
            {
                count = 1;
            }
            else if (count > item.Count)
            {
                count = item.Count;
            }

            List <long[]> items = new List <long[]>();

            items.Add(new long[] { objectId, count });
            pet.Inventory.transferFrom(player, items, true);
        }
Exemplo n.º 4
0
        public override void RunImpl()
        {
            L2Player player = _client.CurrentPlayer;

            if (!(player.Summon is L2Pet) || (player.EnchantState != 0))
            {
                player.SendActionFailed();
                return;
            }

            L2Pet pet = (L2Pet)player.Summon;

            if (pet.Dead)
            {
                player.SendSystemMessage(SystemMessage.SystemMessageId.CannotGiveItemsToDeadPet);
                player.SendActionFailed();
                return;
            }

            //if (!pet.Inventory.Items.Contains(objectId))
            //{
            //    player.sendActionFailed();
            //    return;
            //}

            L2Item item = pet.Inventory.Items[_objectId];

            if (item.TempBlock)
            {
                player.SendActionFailed();
                return;
            }

            if (!item.Template.Dropable || !item.Template.Destroyable || !item.Template.Tradable || !item.Template.HeroItem || (pet.ControlItem.ObjId == _objectId))
            {
                player.SendSystemMessage(SystemMessage.SystemMessageId.ItemNotForPets);
                player.SendActionFailed();
                return;
            }

            if (_count > item.Count)
            {
                _count = item.Count;
            }

            //List<long[]> items = new List<long[]>
            //                     {
            //                         new[] { _objectId, _count }
            //                     };
            //pet.Inventory.transferFrom(player, items, true);
        }
Exemplo n.º 5
0
        public override void UsePet(L2Pet pet, L2Item item)
        {
            if (!Pet)
            {
                base.UsePet(pet, item);
                return;
            }

            calcSkill(pet);
            calcEffect(pet);

            if (SummonStaticID != -1)
            {
                NpcTable.Instance.spawnNpc(SummonStaticID, pet.X, pet.Y, pet.Z, pet.Heading);
            }
        }
Exemplo n.º 6
0
        public override void RunImpl()
        {
            L2Player player = _client.CurrentPlayer;

            if (!(player.Summon is L2Pet) || (player.EnchantState != 0))
            {
                player.SendActionFailed();
                return;
            }

            L2Pet pet = (L2Pet)player.Summon;

            if (pet.Dead)
            {
                player.SendSystemMessage(SystemMessage.SystemMessageId.CannotGiveItemsToDeadPet);
                player.SendActionFailed();
                return;
            }

            L2Item item = player.GetItemByObjId(_sId);

            if ((item == null) || item.TempBlock)
            {
                player.SendActionFailed();
                return;
            }

            if (!item.Template.Dropable || !item.Template.Destroyable || !item.Template.Tradable || !item.Template.HeroItem || (pet.ControlItem.ObjId == _sId))
            {
                player.SendSystemMessage(SystemMessage.SystemMessageId.ItemNotForPets);
                player.SendActionFailed();
                return;
            }

            if (_num > item.Count)
            {
                _num = item.Count;
            }

            //List<long[]> items = new List<long[]>
            //                     {
            //                         new[] { _sId, _num }
            //                     };
            //pet.Inventory.transferHere(player, items, true);
        }
Exemplo n.º 7
0
 public PA_Standart(L2Summon s)
 {
     character = s;
     pet       = (L2Pet)character;
 }
Exemplo n.º 8
0
 public virtual void UsePet(L2Pet pet, L2Item item)
 {
     pet.Owner.sendSystemMessage(972); //This pet cannot use this item.
 }
Exemplo n.º 9
0
 public virtual void UsePet(L2Pet pet, L2Item item)
 {
     pet.Owner.SendSystemMessage(SystemMessage.SystemMessageId.PetCannotUseItem);
 }
Exemplo n.º 10
0
 public InvPet(L2Pet owner)
 {
     this.owner = owner;
 }
Exemplo n.º 11
0
 public PaStandart(L2Summon s)
 {
     Character = s;
     _pet      = (L2Pet)Character;
 }