WoW API: UnitReaction

From AddOn Studio
Revision as of 09:08, 10 October 2010 by WoWWiki>Seahen (→‎Notes: OK, turns out it's always 1 for A-H)
Jump to navigation Jump to search

WoW API < UnitReaction

Determine the reaction of the specified unit to the other specified unit.

reaction = UnitReaction("unit", "otherUnit");

Parameters

Arguments

unit
String - The UnitId of the unit whose reaction is to be determined.
otherUnit
String - The UnitId of the unit towards whom the reaction is to be measured.

Returns

reaction
Number - the level of the reaction of unit towards otherUnit - this is a number between 1 and 7. If the reaction is unknown then nil is returned.
  1. Exceptionally hostile
  2. Very Hostile
  3. Hostile
  4. Neutral
  5. Friendly
  6. Very Friendly
  7. Exceptionally friendly
  8. Exalted

Notes

  • If the second unit is neither you nor your pet, and/or the first unit is a player, player's pet, or factionless NPC, the output will always be 2 for enemy, 4 for neutral or 5 for friendly.
  • If the first unit is an NPC whose faction you have a reputation with, reaction to you and your pet is based on that reputation (1 Hated, 2 Hostile, 3 Unfriendly, 4 Neutral, 5 Friendly, 6 Honored, 7 Revered, 8 Exalted).
  • When you're Horde, the reaction of Alliance NPCs to you and your pet is 1. The same is true of Horde NPCs if you're Alliance.
  • This doesn't change when a mob becomes aggressive towards a player. I ad to use the negative result of API UnitIsFriend.
  • Does not work across continents (or zones?)! If you query UnitReaction for a raid (or party)-member across continents, it won't return the correct value (I guess it returns nil, but I have yet to confirm that). I think it only returns correct values for units that are in 'inspect-range'.
  • In Blizzard Code, UnitReaction is only used between the player and a Non Player Controlled target.