diff options
| -rw-r--r-- | sql/scripts/world_scripts_full.sql | 1 | ||||
| -rw-r--r-- | sql/updates/world/2011_07_27_00_world_achievement_criteria_data - копия.sql | 6 | ||||
| -rwxr-xr-x | src/server/scripts/World/achievement_scripts.cpp | 25 |
3 files changed, 32 insertions, 0 deletions
diff --git a/sql/scripts/world_scripts_full.sql b/sql/scripts/world_scripts_full.sql index c3d890c4665..0902944f312 100644 --- a/sql/scripts/world_scripts_full.sql +++ b/sql/scripts/world_scripts_full.sql @@ -1850,6 +1850,7 @@ INSERT INTO `achievement_criteria_data` (`criteria_id`,`type`,`value1`,`value2`, (5605,11,0,0, 'achievement_save_the_day'), (5606,11,0,0, 'achievement_save_the_day'), (6800,11,0,0, 'achievement_sickly_gazelle'), +(7703,11,0,0, 'achievement_wg_didnt_stand_a_chance'), (12993,11,0,0, 'achievement_doesnt_go_to_eleven'), (12778,11,0,0, 'achievement_ive_gone_and_made_a_mess'), (13036,11,0,0, 'achievement_ive_gone_and_made_a_mess'), diff --git a/sql/updates/world/2011_07_27_00_world_achievement_criteria_data - копия.sql b/sql/updates/world/2011_07_27_00_world_achievement_criteria_data - копия.sql new file mode 100644 index 00000000000..a573b1baf46 --- /dev/null +++ b/sql/updates/world/2011_07_27_00_world_achievement_criteria_data - копия.sql @@ -0,0 +1,6 @@ +DELETE FROM `disables` WHERE `entry` = 7703 AND `sourceType` = 4; + +DELETE FROM `achievement_criteria_data` WHERE criteria_id = 7703; +INSERT INTO `achievement_criteria_data` VALUES +(7703, 6, 4197, 0, ''), +(7703, 11, 0, 0, 'achievement_wg_didnt_stand_a_chance'); diff --git a/src/server/scripts/World/achievement_scripts.cpp b/src/server/scripts/World/achievement_scripts.cpp index b2e4ba02666..25126b3750c 100755 --- a/src/server/scripts/World/achievement_scripts.cpp +++ b/src/server/scripts/World/achievement_scripts.cpp @@ -206,6 +206,30 @@ public: } }; +class achievement_wg_didnt_stand_a_chance : public AchievementCriteriaScript +{ +public: + achievement_wg_didnt_stand_a_chance() : AchievementCriteriaScript("achievement_wg_didnt_stand_a_chance") { } + + bool OnCheck(Player* source, Unit* target) + { + if (!target) + return false; + + if (Player* victim = target->ToPlayer()) + { + if (!victim->IsMounted()) + return false; + + if (Vehicle* vehicle = source->GetVehicle()) + if (vehicle->GetVehicleInfo()->m_ID == 244) // Wintergrasp Tower Cannon + return true; + } + + return false; + } +}; + void AddSC_achievement_scripts() { new achievement_storm_glory(); @@ -217,6 +241,7 @@ void AddSC_achievement_scripts() new achievement_bg_ic_mowed_down(); new achievement_bg_sa_artillery(); new achievement_sickly_gazelle(); + new achievement_wg_didnt_stand_a_chance(); new achievement_arena_kills("achievement_arena_2v2_kills", ARENA_TYPE_2v2); new achievement_arena_kills("achievement_arena_3v3_kills", ARENA_TYPE_3v3); new achievement_arena_kills("achievement_arena_5v5_kills", ARENA_TYPE_5v5); |
