Difference between revisions of "GetNextRef"
Jump to navigation
Jump to search
imported>Shademe (→Article Update: Note on the apple bug) |
imported>Scruggs (Remove apple bug note as 1) it's not specific to GetNextRef and 2) it's fixed; Make example code use While loop) |
||
Line 4: | Line 4: | ||
(reference:ref) GetNextRef | (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 | 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 loop. | ||
'''Example''' | '''Example''' | ||
<pre>ref pDoor | <pre>ref pDoor | ||
... | ... | ||
set pDoor to | set pDoor to GetFirstRef 24 1 | ||
while (pDoor) | |||
; do something with pDoor | |||
set pDoor to GetNextRef | set pDoor to GetNextRef | ||
loop</pre> | |||
Scans the list of doors in the player's current cell and the surrounding 8 cells. | Scans the list of doors in the player's current cell and the surrounding 8 cells. | ||
==Notes== | ==Notes== | ||
* | *References can be added to or removed from a cell between frames; for this reason GetFirst/NextRef should be used within a loop that executes within a single frame. | ||
* 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. | |||
==See Also== | ==See Also== |
Revision as of 10:41, 16 June 2009
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 loop.
Example
ref pDoor ... set pDoor to GetFirstRef 24 1 while (pDoor) ; do something with pDoor set pDoor to GetNextRef loop
Scans the list of doors in the player's current cell and the surrounding 8 cells.
Notes
- References can be added to or removed from a cell between frames; for this reason GetFirst/NextRef should be used within a loop that executes within a single frame.
- 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.