aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortreak <goodfeelingzzz@gmail.com>2014-10-27 01:25:39 +0000
committerDDuarte <dnpd.dd@gmail.com>2014-10-27 01:27:06 +0000
commit14e4a557ed5063bcb20a3be58547ab1a3f9bb12d (patch)
tree331795c807f01bb84b1b71f8c4929efcd78217e5 /src
parentbcc4b3aedebe708324ec4a08fe2232bbb03d6729 (diff)
Scripts/Freya: Fix Lumberjacked Achieve
Closes #13435 Fixes #8166 (cherry picked from commit e0512dd4b43503d58a0334c54aed513bf24f6eff)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp24
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/ulduar.h5
2 files changed, 28 insertions, 1 deletions
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
index a1ac2c8dfbf..5e8273dce67 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
@@ -78,6 +78,7 @@ class instance_ulduar : public InstanceMapScript
illusion = 0;
keepersCount = 0;
conSpeedAtory = false;
+ lumberjacked = false;
Unbroken = true;
IsDriveMeCrazyEligible = true;
_algalonSummoned = false;
@@ -102,6 +103,7 @@ class instance_ulduar : public InstanceMapScript
ObjectGuid ThorimGUID;
ObjectGuid FreyaGUID;
ObjectGuid ElderGUIDs[3];
+ ObjectGuid FreyaAchieveTriggerGUID;
ObjectGuid MimironGUID;
ObjectGuid MimironVehicleGUIDs[3];
ObjectGuid MimironComputerGUID;
@@ -141,6 +143,7 @@ class instance_ulduar : public InstanceMapScript
uint8 illusion;
uint8 keepersCount;
bool conSpeedAtory;
+ bool lumberjacked;
bool Unbroken;
bool IsDriveMeCrazyEligible;
@@ -321,7 +324,10 @@ class instance_ulduar : public InstanceMapScript
ElderGUIDs[2] = creature->GetGUID();
if (GetBossState(BOSS_FREYA) == DONE)
creature->DespawnOrUnsummon();
- break;
+ break;
+ case NPC_FREYA_ACHIEVE_TRIGGER:
+ FreyaAchieveTriggerGUID = creature->GetGUID();
+ break;
// Mimiron
case NPC_MIMIRON:
@@ -606,6 +612,15 @@ class instance_ulduar : public InstanceMapScript
conSpeedAtory = true;
}
break;
+ case NPC_IRONBRANCH:
+ case NPC_STONEBARK:
+ case NPC_BRIGHTLEAF:
+ if (!lumberjacked)
+ {
+ DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, CRITERIA_LUMBERJACKED);
+ lumberjacked = true;
+ }
+ break;
default:
break;
}
@@ -669,6 +684,13 @@ class instance_ulduar : public InstanceMapScript
if (state == DONE)
instance->SummonCreature(NPC_FREYA_OBSERVATION_RING, ObservationRingKeepersPos[0]);
break;
+ case BOSS_IRONBRANCH:
+ case BOSS_STONEBARK:
+ case BOSS_BRIGHTLEAF:
+ if (GetBossState(BOSS_BRIGHTLEAF) == DONE && GetBossState(BOSS_IRONBRANCH) == DONE && GetBossState(BOSS_STONEBARK) == DONE && GetBossState(BOSS_FREYA) != DONE)
+ if (Creature* trigger = instance->GetCreature(FreyaAchieveTriggerGUID))
+ trigger->CastSpell(trigger, SPELL_LUMBERJACKED_CREDIT, true);
+ break;
case BOSS_KOLOGARN:
if (state == DONE)
{
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/ulduar.h b/src/server/scripts/Northrend/Ulduar/Ulduar/ulduar.h
index 9b95d7cf7b8..82c4ef140f1 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/ulduar.h
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/ulduar.h
@@ -129,6 +129,9 @@ enum UlduarNPCs
NPC_NATURES_BLADE = 33527,
NPC_GUARDIAN_OF_LIFE = 33528,
+ // Freya Achievement Trigger
+ NPC_FREYA_ACHIEVE_TRIGGER = 33406,
+
// Yogg-Saron
NPC_SARA = 33134,
NPC_GUARDIAN_OF_YOGG_SARON = 33136,
@@ -273,6 +276,7 @@ enum LeviathanActions
enum UlduarAchievementCriteriaIds
{
CRITERIA_CON_SPEED_ATORY = 21597,
+ CRITERIA_LUMBERJACKED = 21686,
CRITERIA_DISARMED = 21687,
CRITERIA_WAITS_DREAMING_STORMWIND_25 = 10321,
CRITERIA_WAITS_DREAMING_CHAMBER_25 = 10322,
@@ -362,6 +366,7 @@ enum UlduarAchievementData
DATA_UNBROKEN = 29052906, // 2905, 2906 are achievement IDs,
MAX_HERALD_ARMOR_ITEMLEVEL = 226,
MAX_HERALD_WEAPON_ITEMLEVEL = 232,
+ SPELL_LUMBERJACKED_CREDIT = 65296
};
enum UlduarEvents