EquipItem - Actor

Revision as of 19:56, 26 August 2013 by imported>Egocarib ((Notes:) enchanted item effect bug confirmed to exist in version 1.9.32.0.7. Have simply removed the version info as it seems like this bug will be sticking around.)

Member of: Actor Script

Forces this actor to equip the specified item, preventing removal if requested.

Syntax

Function EquipItem(Form akItem, bool abPreventRemoval = false, bool abSilent = false) native

Parameters

  • akItem: The item the actor should equip.
  • abPreventRemoval: If true, prevents the actor (or player) from removing the item.
    • Default: False
  • abSilent: Should the equip message be silenced?
    • Default: False

Return Value

None.

Examples

; Force the player to equip the tutu - but they can remove it
Game.GetPlayer().EquipItem(TutuProperty)


; Force Sally to equip the dress - but they can't remove it
Sally.EquipItem(DressProperty, true)

Notes

  • When using EquipItem to equip a custom player-enchanted item to any actor, a bug will prevent the magic effects of that enchantment from taking effect. Normal (non-player-enchanted) still take effect normally.
  • If the calling actor does not have akItem, they will be given one. It is best, however, to add the item with AddItem - ObjectReference, then equip it as the item might not otherwise register as equipped.
FrenchTaunterREF.EquipItem(HolyGrailARMO, True) ; Gives them one unless they've already got one
  • In some cases the aforementioned item addition can be utilized to add non-inventory items. The below will add an Alduin NPC form to the player's inventory that, when dropped, will be a full-sized Alduin actor.
Game.GetPlayer().EquipItem((Game.GetForm(0x00032DB7) As ObjectReference).GetBaseObject())
  • Armor equipped while in OpenInventory or pick-pocketing dialogues will not be visible on the actor until the dialogue is ended. Calling the SKSE function QueueNiNodeUpdate straight after calling EquipItem can force the actor to draw the new equipment immediately.
  • The abPreventRemoval flag does not prevent removal by the functions UnEquipAll and RemoveAllItems. It does prevent removal when using EquipItem(OtherItem).

See Also