diff --git a/src/server/game/AI/CoreAI/PassiveAI.cpp b/src/server/game/AI/CoreAI/PassiveAI.cpp index 080827f1a..796231e41 100644 --- a/src/server/game/AI/CoreAI/PassiveAI.cpp +++ b/src/server/game/AI/CoreAI/PassiveAI.cpp @@ -25,7 +25,7 @@ NullCreatureAI::NullCreatureAI(Creature* c) : CreatureAI(c) { me->SetReactState( int32 NullCreatureAI::Permissible(Creature const* creature) { - if (creature->HasFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_SPELLCLICK)) + if (creature->HasNpcFlag(UNIT_NPC_FLAG_SPELLCLICK)) return PERMIT_BASE_PROACTIVE + 50; if (creature->IsTrigger()) diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index efac02f80..c680cc4cc 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -2061,21 +2061,21 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u { for (WorldObject* target : targets) if (IsCreature(target)) - target->ToUnit()->SetUInt32Value(UNIT_NPC_FLAGS, e.action.unitFlag.flag); + target->ToUnit()->ReplaceAllNpcFlags(NPCFlags(e.action.unitFlag.flag)); break; } case SMART_ACTION_ADD_NPC_FLAG: { for (WorldObject* target : targets) if (IsCreature(target)) - target->ToUnit()->SetFlag(UNIT_NPC_FLAGS, e.action.unitFlag.flag); + target->ToUnit()->SetNpcFlag(NPCFlags(e.action.unitFlag.flag)); break; } case SMART_ACTION_REMOVE_NPC_FLAG: { for (WorldObject* target : targets) if (IsCreature(target)) - target->ToUnit()->RemoveFlag(UNIT_NPC_FLAGS, e.action.unitFlag.flag); + target->ToUnit()->RemoveNpcFlag(NPCFlags(e.action.unitFlag.flag)); break; } case SMART_ACTION_CROSS_CAST: diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index bdd01d230..97efd9c2f 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1003,13 +1003,12 @@ public: [[nodiscard]] bool IsInnkeeper() const { return HasNpcFlag(UNIT_NPC_FLAG_INNKEEPER); } [[nodiscard]] bool IsSpiritHealer() const { return HasNpcFlag(UNIT_NPC_FLAG_SPIRITHEALER); } [[nodiscard]] bool IsSpiritGuide() const { return HasNpcFlag(UNIT_NPC_FLAG_SPIRITGUIDE); } - [[nodiscard]] bool IsTabardDesigner()const { return HasNpcFlag(UNIT_NPC_FLAG_TABARDDESIGNER); } + [[nodiscard]] bool IsTabardDesigner() const { return HasNpcFlag(UNIT_NPC_FLAG_TABARDDESIGNER); } [[nodiscard]] bool IsAuctioner() const { return HasNpcFlag(UNIT_NPC_FLAG_AUCTIONEER); } [[nodiscard]] bool IsArmorer() const { return HasNpcFlag(UNIT_NPC_FLAG_REPAIR); } [[nodiscard]] bool IsServiceProvider() const { - return HasFlag(UNIT_NPC_FLAGS, - UNIT_NPC_FLAG_VENDOR | UNIT_NPC_FLAG_TRAINER | UNIT_NPC_FLAG_FLIGHTMASTER | + return HasNpcFlag(UNIT_NPC_FLAG_VENDOR | UNIT_NPC_FLAG_TRAINER | UNIT_NPC_FLAG_FLIGHTMASTER | UNIT_NPC_FLAG_PETITIONER | UNIT_NPC_FLAG_BATTLEMASTER | UNIT_NPC_FLAG_BANKER | UNIT_NPC_FLAG_INNKEEPER | UNIT_NPC_FLAG_SPIRITHEALER | UNIT_NPC_FLAG_SPIRITGUIDE | UNIT_NPC_FLAG_TABARDDESIGNER | UNIT_NPC_FLAG_AUCTIONEER); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp index b527b96b7..01b12a9ef 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp @@ -113,7 +113,7 @@ public: scheduler.CancelAll(); if (InstanceScript* hyjal = me->GetInstanceScript()) if (!hyjal->GetData(DATA_WAVE_STATUS)) - me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + me->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP); } void JustEngagedWith(Unit* /*who*/) override @@ -138,7 +138,7 @@ public: void IsSummonedBy(WorldObject* /*summoner*/) override { - me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + me->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP); DoCastSelf(SPELL_SIMPLE_TELEPORT, true); // Should wait 2400ms @@ -176,7 +176,7 @@ public: bool OnGossipSelect(Player* /*player*/ , Creature* creature, uint32 /*sender*/, uint32 /*action*/) override { - creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + creature->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP); if (InstanceScript* hyjal = creature->GetInstanceScript()) { @@ -213,7 +213,7 @@ public: scheduler.CancelAll(); if (InstanceScript* hyjal = me->GetInstanceScript()) if (!hyjal->GetData(DATA_WAVE_STATUS)) - me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + me->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP); } void JustEngagedWith(Unit* /*who*/) override @@ -251,7 +251,7 @@ public: bool OnGossipSelect(Player* /*player*/, Creature* creature, uint32 /*sender*/, uint32 /*action*/) override { - creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + creature->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP); if (InstanceScript* hyjal = creature->GetInstanceScript()) { diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_yoggsaron.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_yoggsaron.cpp index b9f4f71f3..dc2e9c641 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_yoggsaron.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_yoggsaron.cpp @@ -1790,7 +1790,7 @@ public: if (!spellClickHandled) return; - if (!me->GetUInt32Value(UNIT_NPC_FLAGS)) + if (!me->GetNpcFlags()) return; switch (me->GetArmor()) @@ -1806,7 +1806,7 @@ public: break; } - me->SetUInt32Value(UNIT_NPC_FLAGS, 0); + me->ReplaceAllNpcFlags(UNIT_NPC_FLAG_NONE); me->DespawnOrUnsummon(1000); }