Scripts/BoT:

* Valiona's Twilight Meteorite will no longer target players inside the Twilight realm
* corrected run speed for Unstable Twilight
This commit is contained in:
Ovahlord
2019-02-17 22:06:44 +01:00
parent f33ebb5667
commit 40ae4b8abe
3 changed files with 15 additions and 5 deletions

View File

@@ -0,0 +1 @@
UPDATE `creature_template` SET `speed_run`= 0.42857 WHERE `entry`= 46304;

View File

@@ -1399,14 +1399,24 @@ class spell_valiona_devouring_flames_targeting : public SpellScriptLoader
}
};
class TheralionVictimCheck
class TwilightMeteoriteCheck
{
public:
TheralionVictimCheck(Unit* _theralion) : theralion(_theralion) { }
TwilightMeteoriteCheck(Unit* _theralion) : theralion(_theralion) { }
bool operator()(WorldObject* object)
{
return (theralion->GetVictim() && theralion->GetVictim() == object->ToUnit());
Unit* unit = object->ToUnit();
if (!unit)
return true;
if (theralion->GetVictim() && theralion->GetVictim() == unit)
return true;
if (unit->GetPhaseShift().HasPhase(PHASE_ID_TWILIGHT_SHIFT))
return true;
return false;
}
private:
Unit* theralion;
@@ -1430,7 +1440,7 @@ class spell_valiona_twilight_meteorite_targeting : public SpellScriptLoader
if (Unit* caster = GetCaster())
if (InstanceScript* instance = caster->GetInstanceScript())
if (Creature* theralion = instance->GetCreature(DATA_THERALION))
targets.remove_if(TheralionVictimCheck(theralion));
targets.remove_if(TwilightMeteoriteCheck(theralion));
if (targets.empty())
return;

View File

@@ -91,7 +91,6 @@ class instance_bastion_of_twilight : public InstanceMapScript
_deadOrphanedEmeraldWhelps = 0;
_lastAreatriggerIndex = 0;
_fullHeroicId = instance->IsHeroic();
_valionaAuraDummyGUID = ObjectGuid::Empty;
GenerateHalfusDragonData();
}