diff options
| author | Carbenium <carbenium@outlook.com> | 2020-06-21 23:36:05 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-01-07 00:22:38 +0100 |
| commit | 81a3c135a7ee688998b273034d0ba60dd7bb8158 (patch) | |
| tree | 9c5a1942f63502966081d81fd74594f84b0258d8 /src/server/scripts/Battlefield | |
| parent | 49523a74a4c28e5ae17f9a8352aa8224b765b7d8 (diff) | |
Scripts/Battlefield: Move npc_wg_give_promotion_credit script to BattlefieldWG
The script references BattlefieldWG, which is not exported in dynamic builds.
Move the script, so it is in the same library.
(cherry picked from commit c40b897d369cf45696ca626fdf48bf51226a73a8)
Diffstat (limited to 'src/server/scripts/Battlefield')
| -rw-r--r-- | src/server/scripts/Battlefield/BattlefieldWG.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/server/scripts/Battlefield/BattlefieldWG.cpp b/src/server/scripts/Battlefield/BattlefieldWG.cpp index a8f3d135ebd..0c6ec4624bb 100644 --- a/src/server/scripts/Battlefield/BattlefieldWG.cpp +++ b/src/server/scripts/Battlefield/BattlefieldWG.cpp @@ -21,6 +21,7 @@ #include "BattlefieldWG.h" #include "AchievementMgr.h" +#include "BattlefieldMgr.h" #include "Battleground.h" #include "CreatureTextMgr.h" #include "GameObject.h" @@ -31,6 +32,7 @@ #include "ObjectAccessor.h" #include "Player.h" #include "Random.h" +#include "ScriptedCreature.h" #include "ScriptMgr.h" #include "SpellAuras.h" #include "TemporarySummon.h" @@ -1864,7 +1866,36 @@ public: } }; +class npc_wg_give_promotion_credit : public CreatureScript +{ +public: + npc_wg_give_promotion_credit() : CreatureScript("npc_wg_give_promotion_credit") { } + + struct npc_wg_give_promotion_creditAI : public ScriptedAI + { + npc_wg_give_promotion_creditAI(Creature* creature) : ScriptedAI(creature) { } + + void JustDied(Unit* killer) override + { + if (!killer || killer->GetTypeId() != TYPEID_PLAYER) + return; + + BattlefieldWG* wintergrasp = static_cast<BattlefieldWG*>(sBattlefieldMgr->GetBattlefieldByBattleId(BATTLEFIELD_BATTLEID_WG)); + if (!wintergrasp) + return; + + wintergrasp->HandlePromotion(killer->ToPlayer(), me); + } + }; + + CreatureAI* GetAI(Creature* creature) const override + { + return new npc_wg_give_promotion_creditAI(creature); + } +}; + void AddSC_BF_wintergrasp() { new Battlefield_wintergrasp(); + new npc_wg_give_promotion_credit(); } |
