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
151#define ADV_FLYING_MAX_SPEED_TYPE 17
421#define MAX_DECLINED_NAME_CASES 5
457 default:
return "<Invalid react state>";
#define DEFINE_ENUM_FLAG(enumType)
@ 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
@ ADV_FLYING_DOUBLE_JUMP_VEL_MOD
@ ADV_FLYING_OVER_MAX_DECELERATION
@ ADV_FLYING_LIFT_COEFFICIENT
@ ADV_FLYING_ADD_IMPULSE_MAX_SPEED
@ ADV_FLYING_GLIDE_START_MIN_HEIGHT
@ ADV_FLYING_AIR_FRICTION
@ ADV_FLYING_LAUNCH_SPEED_COEFFICIENT
@ ADV_FLYING_SURFACE_FRICTION
constexpr NPCFlags UNIT_NPC_FLAG_VENDOR_MASK
#define MAX_DECLINED_NAME_CASES
@ ADV_FLYING_PITCHING_RATE_DOWN
@ ADV_FLYING_TURN_VELOCITY_THRESHOLD
@ ADV_FLYING_PITCHING_RATE_UP
@ ADV_FLYING_BANKING_RATE
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
@ 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_PERKS_VENDOR
@ 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
std::string name[MAX_DECLINED_NAME_CASES]