GetFirstRef
A command for Oblivion Script Extender
Syntax:
(reference:ref) GetFirstRef type:short cellDepth:short
Returns the first reference in the current cell; use with GetNextRef to scan all of the cell's references.. A type can optionally be supplied to return only references matching that type. Additionally, you can pass 69 for actors and 70 for inventory items. An optional cell depth can be supplied to specify the number of adjacent cells to scan in exteriors; a cell depth of 1 scans the player's current cell plus 8 adjacent cells, a depth of 2 scans the player's cell plus 25 adjacent cells.
Example
ref pDoor ... 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.
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.
Notes
- The first reference can change (deleted or moved) by the next frame so this function should always be used first, and only with a Label/Goto loop and GetNextRef.
Form Type IDs
0: None 1: TES4 2: Group 3: GMST 4: Global 5: Class 6: Faction 7: Hair 8: Eyes 9: Race 10: Sound 11: Skill 12: Effect 13: Script 14: LandTexture 15: Enchantment 16: Spell 17: BirthSign 18: Activator 19: Apparatus 20: Armor 21: Book 22: Clothing 23: Container 24: Door 25: Ingredient 26: Light 27: Misc 28: Stat 29: Grass 30: Tree 31: Flora 32: Furniture 33: Weapon 34: Ammo 35: NPC 36: Creature 37: LeveledCreature 38: SoulGem 39: Key 40: AlchemyItem 41: SubSpace 42: SigilStone 43: LeveledItem 44: SNDG 45: Weather 46: Climate 47: Region 48: Cell 49: REFR 50: ACHR 51: ACRE 52: PathGrid 53: WorldSpace 54: Land 55: TLOD 56: Road 57: Dialog 58: DialogInfo 59: Quest 60: Idle 61: Package 62: CombatStyle 63: LoadScreen 64: LeveledSpell 65: ANIO 66: WaterForm 67: EffectShader 68: TOFT
69: Actors 70: Inventory items