RemoveItem
Revision as of 10:23, 29 October 2008 by imported>Dev akm (→Notes: stability issues)
Removes count number of the specified item from the calling object's inventory.
Syntax:
RemoveItem ObjectID, count
Examples:
RemoveItem Gold001 50
Ref MyItem Short count set MyItem to ArenaAkaviriLongSword set count to 1 player.removeitem MyItem Count
Notes
- Suffers from the same stability limitations as RemoveMe. Using RemoveItem immediately after the object has been added will often result in a crash. To prevent this, wait more than one frame before you remove the item.
- You can use a reference variable as ObjectID and a short variable for count.
- If ObjectID is a leveled list, the leveled item generated from the leveled list will be removed.
- See Message Spam for techniques to avoid unwanted "Item Removed" messages.
Inventory Updating
When you remove an item while the player's inventory menu (MenuMode 1002) is open, the item will remain visible even though it's really not there. To refresh the menu after removing the item, use
player.AddItem YourMiscItem 1 player.EquipItem YourMiscItem player.UnEquipItem YourMiscItem player.RemoveItem YourMiscItem 1
However, if the menu has been hidden with con_ToggleMenus (either via script or console) this will not work.
When you remove a large number of unique items from the player while their inventory menu is open, there may be some lag. You can prevent this with OBSE's con_ToggleMenus by placing it on both sides of the remove lines:
con_ToggleMenus player.RemoveItem SomeItem001 1 ... player.RemoveItem SomeItem100 1 con_ToggleMenus ;Refresh the menu player.AddItem YourMiscItem 1 player.EquipItem YourMiscItem player.UnEquipItem YourMiscItem player.RemoveItem YourMiscItem 1
See Also
- RemoveItemNS - Spamless version of command (OBSE 15).
- AddItem
- GetItemCount
- RemoveAllItems
- Message Spam - Preventing message spam.