aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrista <aconstantgoal@abv.bg>2013-03-07 04:53:51 +0200
committerTrista <aconstantgoal@abv.bg>2013-03-07 04:54:57 +0200
commit8993eef7231ab558a98f1403e1cf7d7a5ab158dd (patch)
tree77f8eb4ea3c3d2fc030e032263275a019bf5deeb
parent8ef1bda36b72cb9d21ecef7d9b5554c0e7666e7d (diff)
Scripts/Eye of Eternity: Fix vehicle crashes
* I tought if a spell would hit all targets on map then the force cast would be cast for each, apparently I was wrong since it had unlimited implicit targets. * Remove a condition with target mask players since there is a attribute that takes care of that. Closes #9365
-rw-r--r--sql/updates/world/2013_03_07_00_world_conditions.sql2
-rw-r--r--src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp17
2 files changed, 11 insertions, 8 deletions
diff --git a/sql/updates/world/2013_03_07_00_world_conditions.sql b/sql/updates/world/2013_03_07_00_world_conditions.sql
new file mode 100644
index 00000000000..31b9d1a1d25
--- /dev/null
+++ b/sql/updates/world/2013_03_07_00_world_conditions.sql
@@ -0,0 +1,2 @@
+-- Delete condition that is already covered by spell attribute
+DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=58846;
diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
index df829f27c0c..27331acca2b 100644
--- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
+++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
@@ -19,9 +19,13 @@
SDName: Boss Malygos
Script Data End */
-/* Add support for using Exit Portal while on drake and find why at 100 Z ground
- falling creature/player bodies aren't stopped (when players reach it should die).
- Also there is release button unavailability sometimes not sure why. */
+/* Main problems needing most attention:
+ 1) Add support for using Exit Portal while on drake which means to
+ find seat flag that allows casting on passenger or something that
+ will prevent valid target filtering.
+ 2) Find what cause client not sending release now availability
+ if player dies after far falling. For now player needs to logout to get body after
+ if release button remain unavailable after box popping.*/
#include "ScriptMgr.h"
#include "ScriptedCreature.h"
@@ -2174,9 +2178,7 @@ class spell_alexstrasza_bunny_destroy_platform_boom_visual : public SpellScriptL
void HandleDummy(SpellEffIndex /*effIndex*/)
{
if (Creature* target = GetHitCreature())
- {
target->CastSpell(target, SPELL_DESTROY_PLATFORM_EVENT);
- }
}
void Register()
@@ -2215,14 +2217,13 @@ class spell_alexstrasza_bunny_destroy_platform_event : public SpellScriptLoader
void HandleScript(SpellEffIndex /*effIndex*/)
{
- Creature* caster = GetCaster()->ToCreature();
- caster->CastSpell(caster, SPELL_SUMMON_RED_DRAGON_BUDDY_F_CAST, true);
+ GetCaster()->CastSpell((Unit*)NULL, SPELL_SUMMON_RED_DRAGON_BUDDY_F_CAST);
}
void Register()
{
OnEffectHit += SpellEffectFn(spell_alexstrasza_bunny_destroy_platform_event_SpellScript::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT);
- OnEffectHitTarget += SpellEffectFn(spell_alexstrasza_bunny_destroy_platform_event_SpellScript::HandleScript, EFFECT_2, SPELL_EFFECT_SCRIPT_EFFECT);
+ OnEffectHit += SpellEffectFn(spell_alexstrasza_bunny_destroy_platform_event_SpellScript::HandleScript, EFFECT_2, SPELL_EFFECT_SCRIPT_EFFECT);
}
};