diff options
Diffstat (limited to 'src/server/scripts/World')
| -rw-r--r-- | src/server/scripts/World/achievement_scripts.cpp | 25 | ||||
| -rw-r--r-- | src/server/scripts/World/npcs_special.cpp | 11 |
2 files changed, 28 insertions, 8 deletions
diff --git a/src/server/scripts/World/achievement_scripts.cpp b/src/server/scripts/World/achievement_scripts.cpp index 41a32185620..d0ffe5214db 100644 --- a/src/server/scripts/World/achievement_scripts.cpp +++ b/src/server/scripts/World/achievement_scripts.cpp @@ -315,6 +315,30 @@ class achievement_not_even_a_scratch : public AchievementCriteriaScript } }; +enum FlirtWithDisaster +{ + AURA_PERFUME_FOREVER = 70235, + AURA_PERFUME_ENCHANTRESS = 70234, + AURA_PERFUME_VICTORY = 70233, +}; + +class achievement_flirt_with_disaster_perf_check : public AchievementCriteriaScript +{ + public: + achievement_flirt_with_disaster_perf_check() : AchievementCriteriaScript("achievement_flirt_with_disaster_perf_check") { } + + bool OnCheck(Player* player, Unit* /*target*/) + { + if (!player) + return false; + + if (player->HasAura(AURA_PERFUME_FOREVER) || player->HasAura(AURA_PERFUME_ENCHANTRESS) || player->HasAura(AURA_PERFUME_VICTORY)) + return true; + + return false; + } +}; + void AddSC_achievement_scripts() { new achievement_resilient_victory(); @@ -333,4 +357,5 @@ void AddSC_achievement_scripts() new achievement_bg_sa_defense_of_ancients(); new achievement_tilted(); new achievement_not_even_a_scratch(); + new achievement_flirt_with_disaster_perf_check(); } diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index e5f2c060109..777de92bc3b 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -1981,10 +1981,11 @@ class npc_training_dummy : public CreatureScript public: npc_training_dummy() : CreatureScript("npc_training_dummy") { } - struct npc_training_dummyAI : Scripted_NoMovementAI + struct npc_training_dummyAI : ScriptedAI { - npc_training_dummyAI(Creature* creature) : Scripted_NoMovementAI(creature) + npc_training_dummyAI(Creature* creature) : ScriptedAI(creature) { + SetCombatMovement(false); entry = creature->GetEntry(); } @@ -2015,12 +2016,6 @@ public: damage = 0; } - void EnterCombat(Unit* /*who*/) - { - if (entry != NPC_ADVANCED_TARGET_DUMMY && entry != NPC_TARGET_DUMMY) - return; - } - void UpdateAI(uint32 const diff) { if (!UpdateVictim()) |
