Skip to content

Commit 8d038db

Browse files
authored
DB/Quest: Rewrite 'Strengthen the Ancients' (TrinityCore#31131)
1 parent e899b2a commit 8d038db

File tree

2 files changed

+29
-77
lines changed

2 files changed

+29
-77
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
--
2+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 26321 AND `source_type` = 0;
3+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 2632100 AND `source_type` = 9;
4+
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`,`event_param5`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_param4`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES
5+
(26321,0,0,0,8,0,100,0,47530,0,0,0,0,80,2632100,0,0,0,0,0,1,0,0,0,0,0,0,0,0,"Lothalor Ancient - On Spellhit 'Bark of the Walkers' - Run Script"),
6+
7+
(2632100,9,0,0,0,0,100,0,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Lothalor Ancient - On Script - Say Line 0"),
8+
(2632100,9,1,0,0,0,100,0,0,0,0,0,0,66,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Lothalor Ancient - On Script - Set Orientation Invoker"),
9+
(2632100,9,2,0,0,0,100,0,0,0,0,0,0,33,26321,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Lothalor Ancient - On Script - Quest Credit 'Strengthen the Ancients'"),
10+
(2632100,9,3,0,0,0,100,0,5000,5000,0,0,0,41,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,"Lothalor Ancient - On Script - Despawn");
11+
12+
UPDATE `creature_template` SET `npcflag` = 16777216 WHERE `entry` = 26421;
13+
14+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 26421 AND `source_type` = 0;
15+
DELETE FROM `smart_scripts` WHERE `entryorguid` IN (2642100,2642101) AND `source_type` = 9;
16+
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`,`event_param5`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_param4`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES
17+
(26421,0,0,0,0,0,100,0,3000,6000,8000,12000,0,11,50994,32,0,0,0,0,1,0,0,0,0,0,0,0,0,"Woodlands Walker - In Combat - Cast 'Toughen Hide'"),
18+
(26421,0,1,0,8,0,100,0,47575,0,0,0,0,88,2642100,2642101,0,0,0,0,1,0,0,0,0,0,0,0,0,"Woodlands Walker - On Spellhit 'Strengthen the Ancients: On Interact Dummy to Woodlands Walker' - Run Random Script"),
19+
20+
(2642100,9,0,0,0,0,100,0,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Say Line 0"),
21+
(2642100,9,1,0,0,0,100,0,0,0,0,0,0,2,14,0,0,0,0,0,1,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Set Faction 14"),
22+
(2642100,9,2,0,0,0,100,0,0,0,0,0,0,49,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Start Attack"),
23+
24+
(2642101,9,0,0,0,0,100,0,0,0,0,0,0,1,1,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Say Line 1"),
25+
(2642101,9,1,0,0,0,100,0,0,0,0,0,0,66,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Set Orientation Invoker"),
26+
(2642101,9,2,0,0,0,100,0,0,0,0,0,0,11,47550,0,0,0,0,0,7,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Cast 'Create Bark of the Walkers'"),
27+
(2642101,9,3,0,0,0,100,0,7000,7000,0,0,0,41,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,"Woodlands Walker - On Script - Despawn");
28+
29+
DELETE FROM `spell_script_names` WHERE `ScriptName` IN ('spell_q12096_q12092_dummy','spell_q12096_q12092_bark');

src/server/scripts/Northrend/zone_dragonblight.cpp

Lines changed: 0 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -350,81 +350,6 @@ struct npc_commander_eligor_dawnbringer : public ScriptedAI
350350
uint8 talkWing;
351351
};
352352

353-
/*######
354-
## Quest Strengthen the Ancients (12096|12092)
355-
######*/
356-
357-
enum StrengthenAncientsMisc
358-
{
359-
SAY_WALKER_FRIENDLY = 0,
360-
SAY_WALKER_ENEMY = 1,
361-
SAY_LOTHALOR = 0,
362-
363-
SPELL_CREATE_ITEM_BARK = 47550,
364-
SPELL_CONFUSED = 47044,
365-
366-
NPC_LOTHALOR = 26321
367-
};
368-
369-
// 47575 - Strengthen the Ancients: On Interact Dummy to Woodlands Walker
370-
class spell_q12096_q12092_dummy : public SpellScript
371-
{
372-
PrepareSpellScript(spell_q12096_q12092_dummy);
373-
374-
void HandleDummy(SpellEffIndex /*effIndex*/)
375-
{
376-
uint32 roll = rand32() % 2;
377-
378-
Creature* tree = GetHitCreature();
379-
Player* player = GetCaster()->ToPlayer();
380-
381-
if (!tree || !player)
382-
return;
383-
384-
tree->RemoveNpcFlag(UNIT_NPC_FLAG_SPELLCLICK);
385-
386-
if (roll == 1) // friendly version
387-
{
388-
tree->CastSpell(player, SPELL_CREATE_ITEM_BARK);
389-
tree->AI()->Talk(SAY_WALKER_FRIENDLY, player);
390-
tree->DespawnOrUnsummon(1s);
391-
}
392-
else // enemy version
393-
{
394-
tree->AI()->Talk(SAY_WALKER_ENEMY, player);
395-
tree->SetFaction(FACTION_MONSTER);
396-
tree->Attack(player, true);
397-
}
398-
}
399-
400-
void Register() override
401-
{
402-
OnEffectHitTarget += SpellEffectFn(spell_q12096_q12092_dummy::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
403-
}
404-
};
405-
406-
// 47530 - Bark of the Walkers
407-
class spell_q12096_q12092_bark : public SpellScript
408-
{
409-
PrepareSpellScript(spell_q12096_q12092_bark);
410-
411-
void HandleDummy(SpellEffIndex /*effIndex*/)
412-
{
413-
Creature* lothalor = GetHitCreature();
414-
if (!lothalor || lothalor->GetEntry() != NPC_LOTHALOR)
415-
return;
416-
417-
lothalor->AI()->Talk(SAY_LOTHALOR);
418-
lothalor->RemoveAura(SPELL_CONFUSED);
419-
lothalor->DespawnOrUnsummon(4s);
420-
}
421-
422-
void Register() override
423-
{
424-
OnEffectHitTarget += SpellEffectFn(spell_q12096_q12092_bark::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
425-
}
426-
};
427-
428353
/*######
429354
## Quest: Defending Wyrmrest Temple ID: 12372
430355
######*/
@@ -1113,8 +1038,6 @@ class spell_dragonblight_end_of_the_line_quest_completion_script : public SpellS
11131038
void AddSC_dragonblight()
11141039
{
11151040
RegisterCreatureAI(npc_commander_eligor_dawnbringer);
1116-
RegisterSpellScript(spell_q12096_q12092_dummy);
1117-
RegisterSpellScript(spell_q12096_q12092_bark);
11181041
RegisterCreatureAI(npc_wyrmrest_defender);
11191042
RegisterSpellScript(spell_dragonblight_defending_wyrmrest_temple_cast_from_gossip);
11201043
RegisterSpellScript(spell_dragonblight_defending_wyrmrest_temple_dummy);

0 commit comments

Comments
 (0)