Esempio n. 1
0
        public static void DoHammer(MapleItem hammer, MapleEquip equip, MapleCharacter chr)
        {
            if (!CanHammer(equip))
            {
                chr.SendPopUpMessage("You cannot use that on this item.");
                chr.EnableActions();
                return;
            }
            switch (hammer.ItemId)
            {
            case 2470000:
            case 2470003:
            case 2470007:
            case 2470011:
            case 5570000:
            {
                equip.RemainingUpgradeCount++;
                equip.HammersApplied++;
                chr.Inventory.RemoveItemsFromSlot(hammer.InventoryType, hammer.Position, 1);
                chr.Client.SendPacket(MapleInventory.Packets.AddItem(equip, MapleInventoryType.Equip, equip.Position));
                chr.Client.SendPacket(Packets.HammerEffect(true));
                chr.Client.SendPacket(Packets.HammerResult(false, true, equip.HammersApplied));
                PacketWriter finishPacket = Packets.HammerResult(true, true, 0);
                Scheduler.ScheduleDelayedAction(() => chr.Client.SendPacket(finishPacket), 1500);
                break;
            }

            default:
            {
                chr.SendPopUpMessage("You cannot use this hammer.");
                chr.EnableActions();
                return;
            }
            }
        }