From 368eaf7f2f0b4633f88054dacb1db1a89af101c7 Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 18 Mar 2011 19:38:35 +0100 Subject: Scripts/Icecrown Citadel: Corrected wing sigil visuals Fixed saving Blood Quickening quest state to db Remove Blood Quickening timer on completion DB/Instances: Added some missing spawns to Frostwing Halls --- .../IcecrownCitadel/boss_blood_queen_lana_thel.cpp | 4 +++- .../Northrend/IcecrownCitadel/icecrown_citadel.h | 6 +++--- .../IcecrownCitadel/instance_icecrown_citadel.cpp | 17 ++++++++++------- 3 files changed, 16 insertions(+), 11 deletions(-) (limited to 'src/server/scripts') diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp index 473b7c96c0d..c660d9b1727 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp @@ -193,15 +193,17 @@ class boss_blood_queen_lana_thel : public CreatureScript // Blah, credit the quest if (creditBloodQuickening) { + instance->SetData(DATA_BLOOD_QUICKENING_STATE, DONE); if (Player* plr = killer->ToPlayer()) plr->RewardPlayerAndGroupAtEvent(NPC_INFILTRATOR_MINCHAR_BQ, plr); if (Creature* minchar = me->FindNearestCreature(NPC_INFILTRATOR_MINCHAR_BQ, 200.0f)) { minchar->SetUInt32Value(UNIT_NPC_EMOTESTATE, 0); + minchar->RemoveByteFlag(UNIT_FIELD_BYTES_1, 3, 0x01); minchar->SetFlying(false); minchar->SendMovementFlagUpdate(); minchar->RemoveAllAuras(); - minchar->GetMotionMaster()->MoveCharge(4629.3711f, 2782.6089f, 401.5301f, SPEED_CHARGE/2.0f); + minchar->GetMotionMaster()->MoveCharge(4629.3711f, 2782.6089f, 401.5301f, SPEED_CHARGE/3.0f); } } } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.h b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.h index 95bc17dd9d0..5496f6ba7a4 100755 --- a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.h +++ b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.h @@ -15,8 +15,8 @@ * with this program. If not, see . */ -#ifndef DEF_ICECROWN_CITADEL_H -#define DEF_ICECROWN_CITADEL_H +#ifndef ICECROWN_CITADEL_H_ +#define ICECROWN_CITADEL_H_ #define ICCScriptName "instance_icecrown_citadel" uint32 const EncounterCount = 12; @@ -326,4 +326,4 @@ enum WorldStatesICC WORLDSTATE_ATTEMPTS_MAX = 4942, }; -#endif // DEF_ICECROWN_CITADEL_H +#endif // ICECROWN_CITADEL_H_ diff --git a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp index 54741b1fb2a..16634b5ab98 100755 --- a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp @@ -320,18 +320,18 @@ class instance_icecrown_citadel : public InstanceMapScript break; case GO_PLAGUE_SIGIL: plagueSigil = go->GetGUID(); - if (GetBossState(DATA_PROFESSOR_PUTRICIDE)) - HandleGameObject(plagueSigil, true, go); + if (GetBossState(DATA_PROFESSOR_PUTRICIDE) == DONE) + HandleGameObject(plagueSigil, false, go); break; case GO_BLOODWING_SIGIL: bloodwingSigil = go->GetGUID(); - if (GetBossState(DATA_PROFESSOR_PUTRICIDE)) - HandleGameObject(bloodwingSigil, true, go); + if (GetBossState(DATA_BLOOD_QUEEN_LANA_THEL) == DONE) + HandleGameObject(bloodwingSigil, false, go); break; case GO_SIGIL_OF_THE_FROSTWING: frostwingSigil = go->GetGUID(); - if (GetBossState(DATA_PROFESSOR_PUTRICIDE)) - HandleGameObject(frostwingSigil, true, go); + if (GetBossState(DATA_SINDRAGOSA) == DONE) + HandleGameObject(frostwingSigil, false, go); break; case GO_SCIENTIST_AIRLOCK_DOOR_COLLISION: putricideCollision = go->GetGUID(); @@ -414,6 +414,8 @@ class instance_icecrown_citadel : public InstanceMapScript return coldflameJetsState; case DATA_TEAM_IN_INSTANCE: return teamInInstance; + case DATA_BLOOD_QUICKENING_STATE: + return bloodQuickeningState; case DATA_HEROIC_ATTEMPTS: return heroicAttempts; default: @@ -667,6 +669,7 @@ class instance_icecrown_citadel : public InstanceMapScript break; } bloodQuickeningState = data; + SaveToDB(); break; } default: @@ -901,7 +904,7 @@ class instance_icecrown_citadel : public InstanceMapScript void Update(uint32 diff) { - if (bloodQuickeningMinutes) + if (bloodQuickeningState == IN_PROGRESS) { if (bloodQuickeningTimer <= diff) { -- cgit v1.2.3