aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKittnz <frederik156@hotmail.com>2014-06-24 18:23:37 +0200
committerKittnz <frederik156@hotmail.com>2014-06-24 18:23:37 +0200
commit80e0c443fff2baf812d03c18970f591e4abc15f1 (patch)
treebfcf7b01ca3d45d71ad1cb3e206f90528703ffe2
parent7f0d283599a81c9272a5b29ed5d745c22e0b226e (diff)
Quest: Powering our Defenses fixed
Fix by @Discover-, @untaught, @Kittnz
-rw-r--r--sql/updates/world/2014_06_24_05_world_quest.sql2
-rw-r--r--src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp18
2 files changed, 9 insertions, 11 deletions
diff --git a/sql/updates/world/2014_06_24_05_world_quest.sql b/sql/updates/world/2014_06_24_05_world_quest.sql
new file mode 100644
index 00000000000..49431fdf460
--- /dev/null
+++ b/sql/updates/world/2014_06_24_05_world_quest.sql
@@ -0,0 +1,2 @@
+--
+UPDATE `quest_template` SET `SpecialFlags`=0 WHERE `entry`=8490;
diff --git a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
index 8c612a11621..bc4fff4da7b 100644
--- a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
@@ -190,6 +190,9 @@ enum InfusedCrystal
// Quest
QUEST_POWERING_OUR_DEFENSES = 8490,
+ // Quest Credit
+ QUEST_POD_CREDIT = 16364,
+
// Says
EMOTE = 0,
@@ -266,24 +269,17 @@ public:
summoned->AI()->AttackStart(me);
}
- void JustDied(Unit* /*killer*/) override
- {
- if (PlayerGUID && !Completed)
- if (Player* player = ObjectAccessor::GetPlayer(*me, PlayerGUID))
- player->FailQuest(QUEST_POWERING_OUR_DEFENSES);
- }
-
void UpdateAI(uint32 diff) override
{
if (EndTimer < diff && Progress)
{
- Talk(EMOTE);
Completed = true;
if (PlayerGUID)
if (Player* player = ObjectAccessor::GetPlayer(*me, PlayerGUID))
- player->CompleteQuest(QUEST_POWERING_OUR_DEFENSES);
-
- me->DealDamage(me, me->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
+ {
+ Talk(EMOTE, player);
+ player->KilledMonsterCredit(QUEST_POD_CREDIT);
+ }
me->RemoveCorpse();
} else EndTimer -= diff;