diff options
Diffstat (limited to 'src')
12 files changed, 40 insertions, 45 deletions
diff --git a/src/server/scripts/DragonIsles/AzureVault/boss_leymor.cpp b/src/server/scripts/DragonIsles/AzureVault/boss_leymor.cpp index d577a686cc5..ac7c68938df 100644 --- a/src/server/scripts/DragonIsles/AzureVault/boss_leymor.cpp +++ b/src/server/scripts/DragonIsles/AzureVault/boss_leymor.cpp @@ -101,7 +101,7 @@ struct boss_leymor : public BossAI if (instance->GetData(DATA_LEYMOR_INTRO_DONE)) return; - me->SetUnitFlag(UnitFlags(UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_IMMUNE_TO_NPC)); + me->SetImmuneToAll(true); DoCastSelf(SPELL_STASIS); } @@ -112,7 +112,7 @@ struct boss_leymor : public BossAI scheduler.Schedule(1s, [this](TaskContext /*context*/) { me->RemoveAurasDueToSpell(SPELL_STASIS); - me->RemoveUnitFlag(UnitFlags(UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_IMMUNE_TO_NPC)); + me->SetImmuneToAll(false); DoCastSelf(SPELL_ARCANE_ERUPTION); Talk(SAY_ANNOUNCE_AWAKEN); }); diff --git a/src/server/scripts/EasternKingdoms/zone_dun_morogh_area_coldridge_valley.cpp b/src/server/scripts/EasternKingdoms/zone_dun_morogh_area_coldridge_valley.cpp index 598e705c0eb..669569c2953 100644 --- a/src/server/scripts/EasternKingdoms/zone_dun_morogh_area_coldridge_valley.cpp +++ b/src/server/scripts/EasternKingdoms/zone_dun_morogh_area_coldridge_valley.cpp @@ -70,7 +70,7 @@ public: { _tapped = true; _playerGUID = caster->GetGUID(); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToNPC(true); me->SetStandState(UNIT_STAND_STATE_STAND); _events.ScheduleEvent(EVENT_TURN_TO_PLAYER, Seconds(2)); } diff --git a/src/server/scripts/EasternKingdoms/zone_silverpine_forest.cpp b/src/server/scripts/EasternKingdoms/zone_silverpine_forest.cpp index 867801feeb9..9d587ec5f94 100644 --- a/src/server/scripts/EasternKingdoms/zone_silverpine_forest.cpp +++ b/src/server/scripts/EasternKingdoms/zone_silverpine_forest.cpp @@ -3628,8 +3628,7 @@ struct npc_silverpine_mutant_bush_chicken : public ScriptedAI void JustAppeared() override { - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(true); } void IsSummonedBy(WorldObject* summoner) override @@ -4298,8 +4297,7 @@ struct npc_silverpine_agatha_fenris_isle : public ScriptedAI me->GetMotionMaster()->Clear(); me->GetMotionMaster()->MoveFollow(summoner, 3.0f, float(M_PI / 2.0f)); - me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(false); me->SetReactState(REACT_ASSIST); } @@ -4326,8 +4324,7 @@ struct npc_silverpine_agatha_fenris_isle : public ScriptedAI _isSceneStarted = true; - me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(false); me->SetReactState(REACT_PASSIVE); @@ -4575,8 +4572,7 @@ struct npc_silverpine_forsaken_trooper_fenris_isle : public ScriptedAI if (!summoner->IsCreature()) return; - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(true); me->SetReactState(REACT_PASSIVE); @@ -4862,8 +4858,7 @@ struct npc_silverpine_fenris_keep_camera : public ScriptedAI if (Unit* unit = summoner->ToUnit()) unit->EnterVehicle(me, SEAT_FENRIS_CAMERA); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(true); me->SetReactState(REACT_PASSIVE); } @@ -4982,8 +4977,7 @@ struct npc_silverpine_crowley_bloodfang_fenris_keep : public ScriptedAI void JustAppeared() override { - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(true); me->SetReactState(REACT_PASSIVE); } @@ -5121,8 +5115,7 @@ struct npc_silverpine_generic_actor_fenris_keep : public ScriptedAI if (Creature* fenrisStalker = me->FindNearestCreature(NPC_FENRIS_KEEP_STALKER, 50.0f, true)) me->SetFacingToObject(fenrisStalker); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToAll(true); me->SetReactState(REACT_PASSIVE); } diff --git a/src/server/scripts/ExilesReach/zone_exiles_reach.cpp b/src/server/scripts/ExilesReach/zone_exiles_reach.cpp index e53b4dd9e3b..37bdace06af 100644 --- a/src/server/scripts/ExilesReach/zone_exiles_reach.cpp +++ b/src/server/scripts/ExilesReach/zone_exiles_reach.cpp @@ -2435,7 +2435,7 @@ struct npc_sparring_partner_combat_training : public ScriptedAI me->SetFacingToObject(owner); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); _events.ScheduleEvent(EVENT_COMBAT_CHECK_PLAYER, 1s); OnReadyPointReached(); @@ -2508,13 +2508,13 @@ struct npc_sparring_partner_combat_training : public ScriptedAI me->SetFacingToObject(owner); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); break; } case EVENT_COMBAT_TRAINING_END: // Used by all classes me->SetImmuneToPC(true); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); me->RemoveAllAuras(); if (Unit* owner = me->GetDemonCreator()) { @@ -2554,7 +2554,7 @@ struct npc_sparring_partner_enhanced_combat_training_warrior : public npc_sparri { _slamCounter = 0; me->SetImmuneToPC(true); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); player->GetSpellHistory()->ResetCharges(CHARGE_CATEGORY_CHARGE_SPELL); me->CastSpell(me, SPELL_AGGRO_RADIUS_CHECK_DNT_WARRIOR_MAGE); me->CastSpell(me, SPELL_RANGED_ROOT_DNT); @@ -2913,7 +2913,7 @@ struct npc_sparring_partner_enhanced_combat_training_priest : public npc_sparrin { StartConversationWithPlayer(CONVERSATION_SHADOW_WORD_PAIN_PRE_COMBAT_PRIEST); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); me->RemoveAura(SPELL_RANGED_ROOT_DNT); _secondaryCheck = false; } @@ -2971,7 +2971,7 @@ struct npc_sparring_partner_enhanced_combat_training_shaman : public npc_sparrin case EVENT_COMBAT_TRAINING_AGGRO_CHECK_SHAMAN: me->CastSpell(me, SPELL_AGGRO_RADIUS_CHECK_DNT_SHAMAN); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); _secondaryCheck = true; break; default: @@ -3010,7 +3010,7 @@ struct npc_sparring_partner_enhanced_combat_training_shaman : public npc_sparrin { StartConversationWithPlayer(CONVERSATION_PRIMAL_STRIKE_QUEST_CREDIT_SHAMAN); me->SetImmuneToPC(true); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); _events.ScheduleEvent(EVENT_COMBAT_TRAINING_RESET_SHAMAN, 3s); } } @@ -3064,7 +3064,7 @@ struct npc_sparring_partner_enhanced_combat_training_mage : public npc_sparring_ case EVENT_COMBAT_TRAINING_AGGRO_CHECK_MAGE: me->CastSpell(me, SPELL_AGGRO_RADIUS_CHECK_DNT_WARRIOR_MAGE); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); _secondaryCheck = true; break; default: @@ -3092,7 +3092,7 @@ struct npc_sparring_partner_enhanced_combat_training_mage : public npc_sparring_ { StartConversationWithPlayer(CONVERSATION_FIRE_BLAST_QUEST_CREDIT_MAGE); me->SetImmuneToPC(true); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); _events.ScheduleEvent(EVENT_COMBAT_TRAINING_RESET_MAGE, 4s); } } @@ -3180,7 +3180,7 @@ struct npc_sparring_partner_enhanced_combat_training_warlock : public npc_sparri { StartConversationWithPlayer(CONVERSATION_CORRUPTION_CAST_PRE_COMBAT_WARLOCK); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); me->RemoveAura(SPELL_RANGED_ROOT_DNT); _secondaryCheck = false; } @@ -3296,7 +3296,7 @@ struct npc_sparring_partner_enhanced_combat_training_druid : public npc_sparring { StartConversationWithPlayer(CONVERSATION_MOONFIRE_CAST_PRE_COMBAT_DRUID); me->SetImmuneToPC(false); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); me->RemoveAura(SPELL_RANGED_ROOT_DNT); _hitByMoonfire = true; } diff --git a/src/server/scripts/Kalimdor/LostCityOfTheTolvir/boss_lockmaw.cpp b/src/server/scripts/Kalimdor/LostCityOfTheTolvir/boss_lockmaw.cpp index 1b235ebed4c..87ae42bf546 100644 --- a/src/server/scripts/Kalimdor/LostCityOfTheTolvir/boss_lockmaw.cpp +++ b/src/server/scripts/Kalimdor/LostCityOfTheTolvir/boss_lockmaw.cpp @@ -391,7 +391,7 @@ struct npc_lockmaw_augh_boss : public ScriptedAI if (_instance->GetData(DATA_HEROIC_AUGH_DESPAWNED)) me->Relocate(AughRespawnPosition); else - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); me->SetReactState(REACT_PASSIVE); } @@ -457,7 +457,7 @@ struct npc_lockmaw_augh_boss : public ScriptedAI _events.ScheduleEvent(EVENT_TURN_ATTACKABLE, 3s + 500ms, 0, PHASE_INTRO); break; case EVENT_TURN_ATTACKABLE: - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); _events.ScheduleEvent(EVENT_SAY_INTRO_3, 11s, 0, PHASE_INTRO); break; case EVENT_SAY_INTRO_3: diff --git a/src/server/scripts/Kalimdor/VortexPinnacle/vortex_pinnacle.cpp b/src/server/scripts/Kalimdor/VortexPinnacle/vortex_pinnacle.cpp index e7d9643ca11..de5004c8fff 100644 --- a/src/server/scripts/Kalimdor/VortexPinnacle/vortex_pinnacle.cpp +++ b/src/server/scripts/Kalimdor/VortexPinnacle/vortex_pinnacle.cpp @@ -115,7 +115,7 @@ struct npc_vp_slipstream : public NullCreatureAI if (slipstreamInfo.SpellClick) { me->SetNpcFlag(UNIT_NPC_FLAG_SPELLCLICK); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); } break; } diff --git a/src/server/scripts/KhazAlgar/IsleOfDorn/zone_isle_of_dorn.cpp b/src/server/scripts/KhazAlgar/IsleOfDorn/zone_isle_of_dorn.cpp index fd206d7fef8..cbc16d7fcb3 100644 --- a/src/server/scripts/KhazAlgar/IsleOfDorn/zone_isle_of_dorn.cpp +++ b/src/server/scripts/KhazAlgar/IsleOfDorn/zone_isle_of_dorn.cpp @@ -41,7 +41,7 @@ enum PreciousGemsData class conversation_natalia_pearces_accept_precious_gems : public ConversationAI { public: - conversation_natalia_pearces_accept_precious_gems(Conversation* conversation) : ConversationAI(conversation) { } + using ConversationAI::ConversationAI; enum ConversationPreciousGemsIntro { @@ -68,7 +68,7 @@ public: { LocaleConstant privateOwnerLocale = conversation->GetPrivateObjectOwnerLocale(); - conversation->m_Events.AddEvent([this]() + conversation->m_Events.AddEvent([conversation = conversation]() { Creature* nataliaClone = conversation->GetActorCreature(0); if (!nataliaClone) @@ -85,7 +85,7 @@ constexpr Position NataliaSpawnPos = { 568.539f, -1205.899f, 2.48101f, 1.82973f class conversation_natalia_pearces_complete_precious_gems : public ConversationAI { public: - conversation_natalia_pearces_complete_precious_gems(Conversation* conversation) : ConversationAI(conversation) { } + using ConversationAI::ConversationAI; void OnCreate(Unit* creator) override { @@ -98,7 +98,7 @@ public: return; nataliaClone->RemoveNpcFlag(NPCFlags(UNIT_NPC_FLAG_GOSSIP | UNIT_NPC_FLAG_QUESTGIVER)); - nataliaClone->SetUnitFlag(UnitFlags(UNIT_FLAG_UNINTERACTIBLE)); + nataliaClone->SetUninteractible(true); nataliaClone->GetMotionMaster()->MovePath(PATH_NATALIA_CLONE_BASALTEOUS_CAVE, false); conversation->AddActor(CONVO_ACTOR_NATALIA_BASALTEOUS_CAVE, 0, nataliaClone->GetGUID()); diff --git a/src/server/scripts/Maelstrom/Stonecore/boss_corborus.cpp b/src/server/scripts/Maelstrom/Stonecore/boss_corborus.cpp index 596d9a397fc..8e79ad8dc42 100644 --- a/src/server/scripts/Maelstrom/Stonecore/boss_corborus.cpp +++ b/src/server/scripts/Maelstrom/Stonecore/boss_corborus.cpp @@ -170,7 +170,7 @@ class boss_corborus : public CreatureScript // Face Corborus to players and set new home position me->SetFacingTo(3.176499f); me->SetHomePosition(1154.55f, 878.843f, 284.963f, 3.176499f); - me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); + me->SetImmuneToPC(false); // Despawn Millhouse and all trash instance->SetData(DATA_MILLHOUSE_EVENT_DESPAWN, 0); diff --git a/src/server/scripts/Northrend/zone_storm_peaks.cpp b/src/server/scripts/Northrend/zone_storm_peaks.cpp index f8f8238e1ab..5009c758586 100644 --- a/src/server/scripts/Northrend/zone_storm_peaks.cpp +++ b/src/server/scripts/Northrend/zone_storm_peaks.cpp @@ -783,7 +783,7 @@ struct npc_king_jokkum_vehicle : public VehicleAI playerGUID = who->GetGUID(); Talk(SAY_HOLD_ON, who); me->CastSpell(who, SPELL_JOKKUM_KILL_CREDIT, true); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC); + me->SetImmuneToNPC(true); me->GetMotionMaster()->MovePath(PATH_JOKKUM, false); } } diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp index a28c4e9a41d..3cace29b372 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp @@ -339,7 +339,7 @@ struct boss_the_lurker_below : public BossAI if (!Spawned) { - me->ReplaceAllUnitFlags(UNIT_FLAG_IMMUNE_TO_PC); + me->SetImmuneToPC(true, true); // spawn adds for (uint8 i = 0; i < 9; ++i) me->SummonCreature(i < 6 ? NPC_COILFANG_AMBUSHER : NPC_COILFANG_GUARDIAN, AddPos[i][0], AddPos[i][1], AddPos[i][2], 0, TEMPSUMMON_CORPSE_DESPAWN); diff --git a/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp b/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp index 7ab94ce99e1..692c3bb5098 100644 --- a/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp +++ b/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp @@ -106,7 +106,7 @@ struct npc_tushui_huojin_trainee : public ScriptedAI } me->SetEmoteState(EMOTE_ONESHOT_NONE); - me->SetUnitFlag(UNIT_FLAG_IMMUNE_TO_PC); + me->SetImmuneToPC(true); me->CombatStop(); _scheduler.Schedule(1s, [this](TaskContext /*task*/) diff --git a/src/server/scripts/Zandalar/KingsRest/boss_golden_serpent.cpp b/src/server/scripts/Zandalar/KingsRest/boss_golden_serpent.cpp index ed7f8433e33..a3475b42735 100644 --- a/src/server/scripts/Zandalar/KingsRest/boss_golden_serpent.cpp +++ b/src/server/scripts/Zandalar/KingsRest/boss_golden_serpent.cpp @@ -95,7 +95,7 @@ struct boss_the_golden_serpent : public BossAI me->SetAnimTier(AnimTier::Fly, true); me->SetPlayHoverAnim(true); me->SetFaction(FACTION_FRIENDLY); - me->SetUnitFlag(UnitFlags(UNIT_FLAG_UNINTERACTIBLE)); + me->SetUninteractible(true); DoCast(SPELL_GOLDEN_SERPENT_EMERGE_STATE); me->GetMotionMaster()->MovePath(PATH_GOLDEN_SERPENT_SUBMERGE, false); } @@ -151,7 +151,7 @@ struct boss_the_golden_serpent : public BossAI me->SetAnimTier(AnimTier::Ground, true); me->SetPlayHoverAnim(false); me->SetFaction(FACTION_MONSTER_2); - me->RemoveUnitFlag(UnitFlags(UNIT_FLAG_UNINTERACTIBLE)); + me->SetUninteractible(false); me->SetDisableGravity(false); } } @@ -279,7 +279,7 @@ struct npc_animated_gold : public ScriptedAI me->CastSpell(nullptr, SPELL_LUSTER, true); goldenSerpent->AI()->DoAction(ACTION_ANNOUNCE_ABSORB_ANIMATED_GOLD); me->SetDisplayId(DISPLAY_INVISIBLE); - me->SetUnitFlag(UnitFlags(UNIT_FLAG_UNINTERACTIBLE)); + me->SetUninteractible(true); } } @@ -303,7 +303,7 @@ struct at_kings_rest_molten_gold : AreaTriggerAI if (!unit->IsPlayer()) return; - unit->CastSpell(nullptr, SPELL_MOLTEN_GOLD_DAMAGE , false); + unit->CastSpell(nullptr, SPELL_MOLTEN_GOLD_DAMAGE, false); } void OnUnitExit(Unit* unit) override @@ -335,12 +335,14 @@ class spell_kings_rest_molten_gold : public AuraScript { void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { - GetTarget()->SetUnitFlag(UnitFlags(UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_UNINTERACTIBLE)); + GetTarget()->SetImmuneToPC(true); + GetTarget()->SetUninteractible(true); } void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { - GetTarget()->RemoveUnitFlag(UnitFlags(UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_UNINTERACTIBLE)); + GetTarget()->SetImmuneToPC(false); + GetTarget()->SetUninteractible(false); } void Register() override |