Esempio n. 1
0
        private void handleItemOnItem(Player player, Packet packet)
        {
            int itemSlot = packet.readUShort();
            int unused   = packet.readInt();
            int withSlot = packet.readLEShort();
            int unused2  = packet.readInt();
            int itemUsed = packet.readLEShortA();
            int usedWith = packet.readLEShortA();

            if (itemSlot > 28 || itemSlot < 0 || withSlot > 28 || withSlot < 0 || player.isDead() || player.getTemporaryAttribute("cantDoAnything") != null)
            {
                return;
            }
            SkillHandler.resetAllSkills(player);
            player.getPackets().closeInterfaces();
            if (player.getInventory().getSlot(itemSlot).getItemId() == itemUsed && player.getInventory().getSlot(withSlot).getItemId() == usedWith)
            {
                if (Fletching.isFletching(player, itemUsed, usedWith))
                {
                    return;
                }
                else if (Herblore.doingHerblore(player, itemUsed, usedWith))
                {
                    return;
                }
                else if (Herblore.mixDoses(player, itemUsed, usedWith, itemSlot, withSlot))
                {
                    return;
                }
                else if (Crafting.wantsToCraft(player, itemUsed, usedWith))
                {
                    return;
                }
                else if (Firemaking.isFiremaking(player, itemUsed, usedWith, itemSlot, withSlot))
                {
                    return;
                }
                else if (Farming.plantSapling(player, itemUsed, usedWith))
                {
                    return;
                }
                else
                {
                    player.getPackets().sendMessage("Nothing interesting happens.");
                }
            }
        }
Esempio n. 2
0
        private void handleItemOnGroundItem(Player player, Packet packet)
        {
            int objectX           = packet.readLEShortA();
            int itemSlot          = packet.readLEShort();
            int itemIdInInventory = packet.readLEShort();
            int itemIdOnGround    = packet.readLEShort();
            int objectY           = packet.readLEShortA();
            int interfaceId       = packet.readLEShort();
            int child             = packet.readUShort();

            if (itemSlot > 28 || itemSlot < 0 || player.isDead() || player.getTemporaryAttribute("cantDoAnything") != null)
            {
                return;
            }

            if (Firemaking.isFiremaking(player, itemIdInInventory, itemIdOnGround, itemSlot, -1))
            {
                return;
            }
            else
            {
                player.getPackets().sendMessage("Nothing interesting happens.");
            }
        }