WoW:API UnitReaction: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
m (→‎Notes: OK, turns out it's always 1 for A-H)
Line 23: Line 23:
* When you're Horde, the reaction of Alliance NPCs to you and your pet is 1<!-- Tested with Silver Covenant NPCs in Dalaran. -->. The same is true of Horde NPCs if you're Alliance.
* When you're Horde, the reaction of Alliance NPCs to you and your pet is 1<!-- Tested with Silver Covenant NPCs in Dalaran. -->. 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]].
* 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'.
* Does not work across continents (or zones?)! If you query UnitReaction for a raid (or party)-member across continents, it will return nil. 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.
* In Blizzard Code, UnitReaction is only used between the player and a Non Player Controlled target.

Revision as of 01:02, 6 December 2013

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 will return nil. 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.