aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/3498_world_scripts.sql12
-rw-r--r--sql/world_spell_full.sql18
-rw-r--r--src/bindings/scripts/scripts/zone/vault_of_archavon/boss_archavon.cpp10
3 files changed, 30 insertions, 10 deletions
diff --git a/sql/updates/3498_world_scripts.sql b/sql/updates/3498_world_scripts.sql
new file mode 100644
index 00000000000..de9d9903bb0
--- /dev/null
+++ b/sql/updates/3498_world_scripts.sql
@@ -0,0 +1,12 @@
+UPDATE creature_template SET VehicleId = 312 WHERE entry IN (31857,31858,31861,31862,32212,32213,32633,32640);
+UPDATE creature_template SET VehicleId = 174 WHERE entry IN (31125,31722);
+
+DELETE FROM `spell_linked_spell` WHERE spell_trigger IN (58666,60882);
+INSERT INTO `spell_linked_spell` (`spell_trigger`, `spell_effect`, `type`, `comment`) VALUES
+( 58666, 58672, 1, 'Impale (Archavon)'),
+( 60882, 58672, 1, 'Impale (Archavon)');
+
+DELETE FROM `spell_script_target` WHERE entry IN
+(58672);
+INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`) VALUES
+(58672, 1, 31125); \ No newline at end of file
diff --git a/sql/world_spell_full.sql b/sql/world_spell_full.sql
index b2caeef7c27..e3c93d39b79 100644
--- a/sql/world_spell_full.sql
+++ b/sql/world_spell_full.sql
@@ -135,7 +135,10 @@ INSERT INTO `spell_linked_spell` (`spell_trigger`, `spell_effect`, `type`, `comm
(-28169, 28206, 0, 'Mutating Injection - Mutagen Explosion'),
( 28732,-28798, 1, 'Widow\'s Embrace - Frenzy'),
( 54097,-54100, 1, 'Widow\'s Embrace - Frenzy (H)'),
-(-28169, 28240, 0, 'Mutating Injection - Poison Cloud');
+(-28169, 28240, 0, 'Mutating Injection - Poison Cloud'),
+-- Archavon
+( 58666, 58672, 1, 'Impale (Archavon)'),
+( 60882, 58672, 1, 'Impale (Archavon)');
-- --------
@@ -534,6 +537,11 @@ INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`) VALUES
(45976, 1, 25770), -- Open Portal
(46177, 1, 25770); -- Open All Portals
+DELETE FROM `spell_script_target` WHERE entry IN
+(58672);
+INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`) VALUES
+(58672, 1, 31125); -- Impale (Archavon)
+
-- --------
-- POSITION
-- --------
@@ -1547,6 +1555,11 @@ spell2 = VALUES(spell2),
spell3 = VALUES(spell3),
spell4 = VALUES(spell4);
+-- Three-seat mammoth
+UPDATE creature_template SET VehicleId = 312 WHERE entry IN (31857,31858,31861,31862,32212,32213,32633,32640);
+
+-- frostbrood vanquisher
+update creature_template set maxhealth = 133525, minhealth = 133525, maxmana = 51360, minmana = 51360, spell1 = 53114, spell2 = 53112, spell3=53110 where entry = 28670;
-- --------
-- NAXXARAMAS
@@ -1674,10 +1687,11 @@ INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`) VALUES
(56669, 1, 27852),
(61408, 1, 27852);
-update creature_template set maxhealth = 133525, minhealth = 133525, maxmana = 51360, minmana = 51360, spell1 = 53114, spell2 = 53112, spell3=53110 where entry = 28670;
update creature_template set maxhealth = 30000, minhealth = 30000, speed = 2, spell1=50025, spell2=50989, VehicleId = 36 where entry = 27881;
update creature_template set maxhealth = 50000, minhealth = 50000, speed = 1.6, spell1=50896, spell2=50652, VehicleId = 106 where entry = 28094;
update creature_template set maxhealth = 75000, minhealth = 75000, speed = 1, spell1=51678, VehicleId = 117 where entry IN (28312,32627);
update creature_template set maxhealth = 50000, minhealth = 50000, spell1=51362, VehicleId = 116 where entry IN (28319,32629);
update creature_template set scriptname = "npc_demolisher_engineerer" where entry in (30400,30499);
+
+UPDATE creature_template SET VehicleId = 174 WHERE entry IN (31125,31722);
diff --git a/src/bindings/scripts/scripts/zone/vault_of_archavon/boss_archavon.cpp b/src/bindings/scripts/scripts/zone/vault_of_archavon/boss_archavon.cpp
index 26d120479ea..e15eb8c0738 100644
--- a/src/bindings/scripts/scripts/zone/vault_of_archavon/boss_archavon.cpp
+++ b/src/bindings/scripts/scripts/zone/vault_of_archavon/boss_archavon.cpp
@@ -104,14 +104,8 @@ struct TRINITY_DLL_DECL boss_archavonAI : public ScriptedAI
}
case EVENT_STOMP:
{
- DoCast(m_creature->getVictim(), SPELL_STOMP);
- Unit* pTarget = NULL;
- std::list<HostilReference*>::iterator i = m_creature->getThreatManager().getThreatList().begin();
- pTarget=Unit::GetUnit(*m_creature, (*i)->getUnitGuid());
- if(pTarget)
- {
- DoCast(pTarget, SPELL_IMPALE);
- }
+ DoCast(me->getVictim(), SPELL_STOMP, true);
+ DoCast(me->getVictim(), SPELL_IMPALE);
events.ScheduleEvent(EVENT_STOMP, 45000);
return;
}