diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Creature/CreatureData.h | 159 |
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 |