18#ifndef CreatureData_h__
19#define CreatureData_h__
30#include <unordered_map>
547 return canTameExotic || !IsExotic(creatureDifficulty);
550 void InitializeQueryData();
680 m_items.emplace_back(std::move(vItem));
const uint32 CREATURE_REGEN_INTERVAL
@ CREATURE_FLAG_EXTRA_NO_BLOCK
@ CREATURE_FLAG_EXTRA_DB_ALLOWED
@ CREATURE_FLAG_EXTRA_NO_CRUSHING_BLOWS
@ CREATURE_FLAG_EXTRA_UNUSED_22
@ CREATURE_FLAG_EXTRA_UNUSED_27
@ CREATURE_FLAG_EXTRA_NO_CRIT
@ CREATURE_FLAG_EXTRA_DUNGEON_BOSS
@ CREATURE_FLAG_EXTRA_TRIGGER
@ CREATURE_FLAG_EXTRA_UNUSED
@ CREATURE_FLAG_EXTRA_IGNORE_PATHFINDING
@ CREATURE_FLAG_EXTRA_CANNOT_ENTER_COMBAT
@ CREATURE_FLAG_EXTRA_UNUSED_31
@ CREATURE_FLAG_EXTRA_NO_PARRY_HASTEN
@ CREATURE_FLAG_EXTRA_NO_XP
@ CREATURE_FLAG_EXTRA_UNUSED_25
@ CREATURE_FLAG_EXTRA_INSTANCE_BIND
@ CREATURE_FLAG_EXTRA_OBEYS_TAUNT_DIMINISHING_RETURNS
@ CREATURE_FLAG_EXTRA_UNUSED_9
@ CREATURE_FLAG_EXTRA_IMMUNITY_KNOCKBACK
@ CREATURE_FLAG_EXTRA_NO_PARRY
@ CREATURE_FLAG_EXTRA_IGNORE_FEIGN_DEATH
@ CREATURE_FLAG_EXTRA_NO_TAUNT
@ CREATURE_FLAG_EXTRA_NO_PLAYER_DAMAGE_REQ
@ CREATURE_FLAG_EXTRA_GHOST_VISIBILITY
@ CREATURE_FLAG_EXTRA_NO_SELL_VENDOR
@ CREATURE_FLAG_EXTRA_NO_SKILL_GAINS
@ CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK
@ CREATURE_FLAG_EXTRA_UNUSED_23
@ CREATURE_FLAG_EXTRA_CIVILIAN
@ CREATURE_FLAG_EXTRA_UNUSED_24
@ CREATURE_FLAG_EXTRA_GUARD
@ CREATURE_FLAG_EXTRA_ALL_DIMINISH
@ CREATURE_FLAG_EXTRA_UNUSED_26
@ CREATURE_FLAG_EXTRA_WORLDEVENT
@ CREATURE_STATIC_FLAG_PVP_ENABLING
@ CREATURE_STATIC_FLAG_IGNORE_COMBAT
@ CREATURE_STATIC_FLAG_AQUATIC
@ CREATURE_STATIC_FLAG_NO_SPELL_DEFENSE
@ CREATURE_STATIC_FLAG_BOSS_MOB
@ CREATURE_STATIC_FLAG_ONLY_ATTACK_PVP_ENABLING
@ CREATURE_STATIC_FLAG_CAN_WIELD_LOOT
@ CREATURE_STATIC_FLAG_VISIBLE_TO_GHOSTS
@ CREATURE_STATIC_FLAG_MOUNTABLE
@ CREATURE_STATIC_FLAG_COMBAT_PING
@ CREATURE_STATIC_FLAG_CREATOR_LOOT
@ CREATURE_STATIC_FLAG_CALLS_GUARDS
@ CREATURE_STATIC_FLAG_UNINTERACTIBLE
@ CREATURE_STATIC_FLAG_CAN_SWIM
@ CREATURE_STATIC_FLAG_MORE_AUDIBLE
@ CREATURE_STATIC_FLAG_DESPAWN_INSTANTLY
@ CREATURE_STATIC_FLAG_NO_XP
@ CREATURE_STATIC_FLAG_TAMEABLE
@ CREATURE_STATIC_FLAG_IMMUNE_TO_NPC
@ CREATURE_STATIC_FLAG_NO_MELEE_FLEE
@ CREATURE_STATIC_FLAG_UNKILLABLE
@ CREATURE_STATIC_FLAG_IMMUNE_TO_PC
@ CREATURE_STATIC_FLAG_NO_DEFENSE
@ CREATURE_STATIC_FLAG_SESSILE
@ CREATURE_STATIC_FLAG_CORPSE_RAID
@ CREATURE_STATIC_FLAG_NO_AUTOMATIC_REGEN
@ CREATURE_STATIC_FLAG_LARGE_AOI
@ CREATURE_STATIC_FLAG_DO_NOT_PLAY_WOUND_ANIM
@ CREATURE_STATIC_FLAG_NO_LOOT
@ CREATURE_STATIC_FLAG_NO_FACTION_TOOLTIP
@ CREATURE_STATIC_FLAG_FLOATING
@ CREATURE_STATIC_FLAG_AMPHIBIOUS
CreatureChaseMovementType
const uint8 MAX_KILL_CREDIT
@ CREATURE_STATIC_FLAG_4_HIDE_IN_COMBAT_LOG
@ CREATURE_STATIC_FLAG_4_OBEYS_TAUNT_DIMINISHING_RETURNS
@ CREATURE_STATIC_FLAG_4_TREAT_AS_PLAYER_FOR_DIMINISHING_RETURNS
@ CREATURE_STATIC_FLAG_4_TREAT_AS_PLAYER_FOR_PVP_DEBUFF_DURATION
@ CREATURE_STATIC_FLAG_4_FORCE_GOSSIP
@ CREATURE_STATIC_FLAG_4_DO_NOT_TARGET_ON_INTERACTION
@ CREATURE_STATIC_FLAG_4_FLAT_HONOR_AWARD
@ CREATURE_STATIC_FLAG_4_DO_NOT_RENDER_OBJECT_NAME
@ CREATURE_STATIC_FLAG_4_DEALS_TRIPLE_DAMAGE_TO_PC_CONTROLLED_PETS
@ CREATURE_STATIC_FLAG_4_CANNOT_DAZE
@ CREATURE_STATIC_FLAG_4_ONLY_GENERATE_INITIAL_THREAT
@ CREATURE_STATIC_FLAG_4_NO_BIRTH_ANIM
@ CREATURE_STATIC_FLAG_4_PREFER_NPCS_WHEN_SEARCHING_FOR_ENEMIES
@ CREATURE_STATIC_FLAG_4_DONT_REPOSITION_IF_MELEE_TARGET_IS_TOO_CLOSE
@ CREATURE_STATIC_FLAG_4_SUPPRESS_INSTANCE_WIDE_RELEASE_IN_COMBAT
@ CREATURE_STATIC_FLAG_4_DO_NOT_PLAY_UNIT_EVENT_SOUNDS
@ CREATURE_STATIC_FLAG_4_5_MINUTE_LOOT_ROLL_TIMER
@ CREATURE_STATIC_FLAG_4_GIVE_QUEST_KILL_CREDIT_WHILE_OFFLINE
@ CREATURE_STATIC_FLAG_4_PREVENT_SWIM
@ CREATURE_STATIC_FLAG_4_DONT_REPOSITION_WITH_FRIENDS_IN_COMBAT
@ CREATURE_STATIC_FLAG_4_PET_OR_GUARDIAN_AI_DONT_GO_BEHIND_TARGET
@ CREATURE_STATIC_FLAG_4_NO_MELEE_APPROACH
@ CREATURE_STATIC_FLAG_4_DO_NOT_SHEATHE
@ CREATURE_STATIC_FLAG_4_NO_NPC_DAMAGE_BELOW_85PTC
@ CREATURE_STATIC_FLAG_4_ALLOW_NPC_COMBAT_WHILE_UNINTERACTIBLE
@ CREATURE_STATIC_FLAG_4_IGNORE_LOS_WHEN_CASTING_ON_ME
@ CREATURE_STATIC_FLAG_4_IGNORE_SPELL_MIN_RANGE_RESTRICTIONS
@ CREATURE_STATIC_FLAG_4_HAS_NO_SHADOW_BLOB
@ CREATURE_STATIC_FLAG_4_TREAT_AS_RAID_UNIT_FOR_HELPFUL_SPELLS
@ CREATURE_STATIC_FLAG_4_INTERACT_ONLY_WITH_CREATOR
@ CREATURE_STATIC_FLAG_4_QUEST_BOSS
@ CREATURE_STATIC_FLAG_4_UPDATE_CREATURE_RECORD_WHEN_INSTANCE_CHANGES_DIFFICULTY
@ CREATURE_STATIC_FLAG_6_CAN_TOGGLE_BETWEEN_DEATH_AND_PERSONAL_LOOT
@ CREATURE_STATIC_FLAG_6_REPLACE_VISIBLE_UNIT_IF_AVAILABLE
@ CREATURE_STATIC_FLAG_6_USE_GARRISON_OWNER_LEVEL
@ CREATURE_STATIC_FLAG_6_AI_DONT_LEAVE_MELEE_FOR_RANGED_WHEN_TARGET_GETS_ROOTED
@ CREATURE_STATIC_FLAG_6_FORCE_TRIGGERING_PLAYER_LOOT_ONLY
@ CREATURE_STATIC_FLAG_6_ALWAYS_USE_GROUP_LOOT_METHOD
@ CREATURE_STATIC_FLAG_6_DONT_CLEAR_DEBUFFS_ON_LEAVE_COMBAT
@ CREATURE_STATIC_FLAG_6_HOME_REALM_ONLY_LOOT
@ CREATURE_STATIC_FLAG_6_IGNORE_REALM_COALESCING_HIDING_CODE
@ CREATURE_STATIC_FLAG_6_NO_INTERACT_RESPONSE
@ CREATURE_STATIC_FLAG_6_IMMEDIATE_AOI_UPDATE_ON_SPAWN
@ CREATURE_STATIC_FLAG_6_SHOW_BOSS_FRAME_WHILE_UNINTERACTABLE
@ CREATURE_STATIC_FLAG_6_SCALES_TO_PLAYER_LEVEL
@ CREATURE_STATIC_FLAG_6_NO_BOSS_KILL_BANNER
@ CREATURE_STATIC_FLAG_6_USE_PVP_POWER_AND_RESILIENCE
@ CREATURE_STATIC_FLAG_6_SEAMLESS_TRANSFER_PROHIBITED
@ CREATURE_STATIC_FLAG_6_UNCONSCIOUS_ON_DEATH
@ CREATURE_STATIC_FLAG_6_DO_NOT_AUTO_RESUMMON
@ CREATURE_STATIC_FLAG_6_DONT_USE_COMBAT_REACH_FOR_CHAINING
@ CREATURE_STATIC_FLAG_6_DONT_CANCEL_CHANNEL_ON_MASTER_MOUNTING
@ CREATURE_STATIC_FLAG_6_ONLY_QUESTGIVER_FOR_SUMMONER
@ CREATURE_STATIC_FLAG_6_PERSONAL_LOOT_HAS_FULL_SECURITY
@ CREATURE_STATIC_FLAG_6_APPLY_PROCEDURAL_WOUND_ANIM_TO_BASE
@ CREATURE_STATIC_FLAG_6_DONT_REPORT_TO_LOCAL_DEFENSE_CHANNEL_ON_DEATH
@ CREATURE_STATIC_FLAG_6_UI_CAN_GET_POSITION
@ CREATURE_STATIC_FLAG_6_TAPS_TO_FACTION
@ CREATURE_STATIC_FLAG_6_AI_COMBAT_RETURN_PRECISE
@ CREATURE_STATIC_FLAG_6_DO_NOT_PLAY_PROCEDURAL_WOUND_ANIM
@ CREATURE_STATIC_FLAG_6_NO_INITIAL_POWER
@ CREATURE_STATIC_FLAG_6_TRIPLE_SPELL_VISUALS
@ CREATURE_STATIC_FLAG_6_PREFER_UNENGAGED_MONSTERS
@ CREATURE_STATIC_FLAG_6_ALWAYS_STAND_ON_TOP_OF_TARGET
@ CREATURE_STATIC_FLAG_5_DISABLE_AI_PREDICTION
@ CREATURE_STATIC_FLAG_5_NO_DEATH_THUD
@ CREATURE_STATIC_FLAG_5_AI_CANT_PATH_ON_STEEP_SLOPES
@ CREATURE_STATIC_FLAG_5_NO_POWER_REGEN
@ CREATURE_STATIC_FLAG_5_NO_HEALTH_REGEN
@ CREATURE_STATIC_FLAG_5_HAS_SAFE_LOCATION
@ CREATURE_STATIC_FLAG_5_CAN_DROP_LOOT_WHILE_IN_A_CHALLENGE_MODE_INSTANCE
@ CREATURE_STATIC_FLAG_5_CLOSE_IN_ON_UNPATHABLE_TARGET
@ CREATURE_STATIC_FLAG_5_UNINTERACTIBLE_IF_HOSTILE
@ CREATURE_STATIC_FLAG_5_HIDE_HEALTH_BAR_UNDER_TOOLTIP
@ CREATURE_STATIC_FLAG_5_DISABLES_XP_AWARD
@ CREATURE_STATIC_FLAG_5_NO_PET_UNIT_FRAME
@ CREATURE_STATIC_FLAG_5_SUPPRESS_HIGHLIGHT_WHEN_TARGETED_OR_MOUSED_OVER
@ CREATURE_STATIC_FLAG_5_NEVER_EVADE
@ CREATURE_STATIC_FLAG_5_PREDICTIVE_POWER_REGEN
@ CREATURE_STATIC_FLAG_5_DONT_DISMISS_ON_FLYING_MOUNT
@ CREATURE_STATIC_FLAG_5_HIDE_LEVEL_INFO_IN_TOOLTIP
@ CREATURE_STATIC_FLAG_5_CLIENT_LOCAL_CREATURE
@ CREATURE_STATIC_FLAG_5_UNTARGETABLE_BY_CLIENT
@ CREATURE_STATIC_FLAG_5_NO_INTERACT_ON_LEFT_CLICK
@ CREATURE_STATIC_FLAG_5_NO_LEAVECOMBAT_STATE_RESTORE
@ CREATURE_STATIC_FLAG_5_INTERACT_WHILE_HOSTILE
@ CREATURE_STATIC_FLAG_5_GIVE_CRITERIA_KILL_CREDIT_WHEN_CHARMED
@ CREATURE_STATIC_FLAG_5_AI_PREFER_PATHABLE_TARGETS
@ CREATURE_STATIC_FLAG_5_DONT_GO_BEHIND_ME
@ CREATURE_STATIC_FLAG_5_ASSIGN_KILL_CREDIT_TO_ENCOUNTER_LIST
@ CREATURE_STATIC_FLAG_5_240_DEGREE_BACK_ARC
@ CREATURE_STATIC_FLAG_5_BYPASS_INTERACT_INTERRUPTS
@ CREATURE_STATIC_FLAG_5_AI_IGNORE_LOS_TO_MELEE_TARGET
@ CREATURE_STATIC_FLAG_5_FREQUENT_AREA_TRIGGER_CHECKS
@ CREATURE_STATIC_FLAG_5_FORCE_SELF_MOUNTING
@ CREATURE_STATIC_FLAG_5_NO_TEXT_IN_CHAT_BUBBLE
@ CREATURE_STATIC_FLAG_8_USE_2D_CHASING_CALCULATION
@ CREATURE_STATIC_FLAG_8_FORCE_CLOSE_IN_ON_PATH_FAIL_BEHAVIOR
@ CREATURE_STATIC_FLAG_8_USE_FAST_CLASSIC_HEARTBEAT
const uint32 MAX_CREATURE_NAMES
@ CREATURE_STATIC_FLAG_7_TREAT_AS_PLAYER_FOR_ISPLAYERCONTROLLED
@ CREATURE_STATIC_FLAG_7_INTERACT_ONLY_ON_QUEST
@ CREATURE_STATIC_FLAG_7_GENERATE_NO_THREAT_OR_DAMAGE
@ CREATURE_STATIC_FLAG_7_ONLY_TARGETABLE_BY_CREATOR
@ CREATURE_STATIC_FLAG_7_AI_ADDITIONAL_PATHING
@ CREATURE_STATIC_FLAG_7_DISABLE_KILL_CREDIT_FOR_OFFLINE_PLAYERS
@ CREATURE_STATIC_FLAG_7_IMPORTANT_NPC
@ CREATURE_STATIC_FLAG_7_NO_AUTOMATIC_COMBAT_ANCHOR
@ CREATURE_STATIC_FLAG_7_LARGE_NAMEPLATE
@ CREATURE_STATIC_FLAG_7_AI_ENEMIES_DONT_BACKUP_WHEN_I_GET_ROOTED
@ CREATURE_STATIC_FLAG_7_IMPORTANT_QUEST_NPC
@ CREATURE_STATIC_FLAG_7_TRIVIAL_PET
CreatureRandomMovementType
DEFINE_ENUM_FLAG(CreatureStaticFlags)
const uint32 CREATURE_NOPATH_EVADE_TIME
@ CREATURE_STATIC_FLAG_3_FACTION_LEADER
@ CREATURE_STATIC_FLAG_3_FOREVER_CORPSE_DURATION
@ CREATURE_STATIC_FLAG_3_AI_CAN_AUTO_LAND_IN_COMBAT
@ CREATURE_STATIC_FLAG_3_CHECKS_LIQUIDS
@ CREATURE_STATIC_FLAG_3_EXTENDED_CORPSE_DURATION
@ CREATURE_STATIC_FLAG_3_CAN_BE_MULTITAPPED
@ CREATURE_STATIC_FLAG_3_SKIN_WITH_ENGINEERING
@ CREATURE_STATIC_FLAG_3_LINK_ALL
@ CREATURE_STATIC_FLAG_3_NO_DAMAGE_HISTORY
@ CREATURE_STATIC_FLAG_3_IMMUNE_TO_PLAYER_BUFFS
@ CREATURE_STATIC_FLAG_3_PETS_ATTACK_WITH_3D_PATHING
@ CREATURE_STATIC_FLAG_3_USE_MODEL_COLLISION_SIZE
@ CREATURE_STATIC_FLAG_3_SPELL_CLICK_FOR_PARTY_ONLY
@ CREATURE_STATIC_FLAG_3_ATTACKER_IGNORES_FACING
@ CREATURE_STATIC_FLAG_3_TAMEABLE_EXOTIC
@ CREATURE_STATIC_FLAG_3_NO_AGGRO_ON_LEASH
@ CREATURE_STATIC_FLAG_3_INFINITE_AOI
@ CREATURE_STATIC_FLAG_3_DO_NOT_PLAY_MOUNTED_ANIMATIONS
@ CREATURE_STATIC_FLAG_3_NO_FRIENDLY_AREA_AURAS
@ CREATURE_STATIC_FLAG_3_ENEMY_CHECK_IGNORES_LOS
@ CREATURE_STATIC_FLAG_3_ALLOW_INTERACTION_WHILE_IN_COMBAT
@ CREATURE_STATIC_FLAG_3_DO_NOT_FADE_IN
@ CREATURE_STATIC_FLAG_3_MASK_UID
@ CREATURE_STATIC_FLAG_3_NO_NAME_PLATE
@ CREATURE_STATIC_FLAG_3_CANNOT_TURN
@ CREATURE_STATIC_FLAG_3_CANNOT_PENETRATE_WATER
@ CREATURE_STATIC_FLAG_3_AI_CAN_AUTO_TAKEOFF_IN_COMBAT
@ CREATURE_STATIC_FLAG_3_CANNOT_SWIM
@ CREATURE_STATIC_FLAG_3_GIGANTIC_AOI
@ CREATURE_STATIC_FLAG_3_NO_THREAT_FEEDBACK
@ CREATURE_STATIC_FLAG_3_DONT_PVP_ENABLE_OWNER
@ CREATURE_STATIC_FLAG_3_COLLIDE_WITH_MISSILES
@ CREATURE_STATIC_FLAG_2_IGNORE_FEIGN_DEATH
@ CREATURE_STATIC_FLAG_2_RETURN_SOUL_SHARD_TO_MASTER_OF_PET
@ CREATURE_STATIC_FLAG_2_DOES_NOT_REDUCE_REPUTATION_FOR_RAIDS
@ CREATURE_STATIC_FLAG_2_CAN_SAFE_FALL
@ CREATURE_STATIC_FLAG_2_PVP_ENABLING_OOC
@ CREATURE_STATIC_FLAG_2_ACTION_TRIGGERS_WHILE_CHARMED
@ CREATURE_STATIC_FLAG_2_IGNORE_SANCTUARY
@ CREATURE_STATIC_FLAG_2_NO_WOUNDED_SLOWDOWN
@ CREATURE_STATIC_FLAG_2_SKIN_WITH_MINING
@ CREATURE_STATIC_FLAG_2_SERVER_ONLY
@ CREATURE_STATIC_FLAG_2_HIDE_BODY
@ CREATURE_STATIC_FLAG_2_NO_INTERRUPT_SCHOOL_COOLDOWN
@ CREATURE_STATIC_FLAG_2_SPAWN_DEFENSIVE
@ CREATURE_STATIC_FLAG_2_USE_CREATOR_BONUSES
@ CREATURE_STATIC_FLAG_2_IGNORE_MISDIRECTION
@ CREATURE_STATIC_FLAG_2_FORCE_PARTY_MEMBERS_INTO_COMBAT
@ CREATURE_STATIC_FLAG_2_NO_SKILL_GAINS
@ CREATURE_STATIC_FLAG_2_ALERT_CONTENT_TEAM_ON_DEATH
@ CREATURE_STATIC_FLAG_2_ALLOW_MOUNTED_COMBAT
@ CREATURE_STATIC_FLAG_2_INTERACT_WHILE_DEAD
@ CREATURE_STATIC_FLAG_2_NO_OWNER_THREAT
@ CREATURE_STATIC_FLAG_2_SKIN_WITH_HERBALISM
@ CREATURE_STATIC_FLAG_2_CAN_ASSIST
@ CREATURE_STATIC_FLAG_2_NO_PET_BAR
@ CREATURE_STATIC_FLAG_2_NO_CRUSHING_BLOWS
@ CREATURE_STATIC_FLAG_2_FULL_SPELL_LIST
@ CREATURE_STATIC_FLAG_2_IGNORE_PATHING_FAILURE
@ CREATURE_STATIC_FLAG_2_LOCK_TAPPERS_TO_RAID_ON_DEATH
@ CREATURE_STATIC_FLAG_2_ALERT_CONTENT_TEAM_AT_90_PCT_HP
@ CREATURE_STATIC_FLAG_2_SPELL_ATTACKABLE
@ CREATURE_STATIC_FLAG_2_NO_DEATH_MESSAGE
@ CREATURE_STATIC_FLAG_2_NO_PET_SCALING
const uint32 MAX_CREATURE_SPELLS
const uint32 PET_FOCUS_REGEN_INTERVAL
const uint32 MAX_CREATURE_MODELS
std::optional< T > Optional
Optional helper class to wrap optional values within.
#define CURRENT_EXPANSION
@ EXPANSION_LEVEL_CURRENT
@ CREATURE_TYPE_FLAG_SKIN_WITH_ENGINEERING
@ CREATURE_TYPE_FLAG_SKIN_WITH_HERBALISM
@ CREATURE_TYPE_FLAG_TAMEABLE
@ CREATURE_TYPE_FLAG_TAMEABLE_EXOTIC
@ CREATURE_TYPE_FLAG_SKIN_WITH_MINING
#define MAX_EQUIPMENT_ITEMS
bool HasFlag(CreatureStaticFlags4 flag) const
EnumFlag< CreatureStaticFlags3 > _flags3
void ApplyFlag(CreatureStaticFlags3 flag, bool apply)
bool HasFlag(CreatureStaticFlags3 flag) const
EnumFlag< CreatureStaticFlags8 > _flags8
EnumFlag< CreatureStaticFlags > _flags
bool HasFlag(CreatureStaticFlags5 flag) const
bool HasFlag(CreatureStaticFlags flag) const
void ApplyFlag(CreatureStaticFlags7 flag, bool apply)
EnumFlag< CreatureStaticFlags7 > _flags7
bool HasFlag(CreatureStaticFlags8 flag) const
void ApplyFlag(CreatureStaticFlags flag, bool apply)
void ApplyFlag(CreatureStaticFlags6 flag, bool apply)
void ApplyFlag(CreatureStaticFlags2 flag, bool apply)
bool HasFlag(CreatureStaticFlags2 flag) const
bool HasFlag(CreatureStaticFlags7 flag) const
bool HasFlag(CreatureStaticFlags6 flag) const
CreatureStaticFlagsHolder(CreatureStaticFlags flags=CreatureStaticFlags(), CreatureStaticFlags2 flags2=CreatureStaticFlags2(), CreatureStaticFlags3 flags3=CreatureStaticFlags3(), CreatureStaticFlags4 flags4=CreatureStaticFlags4(), CreatureStaticFlags5 flags5=CreatureStaticFlags5(), CreatureStaticFlags6 flags6=CreatureStaticFlags6(), CreatureStaticFlags7 flags7=CreatureStaticFlags7(), CreatureStaticFlags8 flags8=CreatureStaticFlags8())
void ApplyFlag(CreatureStaticFlags5 flag, bool apply)
EnumFlag< CreatureStaticFlags5 > _flags5
void ApplyFlag(CreatureStaticFlags4 flag, bool apply)
EnumFlag< CreatureStaticFlags6 > _flags6
EnumFlag< CreatureStaticFlags2 > _flags2
EnumFlag< CreatureStaticFlags4 > _flags4
void ApplyFlag(CreatureStaticFlags8 flag, bool apply)
constexpr bool HasFlag(T flag) const
std::string ToString(Type &&val, Params &&... params)
std::vector< uint32 > auras
VisibilityDistanceType visibilityDistanceType
Optional< uint64 > npcflag
Optional< CreatureModel > display
Optional< uint32 > unit_flags2
Optional< uint32 > unit_flags3
Optional< uint32 > unit_flags
SkillType GetRequiredLootSkill() const
int32 GetHealthScalingExpansion() const
CreatureStaticFlagsHolder StaticFlags
int32 CreatureDifficultyID
int32 HealthScalingExpansion
std::vector< std::string > Title
std::vector< std::string > Name
std::vector< std::string > TitleAlt
std::vector< std::string > NameAlt
uint32 displayId_other_gender
CreatureModel(uint32 creatureDisplayID, float displayScale, float probability)
static CreatureModel const DefaultVisibleModel
static CreatureModel const DefaultInvisibleModel
CreatureRandomMovementType Random
bool HoverInitiallyEnabled
CreatureChaseMovementType GetChase() const
uint32 GetInteractionPauseTimer() const
CreatureChaseMovementType Chase
uint32 InteractionPauseTimer
CreatureRandomMovementType GetRandom() const
bool IsHoverInitiallyEnabled() const
Optional< uint32 > CreatureIDVisibleToSummoner
Optional< uint32 > GroundMountDisplayID
Optional< std::vector< uint32 > > DespawnOnQuestsRemoved
Optional< uint32 > FlyingMountDisplayID
CreatureClassifications Classification
int32 CreatureImmunitiesId
std::vector< uint32 > GossipMenuIds
CreatureMovementData Movement
bool IsExotic(CreatureDifficulty const *creatureDifficulty) const
int32 WidgetSetUnitConditionID
std::vector< CreatureModel > Models
std::unordered_map< Difficulty, CreatureDifficulty > difficultyStore
bool IsTameable(bool canTameExotic, CreatureDifficulty const *creatureDifficulty) const
std::vector< VendorItem > m_items
uint32 GetItemCount() const
VendorItem const * GetItem(uint32 slot) const
VendorItem const * FindItemCostPair(uint32 item_id, uint32 extendedCost, uint8 type) const
void AddItem(VendorItem vItem)
bool RemoveItem(uint32 item_id, uint8 type)
std::vector< int32 > BonusListIDs