aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp179
1 files changed, 0 insertions, 179 deletions
diff --git a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
index be0f4b47fed..14444e3bd87 100644
--- a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
@@ -255,182 +255,6 @@ public:
};
/*######
-## npc_second_trial_controller
-######*/
-
-class npc_second_trial_controller : public CreatureScript
-{
-public:
- npc_second_trial_controller() : CreatureScript("npc_second_trial_controller") { }
-
- bool OnQuestAccept(Player* /*player*/, Creature* creature, Quest const* quest)
- {
- // One Player exclusive quest, wait for user go activation
- if (quest->GetQuestId() == QUEST_SECOND_TRIAL)
- CAST_AI(npc_second_trial_controller::master_kelerun_bloodmournAI, creature->AI())->questPhase = 1;
-
- return true;
- }
-
- bool OnGossipHello(Player* player, Creature* creature)
- {
- // quest only available if not already started
- // Quest_template flag is set to : QUEST_FLAGS_EVENT
- // Escort quests or any other event-driven quests. If player in party, all players that can accept this quest will receive confirmation box to accept quest.
- // !not sure if this really works!
-
- if (CAST_AI(npc_second_trial_controller::master_kelerun_bloodmournAI, creature->AI())->questPhase == 0)
- {
- player->PrepareQuestMenu(creature->GetGUID());
- player->SendPreparedQuest(creature->GetGUID());
- }
-
- player->SEND_GOSSIP_MENU(creature->GetEntry(), creature->GetGUID());
- return true;
- }
-
- CreatureAI* GetAI(Creature* creature) const
- {
- return new master_kelerun_bloodmournAI (creature);
- }
-
- struct master_kelerun_bloodmournAI : public ScriptedAI
- {
- master_kelerun_bloodmournAI(Creature* creature) : ScriptedAI(creature) {}
-
- uint8 questPhase;
- uint8 paladinPhase;
- uint32 timer;
-
- uint64 paladinGuid[4];
-
- void Reset()
- {
- questPhase = 0;
- timer = 60000;
- paladinPhase = 0;
- for (uint8 i = 0; i < 4; ++i)
- paladinGuid[i] = 0;
- }
-
- void EnterCombat(Unit* /*who*/) {}
-
- void UpdateAI(uint32 diff)
- {
- // Quest accepted but object not activated, object despawned (if in sync 1 minute!)
- if (questPhase == 1)
- {
- if (timer <= diff)
- Reset();
- else
- timer -= diff;
- }
- // fight the 4 paladin mobs phase
- else if (questPhase == 2)
- {
- if (timer <= diff)
- {
- if (Creature* paladinSpawn = Unit::GetCreature((*me), paladinGuid[paladinPhase]))
- {
- CAST_AI(npc_second_trial_paladin::npc_secondTrialAI, paladinSpawn->AI())->Activate(me->GetGUID());
-
- switch (paladinPhase)
- {
- case 0:
- Talk(TEXT_SECOND_TRIAL_1);
- break;
- case 1:
- Talk(TEXT_SECOND_TRIAL_2);
- break;
- case 2:
- Talk(TEXT_SECOND_TRIAL_3);
- break;
- case 3:
- Talk(TEXT_SECOND_TRIAL_4);
- break;
- }
- }
- else
- Reset();
-
- questPhase = 4;
- timer = OFFSET_NEXT_ATTACK;
- }
- else
- timer -= diff;
- }
-
- if (!UpdateVictim())
- return;
-
- DoMeleeAttackIfReady();
- }
-
- void StartEvent()
- {
- if (questPhase == 1)
- { // no player check, quest can be finished as group, so no complex PlayerGUID/group search code
- for (uint8 i = 0; i < 4; ++i)
- if (Creature* summoned = DoSpawnCreature(PaladinEntry[i], SpawnPosition[i].x, SpawnPosition[i].y, SpawnPosition[i].z, SpawnPosition[i].o, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 180000))
- paladinGuid[i] = summoned->GetGUID();
-
- timer = OFFSET_NEXT_ATTACK;
- questPhase = 2;
- }
- }
-
- void SecondTrialKill()
- {
- if (questPhase > 0)
- {
- ++paladinPhase;
-
- if (paladinPhase < 4)
- questPhase = 2;
- else
- Reset(); // Quest Complete, QuestComplete handler is
- }
- }
-
- void SummonedCreatureDespawn(Creature* /*c*/) {}
- };
-};
-
-void npc_second_trial_paladin::npc_secondTrialAI::JustDied(Unit* Killer)
-{
- if (Killer->GetTypeId() == TYPEID_PLAYER)
- {
- if (Creature* summoner = Unit::GetCreature((*me), summonerGuid))
- CAST_AI(npc_second_trial_controller::master_kelerun_bloodmournAI, summoner->AI())->SecondTrialKill();
-
- // last kill quest complete for group
- if (me->GetEntry() == CHAMPION_SUNSTRIKER)
- {
- if (Killer->GetTypeId() == TYPEID_PLAYER)
- Killer->ToPlayer()->GroupEventHappens(QUEST_SECOND_TRIAL, Killer);
- }
- }
-}
-
-/*######
-## go_second_trial
-######*/
-class go_second_trial : public GameObjectScript
-{
-public:
- go_second_trial() : GameObjectScript("go_second_trial") { }
-
- bool OnGossipHello(Player* /*player*/, GameObject* go)
- {
- // find spawn :: master_kelerun_bloodmourn
- if (Creature* creature = go->FindNearestCreature(MASTER_KELERUN_BLOODMOURN, 30.0f))
- CAST_AI(npc_second_trial_controller::master_kelerun_bloodmournAI, creature->AI())->StartEvent();
-
- return true;
- }
-};
-
-/*######
## npc_apprentice_mirveda
######*/
@@ -629,9 +453,6 @@ public:
void AddSC_eversong_woods()
{
- new npc_second_trial_controller();
- new npc_second_trial_paladin();
- new go_second_trial();
new npc_apprentice_mirveda();
new npc_infused_crystal();
}