GetNextInPersistentObject(object, int, int)
Determines the nextobject of a specific type that is inside a persistent object.
object GetNextInPersistentObject( object oPersistentObject = OBJECT_SELF, int nResidentObjectType = OBJECT_TYPE_CREATURE, int nPersistentZone = PERSISTENT_ZONE_ACTIVE );
Parameters
oPersistentObject
The object that contains the object. (Default: OBJECT_SELF)
nResidentObjectType
OBJECT_TYPE_* (Default: OBJECT_TYPE_CREATURE)
nPersistentZone
PERSISTENT_ZONE_ACTIVE. [This could also take the value PERSISTENT_ZONE_FOLLOW, but this is no longer used.] (Default: PERSISTENT_ZONE_ACTIVE)
Description
Returns the nextobject within oPersistentObject of the specified type in order and OBJECT_INVALID if no object is found.
Remarks
You must first call GetFirstInPersistentObject() with the identical parameters for proper execution.
Used in Bioware script to implement area of effect spells.
Also note that triggers are persistent objects, so you can cycle through objects in triggers using this command. See the code example below.
Version
1.32
Example
void main() { //The trigger to look in object oTrigger=GetObjectByTag("killer_trigger"); //First object in that trigger. We can use bitwise | //Because of the values of the OBJECT_TYPE_* constants object oInTrigger=GetFirstInPersistentObject(oTrigger, OBJECT_TYPE_CREATURE | OBJECT_TYPE_PLACEABLE |OBJECT_TYPE_ITEM); while (GetIsObjectValid(oInTrigger)) { DestroyObject(oInTrigger); oInTrigger=GetNextInPersistentObject(oTrigger, OBJECT_TYPE_CREATURE | OBJECT_TYPE_PLACEABLE |OBJECT_TYPE_ITEM); } }
See Also
functions: | GetFirstInPersistentObject |
categories: | Miscellaneous Functions |
constants: | OBJECT_TYPE_* Constants | PERSISTENT_ZONE_* Constants |
author: Tom Cassiotis, editor: Lilac Soul, additional contributor(s): Lilac Soul