18#ifndef UnitDefines_h__
19#define UnitDefines_h__
30#define MIN_MELEE_REACH 2.0f
31#define NOMINAL_MELEE_RANGE 5.0f
32#define MELEE_RANGE (NOMINAL_MELEE_RANGE - MIN_MELEE_REACH * 2)
33#define BASE_MINDAMAGE 1.0f
34#define BASE_MAXDAMAGE 2.0f
35#define BASE_ATTACK_TIME 2000
37#define MAX_EQUIPMENT_ITEMS 3
128#define MAX_MOVE_TYPE 9
489#define MAX_DECLINED_NAME_CASES 5
525 default:
return "<Invalid react state>";
DEFINE_ENUM_FLAG(UnitPVPStateFlags)
@ UNIT_FLAG2_MIRROR_IMAGE
@ UNIT_FLAG2_AI_WILL_ONLY_SWIM_IF_TARGET_SWIMS
@ UNIT_FLAG2_INTERACT_WHILE_HOSTILE
@ UNIT_FLAG2_PLAY_DEATH_ANIM
@ UNIT_FLAG2_IGNORE_REPUTATION
@ UNIT_FLAG2_PREVENT_SPELL_CLICK
@ UNIT_FLAG2_UNINTERACTIBLE_IF_HOSTILE
@ UNIT_FLAG2_RESTRICT_PARTY_INTERACTION
@ UNIT_FLAG2_DISABLE_PRED_STATS
@ UNIT_FLAG2_COMPREHEND_LANG
@ UNIT_FLAG2_FORCE_MOVEMENT
@ UNIT_FLAG2_GIGANTIC_AOI
@ UNIT_FLAG2_ALLOW_CHEAT_SPELLS
@ UNIT_FLAG2_ATTACKER_IGNORES_MINIMUM_RANGES
@ UNIT_FLAG2_INFINITE_AOI
@ UNIT_FLAG2_REGENERATE_POWER
@ UNIT_FLAG2_DONT_FADE_IN
@ UNIT_FLAG2_DONT_GENERATE_COMBAT_LOG_WHEN_ENGAGED_WITH_NPCS
@ UNIT_FLAG2_ALLOW_CHANGING_TALENTS
@ UNIT_FLAG2_SUPPRESS_HIGHLIGHT_WHEN_TARGETED_OR_MOUSED_OVER
@ UNIT_FLAG2_DISARM_OFFHAND
@ UNIT_FLAG2_TREAT_AS_RAID_UNIT_FOR_HELPFUL_SPELLS
@ UNIT_FLAG2_UNTARGETABLE_BY_CLIENT
@ UNIT_FLAG2_DISARM_RANGED
@ UNIT_PET_FLAG_CAN_BE_ABANDONED
@ UNIT_PET_FLAG_CAN_BE_RENAMED
@ HITINFO_SWINGNOHITSOUND
@ UNIT_STAND_STATE_SIT_HIGH_CHAIR
@ UNIT_STAND_STATE_SUBMERGED
@ UNIT_STAND_STATE_SIT_MEDIUM_CHAIR
@ UNIT_STAND_STATE_SIT_LOW_CHAIR
@ UNIT_STAND_STATE_SIT_CHAIR
@ MOVEMENTFLAG_MASK_PLAYER_ONLY
@ MOVEMENTFLAG_DESCENDING
@ MOVEMENTFLAG_MASK_CREATURE_ALLOWED
@ MOVEMENTFLAG_PITCH_DOWN
@ MOVEMENTFLAG_PENDING_STRAFE_STOP
@ MOVEMENTFLAG_PENDING_STOP
@ MOVEMENTFLAG_PENDING_STRAFE_LEFT
@ MOVEMENTFLAG_STRAFE_LEFT
@ MOVEMENTFLAG_WATERWALKING
@ MOVEMENTFLAG_MASK_MOVING
@ MOVEMENTFLAG_DISABLE_GRAVITY
@ MOVEMENTFLAG_PENDING_BACKWARD
@ MOVEMENTFLAG_FALLING_SLOW
@ MOVEMENTFLAG_PENDING_STRAFE_RIGHT
@ MOVEMENTFLAG_MASK_TURNING
@ MOVEMENTFLAG_MASK_MOVING_FLY
@ MOVEMENTFLAG_STRAFE_RIGHT
@ MOVEMENTFLAG_FALLING_FAR
@ MOVEMENTFLAG_MASK_HAS_PLAYER_STATUS_OPCODE
Movement flags that have change status opcodes associated for players.
@ MOVEMENTFLAG_PENDING_FORWARD
@ MOVEMENTFLAG_SPLINE_ELEVATION
@ MOVEMENTFLAG_PENDING_ROOT
@ MOVEMENTFLAG_DISABLE_COLLISION
@ MOVEMENTFLAG2_CAN_DOUBLE_JUMP
@ MOVEMENTFLAG2_CAN_SWIM_TO_FLY_TRANS
@ MOVEMENTFLAG2_ALWAYS_ALLOW_PITCHING
@ MOVEMENTFLAG2_INTERPOLATED_PITCHING
@ MOVEMENTFLAG2_INTERPOLATED_MOVEMENT
@ MOVEMENTFLAG2_CAN_TURN_WHILE_FALLING
@ MOVEMENTFLAG2_AWAITING_LOAD
@ MOVEMENTFLAG2_WATERWALKING_FULL_PITCH
@ MOVEMENTFLAG2_DOUBLE_JUMP
@ MOVEMENTFLAG2_NO_STRAFE
@ MOVEMENTFLAG2_IGNORE_MOVEMENT_FORCES
@ MOVEMENTFLAG2_IS_VEHICLE_EXIT_VOLUNTARY
@ MOVEMENTFLAG2_INTERPOLATED_TURNING
@ MOVEMENTFLAG2_FULL_SPEED_PITCHING
@ MOVEMENTFLAG2_VEHICLE_PASSENGER_IS_TRANSITION_ALLOWED
@ MOVEMENTFLAG2_FULL_SPEED_TURNING
@ MOVEMENTFLAG2_NO_JUMPING
#define MAX_DECLINED_NAME_CASES
NPCFlags
Non Player Character flags.
@ UNIT_NPC_FLAG_VENDOR_AMMO
@ UNIT_NPC_FLAG_TABARDDESIGNER
@ UNIT_NPC_FLAG_SPIRIT_HEALER
@ UNIT_NPC_FLAG_ACCOUNT_BANKER
@ UNIT_NPC_FLAG_AUCTIONEER
@ UNIT_NPC_FLAG_VENDOR_POISON
@ UNIT_NPC_FLAG_AREA_SPIRIT_HEALER
@ UNIT_NPC_FLAG_GUILD_BANKER
@ UNIT_NPC_FLAG_STABLEMASTER
@ UNIT_NPC_FLAG_VENDOR_REAGENT
@ UNIT_NPC_FLAG_BATTLEMASTER
@ UNIT_NPC_FLAG_VENDOR_FOOD
@ UNIT_NPC_FLAG_QUESTGIVER
@ UNIT_NPC_FLAG_ARTIFACT_POWER_RESPEC
@ UNIT_NPC_FLAG_INNKEEPER
@ UNIT_NPC_FLAG_SPELLCLICK
@ UNIT_NPC_FLAG_TRANSMOGRIFIER
@ UNIT_NPC_FLAG_BLACK_MARKET
@ UNIT_NPC_FLAG_PLAYER_VEHICLE
@ UNIT_NPC_FLAG_FLIGHTMASTER
@ UNIT_NPC_FLAG_TRAINER_CLASS
@ UNIT_NPC_FLAG_VAULTKEEPER
@ UNIT_NPC_FLAG_TRAINER_PROFESSION
@ UNIT_NPC_FLAG_PETITIONER
@ UNIT_NPC_FLAG_WILD_BATTLE_PET
@ UNIT_FLAG3_UI_CAN_GET_POSITION
@ UNIT_FLAG3_SUPPRESS_ALL_NPC_SOUNDS
@ UNIT_FLAG3_SUPPRESS_NPC_FEEDBACK
@ UNIT_FLAG3_UNCONSCIOUS_ON_DEATH
@ UNIT_FLAG3_UNTARGETABLE_FROM_UI
@ UNIT_FLAG3_NO_FACING_ON_INTERACT_WHILE_FAKE_DEAD
@ UNIT_FLAG3_NO_FACING_ON_INTERACT_AND_FAST_FACING_CHASE
@ UNIT_FLAG3_FORCE_HIDE_NAMEPLATE
@ UNIT_FLAG3_ALTERNATIVE_DEFAULT_LANGUAGE
@ UNIT_FLAG3_GARRISON_PET
@ UNIT_FLAG3_ALREADY_SKINNED
@ UNIT_FLAG3_IGNORE_COMBAT
@ UNIT_FLAG3_ALLOW_INTERACTION_WHILE_IN_COMBAT
@ UNIT_FLAG3_ALLOW_MOUNTED_COMBAT
@ UNIT_FLAG3_DONT_FADE_OUT
@ UNIT_FLAG3_SUPPRESS_ALL_NPC_FEEDBACK
@ UNIT_FLAG3_SUPPRESS_NPC_SOUNDS
@ MOVEMENTFLAG3_ADV_FLYING
@ MOVEMENTFLAG3_CANT_SWIM
@ MOVEMENTFLAG3_DISABLE_INERTIA
@ MOVEMENTFLAG3_CAN_ADV_FLY
@ UNIT_NPC_FLAG_2_GARRISON_ARCHITECT
@ UNIT_NPC_FLAG_2_STEERING
@ UNIT_NPC_FLAG_2_BLACK_MARKET_VIEW
@ UNIT_NPC_FLAG_2_CONTRIBUTION_COLLECTOR
@ UNIT_NPC_FLAG_2_GARRISON_TALENT_NPC
@ UNIT_NPC_FLAG_2_ITEM_UPGRADE_MASTER
@ UNIT_NPC_FLAG_2_AZERITE_RESPEC
@ UNIT_NPC_FLAG_2_PERSONAL_TABARD_DESIGNER
@ UNIT_NPC_FLAG_2_TRADESKILL_NPC
@ UNIT_NPC_FLAG_2_ISLANDS_QUEUE
@ UNIT_NPC_FLAG_2_FAST_STEERING_AVOIDS_OBSTACLES
@ UNIT_NPC_FLAG_2_AREA_SPIRIT_HEALER_INDIVIDUAL
@ UNIT_NPC_FLAG_2_SHIPMENT_CRAFTER
@ UNIT_NPC_FLAG_2_SUPPRESS_NPC_SOUNDS_EXCEPT_END_OF_INTERACTION
@ UNIT_NPC_FLAG_2_GARRISON_MISSION_NPC
char const * DescribeReactState(ReactStates state)
@ UNIT_BYTE2_FLAG_FFA_PVP
@ UNIT_BYTE2_FLAG_SANCTUARY
@ UNIT_VIS_FLAGS_UNTRACKABLE
@ UNIT_VIS_FLAGS_STEALTHED
@ UNIT_VIS_FLAGS_INVISIBLE
@ UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT
@ UNIT_FLAG_NON_ATTACKABLE
@ UNIT_FLAG_NON_ATTACKABLE_2
@ UNIT_FLAG_IMMUNE_TO_NPC
@ UNIT_FLAG_SERVER_CONTROLLED
@ UNIT_FLAG_REMOVE_CLIENT_CONTROL
@ UNIT_FLAG_UNINTERACTIBLE
@ UNIT_FLAG_NOT_ATTACKABLE_1
@ UNIT_FLAG_PLAYER_CONTROLLED
@ UNIT_FLAG_FORCE_NAMEPLATE
@ UNIT_FLAG_PET_IN_COMBAT