aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Creature/CreatureData.h159
1 files changed, 87 insertions, 72 deletions
diff --git a/src/server/game/Entities/Creature/CreatureData.h b/src/server/game/Entities/Creature/CreatureData.h
index d11577da3bd..1b083f82c8b 100644
--- a/src/server/game/Entities/Creature/CreatureData.h
+++ b/src/server/game/Entities/Creature/CreatureData.h
@@ -87,7 +87,7 @@ enum CreatureStaticFlags2
CREATURE_STATIC_FLAG_2_SKIN_WITH_HERBALISM = 0x00004000, // CREATURE_TYPE_FLAG_SKIN_WITH_HERBALISM
CREATURE_STATIC_FLAG_2_SKIN_WITH_MINING = 0x00008000, // CREATURE_TYPE_FLAG_SKIN_WITH_MINING
CREATURE_STATIC_FLAG_2_ALERT_CONTENT_TEAM_ON_DEATH = 0x00010000,
- CREATURE_STATIC_FLAG_2_ALERT_CONTENT_TEAM_AT_90PTC_HP = 0x00020000,
+ CREATURE_STATIC_FLAG_2_ALERT_CONTENT_TEAM_AT_90_PCT_HP = 0x00020000,
CREATURE_STATIC_FLAG_2_ALLOW_MOUNTED_COMBAT = 0x00040000, // CREATURE_TYPE_FLAG_ALLOW_MOUNTED_COMBAT
CREATURE_STATIC_FLAG_2_PVP_ENABLING_OOC = 0x00080000,
CREATURE_STATIC_FLAG_2_NO_DEATH_MESSAGE = 0x00100000, // CREATURE_TYPE_FLAG_NO_DEATH_MESSAGE
@@ -176,84 +176,99 @@ enum CreatureStaticFlags4
CREATURE_STATIC_FLAG_4_QUEST_BOSS = 0x80000000 // CREATURE_TYPE_FLAG_QUEST_BOSS
};
-enum CreatureDifficultyFlags5
+enum CreatureStaticFlags5
{
- CREATURE_DIFFICULTYFLAGS_5_UNTARGETABLE_BY_CLIENT = 0x00000001, // UnitFlags2 0x4000000 UNIT_FLAG2_UNTARGETABLE_BY_CLIENT
- CREATURE_DIFFICULTYFLAGS_5_UNK1 = 0x00000002,
- CREATURE_DIFFICULTYFLAGS_5_UNINTERACTIBLE_IF_HOSTILE = 0x00000004, // UnitFlags2 0x10000000
- CREATURE_DIFFICULTYFLAGS_5_UNK2 = 0x00000008,
- CREATURE_DIFFICULTYFLAGS_5_UNK3 = 0x00000010,
- CREATURE_DIFFICULTYFLAGS_5_UNK4 = 0x00000020,
- CREATURE_DIFFICULTYFLAGS_5_UNK5 = 0x00000040,
- CREATURE_DIFFICULTYFLAGS_5_UNK6 = 0x00000080,
- CREATURE_DIFFICULTYFLAGS_5_INTERACT_WHILE_HOSTILE = 0x00000100, // UnitFlags2 0x4000 UNIT_FLAG2_INTERACT_WHILE_HOSTILE
- CREATURE_DIFFICULTYFLAGS_5_UNK7 = 0x00000200,
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK1 = 0x00000400, // CREATURE_TYPEFLAGS_2_UNK1
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK2 = 0x00000800, // CREATURE_TYPEFLAGS_2_UNK2
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK3 = 0x00001000, // CREATURE_TYPEFLAGS_2_UNK3
- CREATURE_DIFFICULTYFLAGS_5_SUPPRESS_HIGHLIGHT_WHEN_TARGETED_OR_MOUSED_OVER = 0x00002000, // UnitFlags2 0x80000 141
- CREATURE_DIFFICULTYFLAGS_5_UNK8 = 0x00004000,
- CREATURE_DIFFICULTYFLAGS_5_UNK9 = 0x00008000,
- CREATURE_DIFFICULTYFLAGS_5_UNK10 = 0x00010000,
- CREATURE_DIFFICULTYFLAGS_5_UNK11 = 0x00020000,
- CREATURE_DIFFICULTYFLAGS_5_UNK12 = 0x00040000,
- CREATURE_DIFFICULTYFLAGS_5_UNK13 = 0x00080000,
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK4 = 0x00100000, // CREATURE_TYPEFLAGS_2_UNK4
- CREATURE_DIFFICULTYFLAGS_5_UNK14 = 0x00200000,
- CREATURE_DIFFICULTYFLAGS_5_UNK15 = 0x00400000,
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK5 = 0x00800000, // CREATURE_TYPEFLAGS_2_UNK5
- CREATURE_DIFFICULTYFLAGS_5_UNK16 = 0x01000000,
- CREATURE_DIFFICULTYFLAGS_5_UNK17 = 0x02000000,
- CREATURE_DIFFICULTYFLAGS_5_UNK18 = 0x04000000,
- CREATURE_DIFFICULTYFLAGS_5_UNK19 = 0x08000000,
- CREATURE_DIFFICULTYFLAGS_5_UNK20 = 0x10000000,
- CREATURE_DIFFICULTYFLAGS_5_UNK21 = 0x20000000,
- CREATURE_DIFFICULTYFLAGS_5_TFLAG2_UNK6 = 0x40000000, // CREATURE_TYPEFLAGS_2_UNK6
- CREATURE_DIFFICULTYFLAGS_5_UNK22 = 0x80000000
+ CREATURE_STATIC_FLAG_5_UNTARGETABLE_BY_CLIENT = 0x00000001, // UnitFlags2 0x4000000 UNIT_FLAG2_UNTARGETABLE_BY_CLIENT
+ CREATURE_STATIC_FLAG_5_FORCE_SELF_MOUNTING = 0x00000002,
+ CREATURE_STATIC_FLAG_5_UNINTERACTIBLE_IF_HOSTILE = 0x00000004, // UnitFlags2 0x10000000
+ CREATURE_STATIC_FLAG_5_DISABLES_XP_AWARD = 0x00000008,
+ CREATURE_STATIC_FLAG_5_DISABLE_AI_PREDICTION = 0x00000010,
+ CREATURE_STATIC_FLAG_5_NO_LEAVECOMBAT_STATE_RESTORE = 0x00000020,
+ CREATURE_STATIC_FLAG_5_BYPASS_INTERACT_INTERRUPTS = 0x00000040,
+ CREATURE_STATIC_FLAG_5_240_DEGREE_BACK_ARC = 0x00000080,
+ CREATURE_STATIC_FLAG_5_INTERACT_WHILE_HOSTILE = 0x00000100, // UnitFlags2 0x4000 UNIT_FLAG2_INTERACT_WHILE_HOSTILE
+ CREATURE_STATIC_FLAG_5_DONT_DISMISS_ON_FLYING_MOUNT = 0x00000200,
+ CREATURE_STATIC_FLAG_5_PREDICTIVE_POWER_REGEN = 0x00000400, // CREATURE_TYPEFLAGS_2_UNK1
+ CREATURE_STATIC_FLAG_5_HIDE_LEVEL_INFO_IN_TOOLTIP = 0x00000800, // CREATURE_TYPEFLAGS_2_UNK2
+ CREATURE_STATIC_FLAG_5_HIDE_HEALTH_BAR_UNDER_TOOLTIP = 0x00001000, // CREATURE_TYPEFLAGS_2_UNK3
+ CREATURE_STATIC_FLAG_5_SUPPRESS_HIGHLIGHT_WHEN_TARGETED_OR_MOUSED_OVER = 0x00002000, // UnitFlags2 0x80000
+ CREATURE_STATIC_FLAG_5_AI_PREFER_PATHABLE_TARGETS = 0x00004000,
+ CREATURE_STATIC_FLAG_5_FREQUENT_AREA_TRIGGER_CHECKS = 0x00008000,
+ CREATURE_STATIC_FLAG_5_ASSIGN_KILL_CREDIT_TO_ENCOUNTER_LIST= 0x00010000,
+ CREATURE_STATIC_FLAG_5_NEVER_EVADE = 0x00020000,
+ CREATURE_STATIC_FLAG_5_AI_CANT_PATH_ON_STEEP_SLOPES = 0x00040000,
+ CREATURE_STATIC_FLAG_5_AI_IGNORE_LOS_TO_MELEE_TARGET = 0x00080000,
+ CREATURE_STATIC_FLAG_5_NO_TEXT_IN_CHAT_BUBBLE = 0x00100000, // "Never display emote or chat text in a chat bubble", CREATURE_TYPEFLAGS_2_UNK4
+ CREATURE_STATIC_FLAG_5_CLOSE_IN_ON_UNPATHABLE_TARGET = 0x00200000, // "AI Pets close in on unpathable target"
+ CREATURE_STATIC_FLAG_5_DONT_GO_BEHIND_ME = 0x00400000, // "Pet/Guardian AI Don't Go Behind Me (use on target)"
+ CREATURE_STATIC_FLAG_5_NO_DEATH_THUD = 0x00800000, // CREATURE_TYPEFLAGS_2_UNK5
+ CREATURE_STATIC_FLAG_5_CLIENT_LOCAL_CREATURE = 0x01000000,
+ CREATURE_STATIC_FLAG_5_CAN_DROP_LOOT_WHILE_IN_A_CHALLENGE_MODE_INSTANCE = 0x02000000,
+ CREATURE_STATIC_FLAG_5_HAS_SAFE_LOCATION = 0x04000000,
+ CREATURE_STATIC_FLAG_5_NO_HEALTH_REGEN = 0x08000000,
+ CREATURE_STATIC_FLAG_5_NO_POWER_REGEN = 0x10000000,
+ CREATURE_STATIC_FLAG_5_NO_PET_UNIT_FRAME = 0x20000000,
+ CREATURE_STATIC_FLAG_5_NO_INTERACT_ON_LEFT_CLICK = 0x40000000, // CREATURE_TYPEFLAGS_2_UNK6
+ CREATURE_STATIC_FLAG_5_GIVE_CRITERIA_KILL_CREDIT_WHEN_CHARMED = 0x80000000
};
-enum CreatureDifficultyFlags6
+enum CreatureStaticFlags6
{
- CREATURE_DIFFICULTYFLAGS_6_UNK1 = 0x00000001,
- CREATURE_DIFFICULTYFLAGS_6_UNK2 = 0x00000002,
- CREATURE_DIFFICULTYFLAGS_6_UNK3 = 0x00000004,
- CREATURE_DIFFICULTYFLAGS_6_UNK4 = 0x00000008,
- CREATURE_DIFFICULTYFLAGS_6_UNK5 = 0x00000010,
- CREATURE_DIFFICULTYFLAGS_6_UNK6 = 0x00000020,
- CREATURE_DIFFICULTYFLAGS_6_UNK7 = 0x00000040,
- CREATURE_DIFFICULTYFLAGS_6_TFLAG2_UNK7 = 0x00000080,
- CREATURE_DIFFICULTYFLAGS_6_UNK8 = 0x00000100,
- CREATURE_DIFFICULTYFLAGS_6_UNK9 = 0x00000200,
- CREATURE_DIFFICULTYFLAGS_6_UNK10 = 0x00000400,
- CREATURE_DIFFICULTYFLAGS_6_UNK11 = 0x00000800,
- CREATURE_DIFFICULTYFLAGS_6_UNK12 = 0x00001000,
- CREATURE_DIFFICULTYFLAGS_6_UNK13 = 0x00002000,
- CREATURE_DIFFICULTYFLAGS_6_UNK14 = 0x00004000,
- CREATURE_DIFFICULTYFLAGS_6_UNK15 = 0x00008000,
- CREATURE_DIFFICULTYFLAGS_6_UNK16 = 0x00010000,
- CREATURE_DIFFICULTYFLAGS_6_UNK17 = 0x00020000,
- CREATURE_DIFFICULTYFLAGS_6_UNK18 = 0x00040000,
- CREATURE_DIFFICULTYFLAGS_6_UNK19 = 0x00080000,
- CREATURE_DIFFICULTYFLAGS_6_UNK20 = 0x00100000,
- CREATURE_DIFFICULTYFLAGS_6_UNK21 = 0x00200000,
- CREATURE_DIFFICULTYFLAGS_6_UNK22 = 0x00400000,
- CREATURE_DIFFICULTYFLAGS_6_UNK23 = 0x00800000,
- CREATURE_DIFFICULTYFLAGS_6_UNK24 = 0x01000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK25 = 0x02000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK26 = 0x04000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK27 = 0x08000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK28 = 0x10000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK29 = 0x20000000,
- CREATURE_DIFFICULTYFLAGS_6_UNK30 = 0x40000000,
- CREATURE_DIFFICULTYFLAGS_6_TFLAG2_UNK14 = 0x80000000
+ CREATURE_STATIC_FLAG_6_DO_NOT_AUTO_RESUMMON = 0x00000001, // "Do not auto-resummon this companion creature"
+ CREATURE_STATIC_FLAG_6_REPLACE_VISIBLE_UNIT_IF_AVAILABLE = 0x00000002, // "Smooth Phasing: Replace visible unit if available"
+ CREATURE_STATIC_FLAG_6_IGNORE_REALM_COALESCING_HIDING_CODE = 0x00000004, // "Ignore the realm coalescing hiding code (always show)"
+ CREATURE_STATIC_FLAG_6_TAPS_TO_FACTION = 0x00000008,
+ CREATURE_STATIC_FLAG_6_ONLY_QUESTGIVER_FOR_SUMMONER = 0x00000010,
+ CREATURE_STATIC_FLAG_6_AI_COMBAT_RETURN_PRECISE = 0x00000020,
+ CREATURE_STATIC_FLAG_6_HOME_REALM_ONLY_LOOT = 0x00000040,
+ CREATURE_STATIC_FLAG_6_NO_INTERACT_RESPONSE = 0x00000080, // TFLAG2_UNK7
+ CREATURE_STATIC_FLAG_6_NO_INITIAL_POWER = 0x00000100,
+ CREATURE_STATIC_FLAG_6_DONT_CANCEL_CHANNEL_ON_MASTER_MOUNTING = 0x00000200,
+ CREATURE_STATIC_FLAG_6_CAN_TOGGLE_BETWEEN_DEATH_AND_PERSONAL_LOOT = 0x00000400,
+ CREATURE_STATIC_FLAG_6_ALWAYS_STAND_ON_TOP_OF_TARGET = 0x00000800, // "Always, ALWAYS tries to stand right on top of his move to target. ALWAYS!!", toggleable by 'Set "Always Stand on Target" flag for unit(s)' or not same?
+ CREATURE_STATIC_FLAG_6_UNCONSCIOUS_ON_DEATH = 0x00001000,
+ CREATURE_STATIC_FLAG_6_DONT_REPORT_TO_LOCAL_DEFENSE_CHANNEL_ON_DEATH = 0x00002000,
+ CREATURE_STATIC_FLAG_6_PREFER_UNENGAGED_MONSTERS = 0x00004000, // "Prefer unengaged monsters when picking a target"
+ CREATURE_STATIC_FLAG_6_USE_PVP_POWER_AND_RESILIENCE = 0x00008000, // "Use PVP power and resilience when players attack this creature"
+ CREATURE_STATIC_FLAG_6_DONT_CLEAR_DEBUFFS_ON_LEAVE_COMBAT = 0x00010000,
+ CREATURE_STATIC_FLAG_6_PERSONAL_LOOT_HAS_FULL_SECURITY = 0x00020000, // "Personal loot has full security (guaranteed push/mail delivery)"
+ CREATURE_STATIC_FLAG_6_TRIPLE_SPELL_VISUALS = 0x00040000,
+ CREATURE_STATIC_FLAG_6_USE_GARRISON_OWNER_LEVEL = 0x00080000,
+ CREATURE_STATIC_FLAG_6_IMMEDIATE_AOI_UPDATE_ON_SPAWN = 0x00100000,
+ CREATURE_STATIC_FLAG_6_UI_CAN_GET_POSITION = 0x00200000,
+ CREATURE_STATIC_FLAG_6_SEAMLESS_TRANSFER_PROHIBITED = 0x00400000,
+ CREATURE_STATIC_FLAG_6_ALWAYS_USE_GROUP_LOOT_METHOD = 0x00800000,
+ CREATURE_STATIC_FLAG_6_NO_BOSS_KILL_BANNER = 0x01000000,
+ CREATURE_STATIC_FLAG_6_FORCE_TRIGGERING_PLAYER_LOOT_ONLY = 0x02000000,
+ CREATURE_STATIC_FLAG_6_SHOW_BOSS_FRAME_WHILE_UNINTERACTABLE= 0x04000000,
+ CREATURE_STATIC_FLAG_6_SCALES_TO_PLAYER_LEVEL = 0x08000000,
+ CREATURE_STATIC_FLAG_6_AI_DONT_LEAVE_MELEE_FOR_RANGED_WHEN_TARGET_GETS_ROOTED = 0x10000000,
+ CREATURE_STATIC_FLAG_6_DONT_USE_COMBAT_REACH_FOR_CHAINING = 0x20000000,
+ CREATURE_STATIC_FLAG_6_DO_NOT_PLAY_PROCEDURAL_WOUND_ANIM = 0x40000000,
+ CREATURE_STATIC_FLAG_6_APPLY_PROCEDURAL_WOUND_ANIM_TO_BASE = 0x80000000 // TFLAG2_UNK14
};
-enum CreatureDifficultyFlags7
+enum CreatureStaticFlags7
{
- CREATURE_DIFFICULTYFLAGS_7_TFLAG2_UNK15 = 0x00000001,
- CREATURE_DIFFICULTYFLAGS_7_TFLAG2_UNK16 = 0x00000002,
- CREATURE_DIFFICULTYFLAGS_7_TFLAG2_UNK17 = 0x00000004,
- CREATURE_DIFFICULTYFLAGS_7_UNK1 = 0x00000008
+ CREATURE_STATIC_FLAG_7_IMPORTANT_NPC = 0x00000001,
+ CREATURE_STATIC_FLAG_7_IMPORTANT_QUEST_NPC = 0x00000002,
+ CREATURE_STATIC_FLAG_7_LARGE_NAMEPLATE = 0x00000004,
+ CREATURE_STATIC_FLAG_7_TRIVIAL_PET = 0x00000008,
+ CREATURE_STATIC_FLAG_7_AI_ENEMIES_DONT_BACKUP_WHEN_I_GET_ROOTED = 0x00000010,
+ CREATURE_STATIC_FLAG_7_NO_AUTOMATIC_COMBAT_ANCHOR = 0x00000020,
+ CREATURE_STATIC_FLAG_7_ONLY_TARGETABLE_BY_CREATOR = 0x00000040,
+ CREATURE_STATIC_FLAG_7_TREAT_AS_PLAYER_FOR_ISPLAYERCONTROLLED = 0x00000080,
+ CREATURE_STATIC_FLAG_7_GENERATE_NO_THREAT_OR_DAMAGE = 0x00000100,
+ CREATURE_STATIC_FLAG_7_INTERACT_ONLY_ON_QUEST = 0x00000200,
+ CREATURE_STATIC_FLAG_7_DISABLE_KILL_CREDIT_FOR_OFFLINE_PLAYERS = 0x00000400,
+ CREATURE_STATIC_FLAG_7_AI_ADDITIONAL_PATHING = 0x00080000,
+};
+
+enum CreatureStaticFlags8
+{
+ CREATURE_STATIC_FLAG_8_FORCE_CLOSE_IN_ON_PATH_FAIL_BEHAVIOR = 0x00000002,
+ CREATURE_STATIC_FLAG_8_USE_2D_CHASING_CALCULATION = 0x00000020,
+ CREATURE_STATIC_FLAG_8_USE_FAST_CLASSIC_HEARTBEAT = 0x00000040,
};
// EnumUtils: DESCRIBE THIS