mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-18 11:25:42 +00:00
Code cleanup and also make Shade select a random target
This commit is contained in:
@@ -1,14 +1,12 @@
|
||||
INSERT INTO version_db_world (`sql_rev`) VALUES ('1483918476110152000');
|
||||
|
||||
DELETE FROM `disables` WHERE `entry` = "532";
|
||||
DELETE FROM `creature` WHERE `guid` = "135921";
|
||||
DELETE FROM `creature` WHERE `ID` = "17644";
|
||||
|
||||
UPDATE `creature_template` SET `ScriptName` = "prince_axes" WHERE `entry` = "17650";
|
||||
|
||||
INSERT INTO `spell_linked_spell` (`spell_trigger`, `spell_effect`, `type`, `comment`) VALUES (30843, 41624, 0, 'Prince Enfeelble');
|
||||
|
||||
DELETE FROM `disables` WHERE `entry` = "532";
|
||||
|
||||
DELETE FROM `creature` WHERE `guid` = "135921";
|
||||
|
||||
INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`) VALUES
|
||||
(135921, 17645, 532, 1, 1, 11686, 0, -10935.6, -2043.06, 324.012, 2.17745, 604800, 0, 0, 42, 0, 0, 0, 0, 0);
|
||||
|
||||
@@ -23,17 +23,17 @@ enum PrinceSay
|
||||
|
||||
enum Spells
|
||||
{
|
||||
SPELL_ENFEEBLE = 30843, //Enfeeble during phase 1 and 2
|
||||
SPELL_ENFEEBLE = 30843, //Enfeeble during phase 1 and 2
|
||||
SPELL_ENFEEBLE_EFFECT = 41624,
|
||||
SPELL_SHADOWNOVA = 30852, //Shadownova used during all phases
|
||||
SPELL_SHADOWNOVA = 30852, //Shadownova used during all phases
|
||||
SPELL_SW_PAIN = 30854, //Shadow word pain during phase 1 and 3 (different targeting rules though)
|
||||
SPELL_THRASH_PASSIVE = 12787, //Extra attack chance during phase 2
|
||||
SPELL_SUNDER_ARMOR = 30901, //Sunder armor during phase 2
|
||||
SPELL_THRASH_AURA = 12787, //Passive proc chance for thrash
|
||||
SPELL_EQUIP_AXES = 30857, //Visual for axe equiping
|
||||
SPELL_AMPLIFY_DAMAGE = 39095, //Amplifiy during phase 3
|
||||
SPELL_CLEAVE = 30131, //Same as Nightbane.
|
||||
SPELL_HELLFIRE = 30859, //Infenals' hellfire aura
|
||||
SPELL_THRASH_PASSIVE = 12787, //Extra attack chance during phase 2
|
||||
SPELL_SUNDER_ARMOR = 30901, //Sunder armor during phase 2
|
||||
SPELL_THRASH_AURA = 12787, //Passive proc chance for thrash
|
||||
SPELL_EQUIP_AXES = 30857, //Visual for axe equiping
|
||||
SPELL_AMPLIFY_DAMAGE = 39095, //Amplifiy during phase 3
|
||||
SPELL_CLEAVE = 30131, //Same as Nightbane.
|
||||
SPELL_HELLFIRE = 30859, //Infenals' hellfire aura
|
||||
};
|
||||
|
||||
enum creatures
|
||||
@@ -169,7 +169,6 @@ public:
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
|
||||
InstanceScript* instance;
|
||||
uint32 EnfeebleTimer;
|
||||
uint32 EnfeebleResetTimer;
|
||||
@@ -304,7 +303,6 @@ public:
|
||||
{
|
||||
point = Trinity::Containers::SelectRandomContainerElement(positions);
|
||||
pos.Relocate(point->x, point->y, INFERNAL_Z, frand(0.0f, float(M_PI * 2)));
|
||||
|
||||
}
|
||||
|
||||
if (Creature* RELAY = me->FindNearestCreature(NPC_RELAY, 100.0f))
|
||||
@@ -519,4 +517,4 @@ void AddSC_boss_malchezaar()
|
||||
new boss_malchezaar();
|
||||
new prince_axes();
|
||||
new netherspite_infernal();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -403,13 +403,14 @@ public:
|
||||
|
||||
if (ElementalOne)
|
||||
{
|
||||
Unit* pTarget = (SELECT_TARGET_RANDOM, 0);
|
||||
if (!pTarget)
|
||||
Unit* target = NULL;
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true);
|
||||
if (!target)
|
||||
return;
|
||||
|
||||
DoStartNoMovement(pTarget);
|
||||
DoStartNoMovement(target);
|
||||
ElementalOne->SetInCombatWithZone();
|
||||
ElementalOne->CombatStart(pTarget);
|
||||
ElementalOne->CombatStart(target);
|
||||
ElementalOne->setFaction(me->getFaction());
|
||||
ElementalTwo->SetUnitMovementFlags(MOVEMENTFLAG_ROOT);
|
||||
ElementalOne->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_FROST, true);
|
||||
@@ -418,13 +419,14 @@ public:
|
||||
|
||||
if (ElementalTwo)
|
||||
{
|
||||
Unit* pTarget = (SELECT_TARGET_RANDOM, 0);
|
||||
if (!pTarget)
|
||||
Unit* target = NULL;
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true);
|
||||
if (!target)
|
||||
return;
|
||||
|
||||
DoStartNoMovement(pTarget);
|
||||
DoStartNoMovement(target);
|
||||
ElementalTwo->SetInCombatWithZone();
|
||||
ElementalTwo->CombatStart(pTarget);
|
||||
ElementalTwo->CombatStart(target);
|
||||
ElementalTwo->setFaction(me->getFaction());
|
||||
ElementalTwo->SetUnitMovementFlags(MOVEMENTFLAG_ROOT);
|
||||
ElementalTwo->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_FROST, true);
|
||||
@@ -433,13 +435,14 @@ public:
|
||||
|
||||
if (ElementalThree)
|
||||
{
|
||||
Unit* pTarget = (SELECT_TARGET_RANDOM, 0);
|
||||
if (!pTarget)
|
||||
Unit* target = NULL;
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true);
|
||||
if (!target)
|
||||
return;
|
||||
|
||||
DoStartNoMovement(pTarget);
|
||||
DoStartNoMovement(target);
|
||||
ElementalThree->SetInCombatWithZone();
|
||||
ElementalThree->CombatStart(pTarget);
|
||||
ElementalThree->CombatStart(target);
|
||||
ElementalThree->setFaction(me->getFaction());
|
||||
ElementalTwo->SetUnitMovementFlags(MOVEMENTFLAG_ROOT);
|
||||
ElementalThree->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_FROST, true);
|
||||
@@ -448,13 +451,14 @@ public:
|
||||
|
||||
if (ElementalFour)
|
||||
{
|
||||
Unit* pTarget = (SELECT_TARGET_RANDOM, 0);
|
||||
if (!pTarget)
|
||||
Unit* target = NULL;
|
||||
target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true);
|
||||
if (!target)
|
||||
return;
|
||||
|
||||
DoStartNoMovement(pTarget);
|
||||
DoStartNoMovement(target);
|
||||
ElementalFour->SetInCombatWithZone();
|
||||
ElementalFour->CombatStart(pTarget);
|
||||
ElementalFour->CombatStart(target);
|
||||
ElementalFour->setFaction(me->getFaction());
|
||||
ElementalTwo->SetUnitMovementFlags(MOVEMENTFLAG_ROOT);
|
||||
ElementalFour->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_FROST, true);
|
||||
|
||||
Reference in New Issue
Block a user