Scripts/Ulduar: Fixed achievement Con-Speed-Atory in Freya's encounter

This commit is contained in:
Lopin
2011-06-27 14:05:35 +02:00
parent 921b39fb2d
commit 8fd3c912c1
3 changed files with 75 additions and 52 deletions
@@ -0,0 +1,13 @@
UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry` IN (33354,33355,33430,33431,33525,33526,33527,33528);
DELETE FROM `smart_scripts` WHERE `entryorguid` IN (33354,33355,33430,33431,33525,33526,33527,33528) AND `event_type`=6;
INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`)
VALUES
(33354,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Corrupted Servitor - on death set instance data for achievement Con-Speed-Atory'),
(33355,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Misguided Nymph - on death set instance data for achievement Con-Speed-Atory'),
(33430,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Guardian Lasher - on death set instance data for achievement Con-Speed-Atory'),
(33431,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Forest Swarmer - on death set instance data for achievement Con-Speed-Atory'),
(33525,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Mangrove Ent - on death set instance data for achievement Con-Speed-Atory'),
(33526,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Ironroot Lasher - on death set instance data for achievement Con-Speed-Atory'),
(33527,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Natures\'s Blade - on death set instance data for achievement Con-Speed-Atory'),
(33528,0,0,0,6,0,100,0,0,0,0,0,34,2,1,0,0,0,0,19,32906,0,0,0,0,0,0,'Guardian of Life - on death set instance data for achievement Con-Speed-Atory');
@@ -79,6 +79,7 @@ class instance_ulduar : public InstanceMapScript
uint32 TeamInInstance; uint32 TeamInInstance;
uint32 HodirRareCacheData; uint32 HodirRareCacheData;
uint8 elderCount; uint8 elderCount;
bool conSpeedAtory;
std::set<uint64> mRubbleSpawns; std::set<uint64> mRubbleSpawns;
@@ -86,37 +87,38 @@ class instance_ulduar : public InstanceMapScript
{ {
SetBossNumber(MAX_ENCOUNTER); SetBossNumber(MAX_ENCOUNTER);
LoadDoorData(doorData); LoadDoorData(doorData);
IgnisGUID = 0; IgnisGUID = 0;
RazorscaleGUID = 0; RazorscaleGUID = 0;
RazorscaleController = 0; RazorscaleController = 0;
ExpeditionCommanderGUID = 0; ExpeditionCommanderGUID = 0;
XT002GUID = 0; XT002GUID = 0;
KologarnGUID = 0; KologarnGUID = 0;
LeftArmGUID = 0; LeftArmGUID = 0;
RightArmGUID = 0; RightArmGUID = 0;
AuriayaGUID = 0; AuriayaGUID = 0;
MimironGUID = 0; MimironGUID = 0;
HodirGUID = 0; HodirGUID = 0;
ThorimGUID = 0; ThorimGUID = 0;
FreyaGUID = 0; FreyaGUID = 0;
VezaxGUID = 0; VezaxGUID = 0;
YoggSaronGUID = 0; YoggSaronGUID = 0;
AlgalonGUID = 0; AlgalonGUID = 0;
KologarnChestGUID = 0; KologarnChestGUID = 0;
KologarnBridgeGUID = 0; KologarnBridgeGUID = 0;
KologarnChestGUID = 0; KologarnChestGUID = 0;
ThorimChestGUID = 0; ThorimChestGUID = 0;
HodirRareCacheGUID = 0; HodirRareCacheGUID = 0;
HodirChestGUID = 0; HodirChestGUID = 0;
FreyaChestGUID = 0; FreyaChestGUID = 0;
LeviathanGateGUID = 0; LeviathanGateGUID = 0;
VezaxDoorGUID = 0; VezaxDoorGUID = 0;
HodirDoorGUID = 0; HodirDoorGUID = 0;
HodirIceDoorGUID = 0; HodirIceDoorGUID = 0;
ArchivumDoorGUID = 0; ArchivumDoorGUID = 0;
TeamInInstance = 0; TeamInInstance = 0;
HodirRareCacheData = 0; HodirRareCacheData = 0;
elderCount = 0; elderCount = 0;
conSpeedAtory = false;
memset(Encounter, 0, sizeof(Encounter)); memset(Encounter, 0, sizeof(Encounter));
memset(XTToyPileGUIDs, 0, sizeof(XTToyPileGUIDs)); memset(XTToyPileGUIDs, 0, sizeof(XTToyPileGUIDs));
@@ -484,6 +486,12 @@ class instance_ulduar : public InstanceMapScript
case DATA_KNOCK_ON_WOOD_ACHIEVEMENTS: case DATA_KNOCK_ON_WOOD_ACHIEVEMENTS:
elderCount = data; elderCount = data;
break; break;
case DATA_CON_SPEED_ATORY_ACHIEVEMENT:
if (!conSpeedAtory)
{
DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, CRITERIA_CON_SPEED_ATORY);
conSpeedAtory = true;
}
default: default:
break; break;
} }
@@ -160,37 +160,39 @@ enum UlduarTowerEvents
enum UlduarAchievementCriteriaIds enum UlduarAchievementCriteriaIds
{ {
// Flame Leviathan // Flame Leviathan
CRITERIA_UNBROKEN_10 = 10044, CRITERIA_UNBROKEN_10 = 10044,
CRITERIA_UNBROKEN_25 = 10045, CRITERIA_UNBROKEN_25 = 10045,
CRITERIA_SHUTOUT_10 = 10054, CRITERIA_SHUTOUT_10 = 10054,
CRITERIA_SHUTOUT_25 = 10055, CRITERIA_SHUTOUT_25 = 10055,
CRITERIA_3_CAR_GARAGE_CHOPPER_10 = 10046, CRITERIA_3_CAR_GARAGE_CHOPPER_10 = 10046,
CRITERIA_3_CAR_GARAGE_SIEGE_10 = 10047, CRITERIA_3_CAR_GARAGE_SIEGE_10 = 10047,
CRITERIA_3_CAR_GARAGE_DEMOLISHER_10 = 10048, CRITERIA_3_CAR_GARAGE_DEMOLISHER_10 = 10048,
CRITERIA_3_CAR_GARAGE_CHOPPER_25 = 10049, CRITERIA_3_CAR_GARAGE_CHOPPER_25 = 10049,
CRITERIA_3_CAR_GARAGE_SIEGE_25 = 10050, CRITERIA_3_CAR_GARAGE_SIEGE_25 = 10050,
CRITERIA_3_CAR_GARAGE_DEMOLISHER_25 = 10051, CRITERIA_3_CAR_GARAGE_DEMOLISHER_25 = 10051,
// Ignis // Ignis
CRITERIA_HOT_POCKET_10 = 10430, CRITERIA_HOT_POCKET_10 = 10430,
CRITERIA_HOT_POCKET_25 = 10431, CRITERIA_HOT_POCKET_25 = 10431,
// Razorscale // Razorscale
CRITERIA_QUICK_SHAVE_10 = 10062, CRITERIA_QUICK_SHAVE_10 = 10062,
CRITERIA_QUICK_SHAVE_25 = 10063, CRITERIA_QUICK_SHAVE_25 = 10063,
// Freya // Freya
CRITERIA_KNOCK_ON_WOOD_10 = 10447, CRITERIA_KNOCK_ON_WOOD_10 = 10447,
CRITERIA_KNOCK_ON_WOOD_25 = 10459, CRITERIA_KNOCK_ON_WOOD_25 = 10459,
CRITERIA_KNOCK_KNOCK_ON_WOOD_10 = 10448, CRITERIA_KNOCK_KNOCK_ON_WOOD_10 = 10448,
CRITERIA_KNOCK_KNOCK_ON_WOOD_25 = 10460, CRITERIA_KNOCK_KNOCK_ON_WOOD_25 = 10460,
CRITERIA_KNOCK_KNOCK_KNOCK_ON_WOOD_10 = 10449, CRITERIA_KNOCK_KNOCK_KNOCK_ON_WOOD_10 = 10449,
CRITERIA_KNOCK_KNOCK_KNOCK_ON_WOOD_25 = 10461, CRITERIA_KNOCK_KNOCK_KNOCK_ON_WOOD_25 = 10461,
CRITERIA_CON_SPEED_ATORY = 21597, // Timed achievement
}; };
enum UlduarAchievementData enum UlduarAchievementData
{ {
DATA_KNOCK_ON_WOOD_ACHIEVEMENTS = 1, DATA_KNOCK_ON_WOOD_ACHIEVEMENTS = 1,
DATA_CON_SPEED_ATORY_ACHIEVEMENT = 2,
}; };
template<class AI> template<class AI>