User:PROXiCiDE/AddItemsToPlayerFromForm
Jump to navigation
Jump to search
Overview[edit | edit source]
AddItemsToPlayerFromForm() is useful for Debugging
Syntax[edit | edit source]
Function AddItemsToPlayerFromForm(FormList pList, Bool bRemove = False)
Parameters[edit | edit source]
- pList: The form list containing Spells / Ammo / Weapon.
- bRemove : Items from the FormList will be removed instead of added to the player.
- Default: False
Return Value[edit | edit source]
None
Example[edit | edit source]
FormList Property _PX_DebugSpellList Auto
Event OnInit()
;Debug
AddItemsToPlayerFromForm(_PX_DebugSpellList)
EndEvent
Script[edit | edit source]
Function AddItemsToPlayerFromForm(FormList pList, Bool bRemove = False)
If pList == None
Return
EndIf
Actor pPlayer = Game.GetPlayer()
Ammo pAmmo = None
Weapon pWeapon = None
Spell pSpell = None
Int Size = pList.GetSize()
While Size > 0
Size -= 1
Form fmItem = pList.GetAt(Size)
If fmItem As Spell
pSpell = fmItem As Spell
If bRemove
pPlayer.RemoveSpell(pSpell)
Else
pPlayer.AddSpell(pSpell)
EndIf
ElseIf (fmItem As Potion) || (fmItem As Scroll) || (fmItem As SoulGem)
If bRemove
pPlayer.RemoveItem(fmItem, 5)
Else
pPlayer.AddItem(fmItem, 5)
EndIf
ElseIf fmItem As Ammo
pAmmo = fmItem As Ammo
If bRemove
pPlayer.RemoveItem(fmItem, 100)
Else
pPlayer.AddItem(fmItem, 100)
EndIf
ElseIf fmItem As Weapon
pWeapon = fmItem As Weapon
If bRemove
pPlayer.RemoveItem(fmItem, 1)
Else
pPlayer.AddItem(fmItem,1)
EndIf
EndIf
EndWhile
If !bRemove
If pAmmo != None
pPlayer.EquipItem(pAmmo)
EndIf
If pWeapon != None
pPlayer.EquipItem(pWeapon)
EndIf
If pSpell != None
pPlayer.EquipSpell(pSpell,1)
EndIf
EndIf
EndFunction