mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-07 21:01:37 +00:00
fix(DB/Quest): Improve The Summoning Chamber (#16588)
* fix(DB/quest): The Summoning Chamber * update * improvement * update * update * Update rev_1687180111436507500.sql * improvement
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
-- You need to kill Skartax
|
||||
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 17) AND (`SourceGroup` = 0) AND (`SourceEntry` = 37285) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 29) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 21207) AND (`ConditionValue2` = 30) AND (`ConditionValue3` = 1);
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
|
||||
(17, 0, 37285, 0, 0, 29, 0, 21207, 30, 1, 0, 0, 0, '', 'Disrupt the summoning of infernal souls within the summoning chamber of the Deathforge.');
|
||||
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_disrupt_summoning_ritual';
|
||||
INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
|
||||
(37285, 'spell_disrupt_summoning_ritual');
|
||||
@@ -1811,6 +1811,32 @@ class spell_calling_korkron_or_wildhammer : public SpellScript
|
||||
}
|
||||
};
|
||||
|
||||
enum InfernalOversoul
|
||||
{
|
||||
NPC_INFERNAL_OVERSOUL = 21735,
|
||||
SPELL_DISRUPT_SUMMONING_RITUAL = 37285
|
||||
};
|
||||
|
||||
class spell_disrupt_summoning_ritual : public SpellScript
|
||||
{
|
||||
public:
|
||||
PrepareSpellScript(spell_disrupt_summoning_ritual);
|
||||
|
||||
SpellCastResult CheckRequirement()
|
||||
{
|
||||
if (Unit* caster = GetCaster())
|
||||
if (Creature* infernal = caster->FindNearestCreature(NPC_INFERNAL_OVERSOUL, 100.0f))
|
||||
if (!infernal->HasAura(SPELL_DISRUPT_SUMMONING_RITUAL))
|
||||
return SPELL_FAILED_CASTER_AURASTATE;
|
||||
return SPELL_CAST_OK;
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnCheckCast += SpellCheckCastFn(spell_disrupt_summoning_ritual::CheckRequirement);
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_shadowmoon_valley()
|
||||
{
|
||||
// Ours
|
||||
@@ -1834,4 +1860,5 @@ void AddSC_shadowmoon_valley()
|
||||
new npc_shadowmoon_tuber_node();
|
||||
RegisterCreatureAI(npc_korkron_or_wildhammer);
|
||||
RegisterSpellScript(spell_calling_korkron_or_wildhammer);
|
||||
RegisterSpellScript(spell_disrupt_summoning_ritual);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user