GetNthForm - ObjectReference

From the CreationKit Wiki
Jump to navigation Jump to search

SKSE Member of: ObjectReference Script

Minimum required SKSE Version: 1.05.01

Returns the Nth form within a container relative to the total number acquired with GetNumItems. (This function requires SKSE)

Syntax[edit | edit source]

Form Function GetNthForm(Int Index) Native

Return Value[edit | edit source]

Returns the Nth form in the calling container.

Notes[edit | edit source]

  • The Index of a form in the container is relative to the number of form types regardless of the count of any particular form. If a container has only ten gold and a torch, GetNumItems will return '2' and not '11', so passing '3' as the Index argument of GetNthForm in such a case would return NONE.

Examples[edit | edit source]

  • Check a single container.
Form kForm = MQ101AlduinREF.GetNthForm(0)
  • Set the weights of all ingredients in player's inventory to 0.1.
Actor Property PlayerREF Auto

Event SomeEvent()
	ReweighIngredientsIn(PlayerREF, 0.1)
EndEvent

Function ReweighIngredientsIn(ObjectReference akContainer, Float afWeight) Global
	Int iFormIndex = akContainer.GetNumItems()
	While iFormIndex > 0
		iFormIndex -= 1
		Form kForm = akContainer.GetNthForm(iFormIndex)
		If kForm.GetType() == 30 ; Ingredient
			kForm.SetWeight(afWeight)
		EndIf
	EndWhile
EndFunction

See Also[edit | edit source]