GetNextRef
Revision as of 18:12, 14 June 2009 by imported>Shademe (→Article Update: Note on the apple bug)
A command for Oblivion Script Extender
Syntax:
(reference:ref) GetNextRef
Returns the next reference in the curent cell. GetFirstRef must be called first; this function uses the cell depth and type passed to GetFirstRef and returns the next reference matching that type, or zero after the last reference has been returned. This function should only be used within a Label/Goto loop
Example
ref pDoor ... set pDoor to Apple set pDoor to (GetFirstRef 24 1) Label 1 if pDoor set pDoor to Apple set pDoor to GetNextRef Goto 1 endif
Scans the list of doors in the player's current cell and the surrounding 8 cells.
Notes
- The first reference can change (deleted or moved) by the next frame so GetFirstRef should always be used first with a Label/Goto loop.
- The order of references as returned by GetFirst/NextRef is essentially undefined. It is not guaranteed that it will remain the same from one frame to the next. As stated above, a loop should be used each time. Usually, however, the first ref is the most recently placed one. It is altogether unwise to rely on this, however.
- pDoor is set to an Apple before using GetNextRef because Oblivion doesn't expect the reference of a door, and won't change the variable. So far doors, containers, and magic effects have been found to cause this odd reference variable behaviour, but to be safe always set your reference variable to Apple before using GetNextRef.
- This bug has been eliminated as of v17.