EquipItem

Revision as of 22:52, 17 December 2010 by imported>Bruneauinfo (→‎See Also)

Syntax:

[ActorID.]EquipItem ObjectID NoUnequipFlag

Example:

EquipItem FavoriteCuirass
player.EquipItem CursedHelm 1

Forces the actor to equip the item. If NoUnequipFlag = 1, actor (including the player) will be unable to unequip the item. Once the item is unequipped with the UnequipItem function, the item can be equipped and unequipped as normal.

Notes

  • This will not run the onEquip block of a script attached to the item. However, an onUnequip block will run when the object is unequipped using UnequipItem. This means that scripted ability spells that are added and removed using these two block types can malfunction if the item is equipped and unequipped via script.
  • EquipItem will not work if there is already an item in that slot that has been equipped with the NoUnequipFlag set. This can be useful for determining whether or not that flag has been set. Use UnequipItem or UnequipItemNS to remove such an item before using EquipItem.
  • This function does not always work when used to equip items which have been added to an inventory using addItem, unless you provide a delay between adding the items and equipping them. For instance:
    addItem someItem 1
    equipItem someItem 1 ; <- item may not be equipped
    
    short equipDelay
    if ( equipDelay == 0 )
      addItem someItem 1
      set equipDelay to 1
    elseif ( equipDelay < 10 ) ; wait 10 frames
      set equipDelay to equipDelay + 1
    elseif ( equipDelay > 0 )
      equipItem someItem ; <- should work properly now
      set equipDelay to -1 ; finished
    endif
  • See Message Spam to avoid unwanted "Item Equipped" messages.
  • RemoveAllItems Bugs:
    • If you equip a playable item with the NoUnequipFlag set to 1 on a NPC, a subsequent call of RemoveAllItems on this NPC will crash the game.
    • If you equip a playable non-quest item with the NoUnequipFlag set to 1 on the player, a subsequent call of RemoveAllItems on the player will crash the game.

See Also