refactor(Core/Misc): Define & Rename Attributes and flags (#5193)

This commit is contained in:
Kitzunu
2021-04-15 14:16:39 +02:00
committed by GitHub
parent 0a12aed4bb
commit 33aeadf8b6
27 changed files with 224 additions and 224 deletions

View File

@@ -152,7 +152,7 @@ namespace acore
uint32 gain = 0;
if (!creature || (!creature->IsTotem() && !creature->IsPet() && !creature->IsCritter() &&
!(creature->GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_NO_XP_AT_KILL)))
!(creature->GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_NO_XP)))
{
float xpMod = 1.0f;

View File

@@ -327,7 +327,7 @@ enum SpellAttr1
SPELL_ATTR1_DISPEL_AURAS_ON_IMMUNITY = 0x00008000, // TITLE Immunity cancels preapplied auras DESCRIPTION For immunity spells, cancel all auras that this spell would make you immune to when the spell is applied
SPELL_ATTR1_UNAFFECTED_BY_SCHOOL_IMMUNE = 0x00010000, // TITLE Unaffected by school immunities DESCRIPTION Will not pierce Divine Shield, Ice Block and other full invulnerabilities
SPELL_ATTR1_UNAUTOCASTABLE_BY_PET = 0x00020000, // TITLE Cannot be autocast by pet
SPELL_ATTR1_UNK18 = 0x00040000, // TITLE Unknown attribute 18@Attr1 DESCRIPTION Stun, Polymorph, Daze, Hex - CC?
SPELL_ATTR1_PREVENTS_ANIM = 0x00040000, // TITLE NYI, auras apply UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT
SPELL_ATTR1_CANT_TARGET_SELF = 0x00080000, // TITLE Cannot be self-cast
SPELL_ATTR1_REQ_COMBO_POINTS1 = 0x00100000, // TITLE Requires combo points (type 1)
SPELL_ATTR1_UNK21 = 0x00200000, // TITLE Unknown attribute 21@Attr1
@@ -2571,38 +2571,38 @@ enum CreatureFamily
enum CreatureTypeFlags
{
CREATURE_TYPE_FLAG_TAMEABLE_PET = 0x00000001, // Makes the mob tameable (must also be a beast and have family set)
CREATURE_TYPE_FLAG_GHOST_VISIBLE = 0x00000002, // Creature are also visible for not alive player. Allow gossip interaction if npcflag allow?
CREATURE_TYPE_FLAG_BOSS_MOB = 0x00000004, // Changes creature's visible level to "??" in the creature's portrait - Immune Knockback.
CREATURE_TYPE_FLAG_DO_NOT_PLAY_WOUND_PARRY_ANIMATION = 0x00000008,
CREATURE_TYPE_FLAG_HIDE_FACTION_TOOLTIP = 0x00000010,
CREATURE_TYPE_FLAG_UNK5 = 0x00000020, // Sound related
CREATURE_TYPE_FLAG_SPELL_ATTACKABLE = 0x00000040,
CREATURE_TYPE_FLAG_CAN_INTERACT_WHILE_DEAD = 0x00000080, // Player can interact with the creature if its dead (not player dead)
CREATURE_TYPE_FLAG_HERB_SKINNING_SKILL = 0x00000100, // Can be looted by herbalist
CREATURE_TYPE_FLAG_MINING_SKINNING_SKILL = 0x00000200, // Can be looted by miner
CREATURE_TYPE_FLAG_DO_NOT_LOG_DEATH = 0x00000400, // Death event will not show up in combat log
CREATURE_TYPE_FLAG_MOUNTED_COMBAT_ALLOWED = 0x00000800, // Creature can remain mounted when entering combat
CREATURE_TYPE_FLAG_CAN_ASSIST = 0x00001000, // ? Can aid any player in combat if in range?
CREATURE_TYPE_FLAG_IS_PET_BAR_USED = 0x00002000,
CREATURE_TYPE_FLAG_MASK_UID = 0x00004000,
CREATURE_TYPE_FLAG_ENGINEERING_SKINNING_SKILL = 0x00008000, // Can be looted by engineer
CREATURE_TYPE_FLAG_EXOTIC_PET = 0x00010000, // Can be tamed by hunter as exotic pet
CREATURE_TYPE_FLAG_USE_DEFAULT_COLLISION_BOX = 0x00020000, // Collision related. (always using default collision box?)
CREATURE_TYPE_FLAG_IS_SIEGE_WEAPON = 0x00040000,
CREATURE_TYPE_FLAG_CAN_COLLIDE_WITH_MISSILES = 0x00080000, // Projectiles can collide with this creature - interacts with TARGET_DEST_TRAJ
CREATURE_TYPE_FLAG_HIDE_NAME_PLATE = 0x00100000,
CREATURE_TYPE_FLAG_DO_NOT_PLAY_MOUNTED_ANIMATIONS = 0x00200000,
CREATURE_TYPE_FLAG_IS_LINK_ALL = 0x00400000,
CREATURE_TYPE_FLAG_INTERACT_ONLY_WITH_CREATOR = 0x00800000,
CREATURE_TYPE_FLAG_DO_NOT_PLAY_UNIT_EVENT_SOUNDS = 0x01000000,
CREATURE_TYPE_FLAG_HAS_NO_SHADOW_BLOB = 0x02000000,
CREATURE_TYPE_FLAG_TREAT_AS_RAID_UNIT = 0x04000000, // ! Creature can be targeted by spells that require target to be in caster's party/raid
CREATURE_TYPE_FLAG_FORCE_GOSSIP = 0x08000000, // Allows the creature to display a single gossip option.
CREATURE_TYPE_FLAG_DO_NOT_SHEATHE = 0x10000000,
CREATURE_TYPE_FLAG_DO_NOT_TARGET_ON_INTERACTION = 0x20000000,
CREATURE_TYPE_FLAG_DO_NOT_RENDER_OBJECT_NAME = 0x40000000,
CREATURE_TYPE_FLAG_UNIT_IS_QUEST_BOSS = 0x80000000 // Not verified
CREATURE_TYPE_FLAG_TAMEABLE = 0x00000001, // Makes the mob tameable (must also be a beast and have family set)
CREATURE_TYPE_FLAG_VISIBLE_TO_GHOSTS = 0x00000002, // Creature is also visible for not alive player. Allows gossip interaction if npcflag allows?
CREATURE_TYPE_FLAG_BOSS_MOB = 0x00000004, // Changes creature's visible level to "??" in the creature's portrait - Immune Knockback.
CREATURE_TYPE_FLAG_DO_NOT_PLAY_WOUND_PARRY_ANIMATION = 0x00000008,
CREATURE_TYPE_FLAG_NO_FACTION_TOOLTIP = 0x00000010,
CREATURE_TYPE_FLAG_MORE_AUDIBLE = 0x00000020, // Sound related
CREATURE_TYPE_FLAG_SPELL_ATTACKABLE = 0x00000040,
CREATURE_TYPE_FLAG_INTERACT_WHILE_DEAD = 0x00000080, // Player can interact with the creature if creature is dead (not if player is dead)
CREATURE_TYPE_FLAG_SKIN_WITH_HERBALISM = 0x00000100, // Can be looted by herbalist
CREATURE_TYPE_FLAG_SKIN_WITH_MINING = 0x00000200, // Can be looted by miner
CREATURE_TYPE_FLAG_NO_DEATH_MESSAGE = 0x00000400, // Death event will not show up in combat log
CREATURE_TYPE_FLAG_ALLOW_MOUNTED_COMBAT = 0x00000800, // Creature can remain mounted when entering combat
CREATURE_TYPE_FLAG_CAN_ASSIST = 0x00001000, // ? Can aid any player in combat if in range?
CREATURE_TYPE_FLAG_NO_PET_BAR = 0x00002000,
CREATURE_TYPE_FLAG_MASK_UID = 0x00004000,
CREATURE_TYPE_FLAG_SKIN_WITH_ENGINEERING = 0x00008000, // Can be looted by engineer
CREATURE_TYPE_FLAG_TAMEABLE_EXOTIC = 0x00010000, // Can be tamed by hunter as exotic pet
CREATURE_TYPE_FLAG_USE_MODEL_COLLISION_SIZE = 0x00020000, // Collision related. (always using default collision box?)
CREATURE_TYPE_FLAG_ALLOW_INTERACTION_WHILE_IN_COMBAT = 0x00040000,
CREATURE_TYPE_FLAG_COLLIDE_WITH_MISSILES = 0x00080000, // Projectiles can collide with this creature - interacts with TARGET_DEST_TRAJ
CREATURE_TYPE_FLAG_NO_NAME_PLATE = 0x00100000,
CREATURE_TYPE_FLAG_DO_NOT_PLAY_MOUNTED_ANIMATIONS = 0x00200000,
CREATURE_TYPE_FLAG_IS_LINK_ALL = 0x00400000,
CREATURE_TYPE_FLAG_INTERACT_ONLY_WITH_CREATOR = 0x00800000,
CREATURE_TYPE_FLAG_DO_NOT_PLAY_UNIT_EVENT_SOUNDS = 0x01000000,
CREATURE_TYPE_FLAG_HAS_NO_SHADOW_BLOB = 0x02000000,
CREATURE_TYPE_FLAG_TREAT_AS_RAID_UNIT = 0x04000000, // ! Creature can be targeted by spells that require target to be in caster's party/raid
CREATURE_TYPE_FLAG_FORCE_GOSSIP = 0x08000000, // Allows the creature to display a single gossip option.
CREATURE_TYPE_FLAG_DO_NOT_SHEATHE = 0x10000000,
CREATURE_TYPE_FLAG_DO_NOT_TARGET_ON_INTERACTION = 0x20000000,
CREATURE_TYPE_FLAG_DO_NOT_RENDER_OBJECT_NAME = 0x40000000,
CREATURE_TYPE_FLAG_UNIT_IS_QUEST_BOSS = 0x80000000 // Not verified
};
enum CreatureEliteType