Difference between revisions of "EquipItem"

From the Oblivion ConstructionSet Wiki
Jump to navigation Jump to search
imported>Khadir
(Documenting actor functions ...)
imported>ZuTheSkunk
m
 
(24 intermediate revisions by 14 users not shown)
Line 1: Line 1:
{{ActorFunction}}
'''Syntax:'''
'''Syntax:'''
  [''ActorID''.]EquipItem ''ObjectID'' ''NoUnequipFlag''
  [''ActorID''.]EquipItem ''ObjectID'' ''NoUnequipFlag''
Line 6: Line 5:
  player.EquipItem CursedHelm 1
  player.EquipItem CursedHelm 1


Forces the actor to equip the object. If NoUnequipFlag = 1, actor (including the player) will be unable to unequip the object.
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 can be used to force actors into drinking potions.
*Using this function to equip an armor item on an NPC will not automatically unequip the replaced item, as it does on the player. E.g., if you add and equip 10 types of boots, all will report as equipped (but not added to the Armor Rating). This may or may not be fixed in following frames.
*See [[Message Spam]] to avoid unwanted "Item Equipped" messages.
*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:
<pre>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</pre>
*'''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==
==See Also==
* [[EquipItem2]]
* [[EquipItemNS]] - Spamless version of command (OBSE 15)
* [[UnequipItem]]
* [[UnequipItem]]
* [[Message Spam]] - Avoiding message spam.


[[Category: Functions]]
[[Category: Functions]]
[[Category: Object Functions]]
[[Category:Functions (CS)]]
[[Category: Functions (CS 1.0)]]
[[Category: Inventory Functions]]
[[Category: Inventory Functions (CS 1.0)]]
[[Category: Actor Functions]]
[[Category: Actor Functions (CS 1.0)]]
 
<!-- Begin Search Terms
Equip
Item
End Search Terms -->

Latest revision as of 06:05, 15 June 2012

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[edit | edit source]

  • 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 can be used to force actors into drinking potions.
  • Using this function to equip an armor item on an NPC will not automatically unequip the replaced item, as it does on the player. E.g., if you add and equip 10 types of boots, all will report as equipped (but not added to the Armor Rating). This may or may not be fixed in following frames.
  • See Message Spam to avoid unwanted "Item Equipped" messages.
  • 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
  • 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[edit | edit source]