예제 #1
0
 public void RemoveInventory(Item pItem)
 {
     try
     {
         locker.WaitOne();
         Handler12.ModifyInventorySlot(InventoryOwner, 0x24, (byte)pItem.Slot, 0, null);
         pItem.Delete();
         this.InventoryItems.Remove((byte)pItem.Slot);
     }
     finally
     {
         locker.ReleaseMutex();
     }
 }
예제 #2
0
        private void ItemCommand(ZoneCharacter character, params string[] param)
        {
            string InxName = param[1];
            byte   amount  = 1;

            if (param.Length > 2)
            {
                amount = byte.Parse(param[2]);
            }

            switch (character.GiveItem(InxName, amount))
            {
            case FiestaLib.InventoryStatus.FULL:
                Handler12.InventoryFull(character);
                return;

            case FiestaLib.InventoryStatus.NOT_FOUND:
                character.DropMessage("Item not found.");
                return;
            }
        }
예제 #3
0
        private void ItemCommand(ZoneCharacter character, params string[] param)
        {
            ushort id     = ushort.Parse(param[1]);
            byte   amount = 1;

            if (param.Length > 2)
            {
                amount = byte.Parse(param[2]);
            }
            // character.GiveItem(id,amount);
            switch (character.GiveItem(id, amount))
            {
            case FiestaLib.InventoryStatus.Full:
                Handler12.InventoryFull(character);
                return;

            case FiestaLib.InventoryStatus.NotFound:
                character.DropMessage("Item not found.");
                return;
            }
        }
예제 #4
0
        private void ResetInv(ZoneCharacter character, params string[] param)
        {
            byte slot = byte.Parse(param[1]);

            Handler12.ResetInventorySlot(character, slot);
        }