WoW:UnitId: Difference between revisions
(Formatting mostly) |
|||
Line 1: | Line 1: | ||
{{wowapitype}} | |||
Many of the API functions which act on units in the game world (Players, NPC's, Monsters, etc) refer to the unit in question by an identifier that is related to how the player is accessing the unit. The following values are available: | Many of the API functions which act on units in the game world (Players, NPC's, Monsters, etc) refer to the unit in question by an identifier that is related to how the player is accessing the unit. The following values are available: | ||
Line 7: | Line 9: | ||
; <tt>"pet"</tt> : The current player's pet | ; <tt>"pet"</tt> : The current player's pet | ||
; <tt>" | ; <tt>"party''N''"</tt> : The ''N''th party member excluding the player (1,2,3 or 4) | ||
; <tt>" | ; <tt>"partypet''N''"</tt> : The pet of the ''N''th party member (N is 1,2,3, or 4) (Added in 1.5.0) | ||
; <tt>" | ; <tt>"raid''N''"</tt> : The raid member with [[raidIndex]] ''N'' (1,2,3,...,40). | ||
; <tt>" | ; <tt>"raidpet''N''"</tt> : The pet of the raid member with [[raidIndex]] ''N'' (1,2,3,...,40) (Added in 1.5.0) | ||
; <tt>"target"</tt> : The currently targetted unit | ; <tt>"target"</tt> : The currently targetted unit | ||
Line 31: | Line 27: | ||
== Targets == | == Targets == | ||
You can append the suffix <tt>target</tt> to any UnitId to get a UnitId which refers to that unit's target (e.g. <tt>"partypet2target"</tt>). This appending can be repeated indefinitely (<tt>"playertargettarget"</tt>), though you will observe an attendant performance hit if you overdo it, as the game engine has to jump from target to target. | You can append the suffix <tt>target</tt> to any UnitId to get a UnitId which refers to that unit's target (e.g. <tt>"partypet2target"</tt>). This appending can be repeated indefinitely (e.g. <tt>"playertargettarget"</tt>), though you will observe an attendant performance hit if you overdo it, as the game engine has to jump from target to target. | ||
== Notes == | == Notes == | ||
Line 38: | Line 34: | ||
Also, some functions return different values if the target is close enough to be 'visible' to your client (not necessarily in line of sight), as can be determined with [[API UnitIsVisible|UnitIsVisible("unit")]], versus further away. | Also, some functions return different values if the target is close enough to be 'visible' to your client (not necessarily in line of sight), as can be determined with [[API UnitIsVisible|UnitIsVisible("unit")]], versus further away. | ||
Revision as of 08:53, 11 August 2006
Many of the API functions which act on units in the game world (Players, NPC's, Monsters, etc) refer to the unit in question by an identifier that is related to how the player is accessing the unit. The following values are available:
Base Values
- "player"
- The current player
- "pet"
- The current player's pet
- "partyN"
- The Nth party member excluding the player (1,2,3 or 4)
- "partypetN"
- The pet of the Nth party member (N is 1,2,3, or 4) (Added in 1.5.0)
- "raidN"
- The raid member with raidIndex N (1,2,3,...,40).
- "raidpetN"
- The pet of the raid member with raidIndex N (1,2,3,...,40) (Added in 1.5.0)
- "target"
- The currently targetted unit
- "mouseover"
- The unit which the mouse is currently (or was most recently) hovering over
The following value also appears in some very specific places (Vendor interactions, for example)
- "npc" or "NPC"
- The NPC with which the player is currently interacting.
Targets
You can append the suffix target to any UnitId to get a UnitId which refers to that unit's target (e.g. "partypet2target"). This appending can be repeated indefinitely (e.g. "playertargettarget"), though you will observe an attendant performance hit if you overdo it, as the game engine has to jump from target to target.
Notes
Many of the functions which take a UnitId only provide useful results for a subset of ID's. Other functions will only provide information for friendly targets (or those upon which a power is active).
Also, some functions return different values if the target is close enough to be 'visible' to your client (not necessarily in line of sight), as can be determined with UnitIsVisible("unit"), versus further away.