Merge remote-tracking branch 'origin/master' into SmartSpell
This commit is contained in:
@@ -1,275 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2012-2017 CypherCore <http://github.com/CypherCore>
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
using Framework.Constants;
|
|
||||||
using Framework.GameMath;
|
|
||||||
using Game;
|
|
||||||
using Game.AI;
|
|
||||||
using Game.Entities;
|
|
||||||
using Game.Scripting;
|
|
||||||
|
|
||||||
namespace Scripts.EasternKingdoms
|
|
||||||
{
|
|
||||||
[Script]
|
|
||||||
class npc_apprentice_mirveda : ScriptedAI
|
|
||||||
{
|
|
||||||
public npc_apprentice_mirveda(Creature creature)
|
|
||||||
: base(creature)
|
|
||||||
{
|
|
||||||
Summons = new SummonList(me);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Reset()
|
|
||||||
{
|
|
||||||
SetCombatMovement(false);
|
|
||||||
KillCount = 0;
|
|
||||||
PlayerGUID.Clear();
|
|
||||||
Summons.DespawnAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void sQuestReward(Player player, Quest quest, uint opt)
|
|
||||||
{
|
|
||||||
if (quest.Id == QUEST_CORRUPTED_SOIL)
|
|
||||||
{
|
|
||||||
me.RemoveFlag64(UnitFields.NpcFlags, NPCFlags.QuestGiver);
|
|
||||||
_events.ScheduleEvent(EventTalk, 2000);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void sQuestAccept(Player player, Quest quest)
|
|
||||||
{
|
|
||||||
if (quest.Id == QUEST_UNEXPECTED_RESULT)
|
|
||||||
{
|
|
||||||
me.SetFaction(FactionCombat);
|
|
||||||
me.RemoveFlag64(UnitFields.NpcFlags, NPCFlags.QuestGiver);
|
|
||||||
_events.ScheduleEvent(EventSummon, 1000);
|
|
||||||
PlayerGUID = player.GetGUID();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void EnterCombat(Unit who)
|
|
||||||
{
|
|
||||||
_events.ScheduleEvent(EventFireball, 1000);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void JustSummoned(Creature summoned)
|
|
||||||
{
|
|
||||||
// This is the best I can do because AttackStart does nothing
|
|
||||||
summoned.GetMotionMaster().MovePoint(1, me.GetPositionX(), me.GetPositionY(), me.GetPositionZ());
|
|
||||||
// summoned.AI().AttackStart(me);
|
|
||||||
Summons.Summon(summoned);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void SummonedCreatureDies(Creature summoned, Unit who)
|
|
||||||
{
|
|
||||||
Summons.Despawn(summoned);
|
|
||||||
++KillCount;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void JustDied(Unit killer)
|
|
||||||
{
|
|
||||||
me.SetFaction(FactionNormal);
|
|
||||||
|
|
||||||
if (!PlayerGUID.IsEmpty())
|
|
||||||
{
|
|
||||||
Player player = Global.ObjAccessor.GetPlayer(me, PlayerGUID);
|
|
||||||
if (player)
|
|
||||||
player.FailQuest(QUEST_UNEXPECTED_RESULT);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void UpdateAI(uint diff)
|
|
||||||
{
|
|
||||||
if (KillCount >= 3 && !PlayerGUID.IsEmpty())
|
|
||||||
{
|
|
||||||
Player player = Global.ObjAccessor.GetPlayer(me, PlayerGUID);
|
|
||||||
if (player)
|
|
||||||
{
|
|
||||||
if (player.GetQuestStatus(QUEST_UNEXPECTED_RESULT) == QuestStatus.Incomplete)
|
|
||||||
{
|
|
||||||
player.CompleteQuest(QUEST_UNEXPECTED_RESULT);
|
|
||||||
me.SetFaction(FactionNormal);
|
|
||||||
me.SetFlag64(UnitFields.NpcFlags, NPCFlags.QuestGiver);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_events.Update(diff);
|
|
||||||
_events.ExecuteEvents(eventId =>
|
|
||||||
{
|
|
||||||
switch (eventId)
|
|
||||||
{
|
|
||||||
case EventTalk:
|
|
||||||
Talk(SayTestSoil);
|
|
||||||
_events.ScheduleEvent(EventAddQuestGiverFlag, 7000);
|
|
||||||
break;
|
|
||||||
case EventAddQuestGiverFlag:
|
|
||||||
me.SetFlag64(UnitFields.NpcFlags, NPCFlags.QuestGiver);
|
|
||||||
break;
|
|
||||||
case EventSummon:
|
|
||||||
me.SummonCreature(NPC_GHARZUL, 8749.505f, -7132.595f, 35.31983f, 3.816502f, TempSummonType.CorpseTimedDespawn, 180000);
|
|
||||||
me.SummonCreature(NPC_ANGERSHADE, 8755.38f, -7131.521f, 35.30957f, 3.816502f, TempSummonType.CorpseTimedDespawn, 180000);
|
|
||||||
me.SummonCreature(NPC_ANGERSHADE, 8753.199f, -7125.975f, 35.31986f, 3.816502f, TempSummonType.CorpseTimedDespawn, 180000);
|
|
||||||
break;
|
|
||||||
case EventFireball:
|
|
||||||
if (UpdateVictim())
|
|
||||||
{
|
|
||||||
DoCastVictim(SpellFireball, true); // Not casting in combat
|
|
||||||
_events.ScheduleEvent(EventFireball, 3000);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
DoMeleeAttackIfReady();
|
|
||||||
}
|
|
||||||
|
|
||||||
uint KillCount;
|
|
||||||
ObjectGuid PlayerGUID;
|
|
||||||
SummonList Summons;
|
|
||||||
|
|
||||||
const uint EventTalk = 1; // Quest 8487
|
|
||||||
const uint EventAddQuestGiverFlag = 2; // Quest 8487
|
|
||||||
const uint EventSummon = 3; // Quest 8488
|
|
||||||
const uint EventFireball = 4; // Quest 8488
|
|
||||||
|
|
||||||
// Creatures
|
|
||||||
const uint NPC_GHARZUL = 15958; // Quest 8488
|
|
||||||
const uint NPC_ANGERSHADE = 15656; // Quest 8488
|
|
||||||
|
|
||||||
// Spells
|
|
||||||
const uint SpellTestSoil = 29535; // Quest 8487
|
|
||||||
const uint SpellFireball = 20811; // Quest 8488
|
|
||||||
|
|
||||||
//Texts
|
|
||||||
const uint SayTestSoil = 0; // Quest 8487
|
|
||||||
|
|
||||||
// Factions
|
|
||||||
const uint FactionNormal = 1604; // Quest 8488
|
|
||||||
const uint FactionCombat = 232; // Quest 8488
|
|
||||||
|
|
||||||
// Quest
|
|
||||||
const uint QUEST_CORRUPTED_SOIL = 8487;
|
|
||||||
const uint QUEST_UNEXPECTED_RESULT = 8488;
|
|
||||||
}
|
|
||||||
|
|
||||||
[Script]
|
|
||||||
class npc_infused_crystal : ScriptedAI
|
|
||||||
{
|
|
||||||
public npc_infused_crystal(Creature creature) : base(creature)
|
|
||||||
{
|
|
||||||
SetCombatMovement(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Reset()
|
|
||||||
{
|
|
||||||
EndTimer = 0;
|
|
||||||
Completed = false;
|
|
||||||
Progress = false;
|
|
||||||
PlayerGUID.Clear();
|
|
||||||
WaveTimer = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void MoveInLineOfSight(Unit who)
|
|
||||||
{
|
|
||||||
if (!Progress && who.IsTypeId(TypeId.Player) && me.IsWithinDistInMap(who, 10.0f))
|
|
||||||
{
|
|
||||||
if (who.ToPlayer().GetQuestStatus(QuestPoweringOurDefenses) == QuestStatus.Incomplete)
|
|
||||||
{
|
|
||||||
PlayerGUID = who.GetGUID();
|
|
||||||
WaveTimer = 1000;
|
|
||||||
EndTimer = 60000;
|
|
||||||
Progress = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void JustSummoned(Creature summoned)
|
|
||||||
{
|
|
||||||
summoned.GetAI().AttackStart(me);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void JustDied(Unit killer)
|
|
||||||
{
|
|
||||||
if (!PlayerGUID.IsEmpty() && !Completed)
|
|
||||||
{
|
|
||||||
Player player = Global.ObjAccessor.GetPlayer(me, PlayerGUID);
|
|
||||||
if (player)
|
|
||||||
player.FailQuest(QuestPoweringOurDefenses);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void UpdateAI(uint diff)
|
|
||||||
{
|
|
||||||
if (EndTimer < diff && Progress)
|
|
||||||
{
|
|
||||||
Talk(Emote);
|
|
||||||
Completed = true;
|
|
||||||
if (!PlayerGUID.IsEmpty())
|
|
||||||
{
|
|
||||||
Player player = Global.ObjAccessor.GetPlayer(me, PlayerGUID);
|
|
||||||
if (player)
|
|
||||||
player.CompleteQuest(QuestPoweringOurDefenses);
|
|
||||||
}
|
|
||||||
|
|
||||||
me.DealDamage(me, (uint)me.GetHealth(), null, DamageEffectType.Direct, SpellSchoolMask.Normal, null, false);
|
|
||||||
me.RemoveCorpse();
|
|
||||||
}
|
|
||||||
else EndTimer -= diff;
|
|
||||||
|
|
||||||
if (WaveTimer < diff && !Completed && Progress)
|
|
||||||
{
|
|
||||||
uint ran1 = RandomHelper.Rand32() % 8;
|
|
||||||
uint ran2 = RandomHelper.Rand32() % 8;
|
|
||||||
uint ran3 = RandomHelper.Rand32() % 8;
|
|
||||||
me.SummonCreature(NpcEnragedWeaith, SpawnLocations[ran1].X, SpawnLocations[ran1].Y, SpawnLocations[ran1].Z, 0, TempSummonType.TimedOrCorpseDespawn, 10000);
|
|
||||||
me.SummonCreature(NpcEnragedWeaith, SpawnLocations[ran2].X, SpawnLocations[ran2].Y, SpawnLocations[ran2].Z, 0, TempSummonType.TimedOrCorpseDespawn, 10000);
|
|
||||||
me.SummonCreature(NpcEnragedWeaith, SpawnLocations[ran3].X, SpawnLocations[ran3].Y, SpawnLocations[ran3].Z, 0, TempSummonType.TimedOrCorpseDespawn, 10000);
|
|
||||||
WaveTimer = 30000;
|
|
||||||
}
|
|
||||||
else WaveTimer -= diff;
|
|
||||||
}
|
|
||||||
|
|
||||||
uint EndTimer;
|
|
||||||
uint WaveTimer;
|
|
||||||
bool Completed;
|
|
||||||
bool Progress;
|
|
||||||
ObjectGuid PlayerGUID;
|
|
||||||
|
|
||||||
// Quest
|
|
||||||
const uint QuestPoweringOurDefenses = 8490;
|
|
||||||
|
|
||||||
// Says
|
|
||||||
const uint Emote = 0;
|
|
||||||
|
|
||||||
// Creatures
|
|
||||||
const uint NpcEnragedWeaith = 17086;
|
|
||||||
|
|
||||||
static Vector3[] SpawnLocations =
|
|
||||||
{
|
|
||||||
new Vector3(8270.68f, -7188.53f, 139.619f),
|
|
||||||
new Vector3(8284.27f, -7187.78f, 139.603f),
|
|
||||||
new Vector3(8297.43f, -7193.53f, 139.603f),
|
|
||||||
new Vector3(8303.5f, -7201.96f, 139.577f),
|
|
||||||
new Vector3(8273.22f, -7241.82f, 139.382f),
|
|
||||||
new Vector3(8254.89f, -7222.12f, 139.603f),
|
|
||||||
new Vector3(8278.51f, -7242.13f, 139.162f),
|
|
||||||
new Vector3(8267.97f, -7239.17f, 139.517f)
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -31,9 +31,8 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
public const uint LightningBolt = 56891; // 40y
|
public const uint LightningBolt = 56891; // 40y
|
||||||
public const uint Thundershock = 56926; // 30y
|
public const uint Thundershock = 56926; // 30y
|
||||||
|
|
||||||
public const uint RandomLightningVisual = 56327;
|
public const uint BeamVisualJedogasAufseher1 = 60342;
|
||||||
public const uint SacrificeBeam = 56150;
|
public const uint BeamVisualJedogasAufseher2 = 56312;
|
||||||
public const uint SacrificeVisual = 56133;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct TextIds
|
struct TextIds
|
||||||
@@ -62,6 +61,7 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
{
|
{
|
||||||
public boss_jedoga_shadowseeker(Creature creature) : base(creature)
|
public boss_jedoga_shadowseeker(Creature creature) : base(creature)
|
||||||
{
|
{
|
||||||
|
Initialize();
|
||||||
instance = creature.GetInstanceScript();
|
instance = creature.GetInstanceScript();
|
||||||
bFirstTime = true;
|
bFirstTime = true;
|
||||||
bPreDone = false;
|
bPreDone = false;
|
||||||
@@ -86,8 +86,6 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
{
|
{
|
||||||
Initialize();
|
Initialize();
|
||||||
|
|
||||||
DoCast(SpellIds.RandomLightningVisual);
|
|
||||||
|
|
||||||
if (!bFirstTime)
|
if (!bFirstTime)
|
||||||
instance.SetBossState(DataTypes.JedogaShadowseeker, EncounterState.Fail);
|
instance.SetBossState(DataTypes.JedogaShadowseeker, EncounterState.Fail);
|
||||||
|
|
||||||
@@ -329,9 +327,9 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Script]
|
[Script]
|
||||||
class npc_jedoga_twilight_volunteer : ScriptedAI
|
class npc_jedoga_initiand : ScriptedAI
|
||||||
{
|
{
|
||||||
public npc_jedoga_twilight_volunteer(Creature creature) : base(creature)
|
public npc_jedoga_initiand(Creature creature) : base(creature)
|
||||||
{
|
{
|
||||||
Initialize();
|
Initialize();
|
||||||
instance = creature.GetInstanceScript();
|
instance = creature.GetInstanceScript();
|
||||||
@@ -485,10 +483,11 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
bool bWalking;
|
bool bWalking;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[Script]
|
[Script]
|
||||||
class npc_jedoga_controller : ScriptedAI
|
class npc_jedogas_aufseher_trigger : ScriptedAI
|
||||||
{
|
{
|
||||||
public npc_jedoga_controller(Creature creature) : base(creature)
|
public npc_jedogas_aufseher_trigger(Creature creature) : base(creature)
|
||||||
{
|
{
|
||||||
instance = creature.GetInstanceScript();
|
instance = creature.GetInstanceScript();
|
||||||
bRemoved = false;
|
bRemoved = false;
|
||||||
@@ -500,13 +499,11 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
}
|
}
|
||||||
|
|
||||||
public override void Reset() { }
|
public override void Reset() { }
|
||||||
|
|
||||||
public override void EnterCombat(Unit who) { }
|
public override void EnterCombat(Unit who) { }
|
||||||
|
|
||||||
public override void AttackStart(Unit victim) { }
|
public override void AttackStart(Unit victim) { }
|
||||||
|
|
||||||
public override void MoveInLineOfSight(Unit who) { }
|
public override void MoveInLineOfSight(Unit who) { }
|
||||||
|
|
||||||
|
|
||||||
public override void UpdateAI(uint diff)
|
public override void UpdateAI(uint diff)
|
||||||
{
|
{
|
||||||
if (!bRemoved && me.GetPositionX() > 440.0f)
|
if (!bRemoved && me.GetPositionX() > 440.0f)
|
||||||
@@ -519,7 +516,7 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
}
|
}
|
||||||
if (!bCast)
|
if (!bCast)
|
||||||
{
|
{
|
||||||
//DoCast(me, JedogaShadowseekerConst.SpellBeamVisualJedogasAufseher1, false);
|
DoCast(me, SpellIds.BeamVisualJedogasAufseher1, false);
|
||||||
bCast = true;
|
bCast = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -527,7 +524,7 @@ namespace Scripts.Northrend.AzjolNerub.Ahnkahet.JedogaShadowseeker
|
|||||||
{
|
{
|
||||||
if (!bCast2 && instance.GetData(DataTypes.JedogaTriggerSwitch) != 0)
|
if (!bCast2 && instance.GetData(DataTypes.JedogaTriggerSwitch) != 0)
|
||||||
{
|
{
|
||||||
//DoCast(me, JedogaShadowseekerConst.SpellBeamVisualJedogasAufseher2, false);
|
DoCast(me, SpellIds.BeamVisualJedogasAufseher2, false);
|
||||||
bCast2 = true;
|
bCast2 = true;
|
||||||
}
|
}
|
||||||
if (bCast2 && instance.GetData(DataTypes.JedogaTriggerSwitch) == 0)
|
if (bCast2 && instance.GetData(DataTypes.JedogaTriggerSwitch) == 0)
|
||||||
|
|||||||
@@ -1551,7 +1551,6 @@ namespace Scripts.Northrend.IcecrownCitadel
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Script]
|
|
||||||
[Script]
|
[Script]
|
||||||
class npc_gunship_gunner : gunship_npc_AI
|
class npc_gunship_gunner : gunship_npc_AI
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -123,9 +123,9 @@ namespace Scripts.Northrend.IcecrownCitadel
|
|||||||
|
|
||||||
// at Light's Hammer
|
// at Light's Hammer
|
||||||
[Script]
|
[Script]
|
||||||
class npc_highlord_tirion_fordring : ScriptedAI
|
class npc_highlord_tirion_fordring_lh : ScriptedAI
|
||||||
{
|
{
|
||||||
public npc_highlord_tirion_fordring(Creature creature)
|
public npc_highlord_tirion_fordring_lh(Creature creature)
|
||||||
: base(creature)
|
: base(creature)
|
||||||
{
|
{
|
||||||
_instance = creature.GetInstanceScript();
|
_instance = creature.GetInstanceScript();
|
||||||
|
|||||||
@@ -296,9 +296,7 @@ namespace Scripts.Northrend.Nexus.Nexus
|
|||||||
[Script]
|
[Script]
|
||||||
class achievement_split_personality : AchievementCriteriaScript
|
class achievement_split_personality : AchievementCriteriaScript
|
||||||
{
|
{
|
||||||
public achievement_split_personality() : base("achievement_split_personality")
|
public achievement_split_personality() : base("achievement_split_personality") { }
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public override bool OnCheck(Player player, Unit target)
|
public override bool OnCheck(Player player, Unit target)
|
||||||
{
|
{
|
||||||
@@ -313,17 +311,4 @@ namespace Scripts.Northrend.Nexus.Nexus
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Script]
|
|
||||||
class spell_gravity_well_effect : SpellScript
|
|
||||||
{
|
|
||||||
void HandleDummy(uint index)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Register()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -122,9 +122,9 @@ namespace Scripts.Northrend.Ulduar.Xt002
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Script]
|
[Script]
|
||||||
class boss_xt002_ : BossAI
|
class boss_xt002 : BossAI
|
||||||
{
|
{
|
||||||
public boss_xt002_(Creature creature) : base(creature, BossIds.Xt002)
|
public boss_xt002(Creature creature) : base(creature, BossIds.Xt002)
|
||||||
{
|
{
|
||||||
Initialize();
|
Initialize();
|
||||||
_transferHealth = 0;
|
_transferHealth = 0;
|
||||||
|
|||||||
@@ -84,7 +84,6 @@
|
|||||||
<Compile Include="EasternKingdoms\Karazhan\Moroes.cs" />
|
<Compile Include="EasternKingdoms\Karazhan\Moroes.cs" />
|
||||||
<Compile Include="EasternKingdoms\Karazhan\OperaEvent.cs" />
|
<Compile Include="EasternKingdoms\Karazhan\OperaEvent.cs" />
|
||||||
<Compile Include="EasternKingdoms\ScarletEnclave\Chapter1.cs" />
|
<Compile Include="EasternKingdoms\ScarletEnclave\Chapter1.cs" />
|
||||||
<Compile Include="EasternKingdoms\EversongWoods.cs" />
|
|
||||||
<Compile Include="Kalimdor\ZoneDurotar.cs" />
|
<Compile Include="Kalimdor\ZoneDurotar.cs" />
|
||||||
<Compile Include="Kalimdor\RagefireChasm\InstanceRageFireChasm.cs" />
|
<Compile Include="Kalimdor\RagefireChasm\InstanceRageFireChasm.cs" />
|
||||||
<Compile Include="Northrend\AzjolNerub\Ahnkahet\BossAmanitar.cs" />
|
<Compile Include="Northrend\AzjolNerub\Ahnkahet\BossAmanitar.cs" />
|
||||||
|
|||||||
@@ -1671,7 +1671,7 @@ namespace Scripts.Spells.Generic
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Script] // 28720 - Nightmare Vine
|
// 28720 - Nightmare Vine
|
||||||
class spell_gen_nightmare_vine : SpellScript
|
class spell_gen_nightmare_vine : SpellScript
|
||||||
{
|
{
|
||||||
public override bool Validate(SpellInfo spellInfo)
|
public override bool Validate(SpellInfo spellInfo)
|
||||||
|
|||||||
@@ -153,30 +153,6 @@ namespace Scripts.Spells.Hunter
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 82926 - Fire!
|
|
||||||
[Script]
|
|
||||||
class spell_hun_fire : AuraScript
|
|
||||||
{
|
|
||||||
void HandleEffectCalcSpellMod(AuraEffect aurEff, ref SpellModifier spellMod)
|
|
||||||
{
|
|
||||||
if (spellMod == null)
|
|
||||||
{
|
|
||||||
spellMod = new SpellModifier(GetAura());
|
|
||||||
spellMod.op = SpellModOp.CastingTime;
|
|
||||||
spellMod.type = SpellModType.Pct;
|
|
||||||
spellMod.spellId = GetId();
|
|
||||||
spellMod.mask = GetSpellInfo().GetEffect(aurEff.GetEffIndex()).SpellClassMask;
|
|
||||||
}
|
|
||||||
|
|
||||||
spellMod.value = -aurEff.GetAmount();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Register()
|
|
||||||
{
|
|
||||||
DoEffectCalcSpellMod.Add(new EffectCalcSpellModHandler(HandleEffectCalcSpellMod, 0, AuraType.Dummy));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Script] // 109304 - Exhilaration
|
[Script] // 109304 - Exhilaration
|
||||||
class spell_hun_exhilaration : SpellScript
|
class spell_hun_exhilaration : SpellScript
|
||||||
{
|
{
|
||||||
@@ -245,30 +221,6 @@ namespace Scripts.Spells.Hunter
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -19464 Improved Serpent Sting
|
|
||||||
[Script]
|
|
||||||
class spell_hun_improved_serpent_sting : AuraScript
|
|
||||||
{
|
|
||||||
void HandleEffectCalcSpellMod(AuraEffect aurEff, ref SpellModifier spellMod)
|
|
||||||
{
|
|
||||||
if (spellMod == null)
|
|
||||||
{
|
|
||||||
spellMod = new SpellModifier(GetAura());
|
|
||||||
spellMod.op = (SpellModOp)aurEff.GetMiscValue();
|
|
||||||
spellMod.type = SpellModType.Pct;
|
|
||||||
spellMod.spellId = GetId();
|
|
||||||
spellMod.mask = GetSpellInfo().GetEffect(aurEff.GetEffIndex()).SpellClassMask;
|
|
||||||
}
|
|
||||||
|
|
||||||
spellMod.value = aurEff.GetAmount();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Register()
|
|
||||||
{
|
|
||||||
DoEffectCalcSpellMod.Add(new EffectCalcSpellModHandler(HandleEffectCalcSpellMod, 0, AuraType.Dummy));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 53478 - Last Stand Pet
|
// 53478 - Last Stand Pet
|
||||||
[Script]
|
[Script]
|
||||||
class spell_hun_last_stand_pet : SpellScript
|
class spell_hun_last_stand_pet : SpellScript
|
||||||
|
|||||||
@@ -746,7 +746,7 @@ namespace Scripts.Spells.Items
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Script] // 71564 - Deadly Precision
|
[Script] // 71564 - Deadly Precision
|
||||||
class spell_item_deadly_precision_charm : AuraScript
|
class spell_item_deadly_precision : AuraScript
|
||||||
{
|
{
|
||||||
void HandleStackDrop(AuraEffect aurEff, ProcEventInfo eventInfo)
|
void HandleStackDrop(AuraEffect aurEff, ProcEventInfo eventInfo)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -550,7 +550,7 @@ namespace Scripts.Spells.Mage
|
|||||||
// @todo move out of here and rename - not a mage spell
|
// @todo move out of here and rename - not a mage spell
|
||||||
// 32826 - Polymorph (Visual)
|
// 32826 - Polymorph (Visual)
|
||||||
[Script]
|
[Script]
|
||||||
class spell_mage_polymorph_cast_visual : SpellScript
|
class spell_mage_polymorph_visual : SpellScript
|
||||||
{
|
{
|
||||||
uint[] PolymorhForms =
|
uint[] PolymorhForms =
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -54,12 +54,12 @@ namespace Scripts.Spells.Monk
|
|||||||
|
|
||||||
public override void Register()
|
public override void Register()
|
||||||
{
|
{
|
||||||
OnEffectPeriodic.Add(new EffectPeriodicHandler(OnTick, 0, Framework.Constants.AuraType.PeriodicDamage));
|
OnEffectPeriodic.Add(new EffectPeriodicHandler(OnTick, 0, AuraType.PeriodicDamage));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Script] // 117959 - Crackling Jade Lightning
|
[Script] // 117959 - Crackling Jade Lightning
|
||||||
class spell_monk_crackling_jade_lightning_aura : AuraScript
|
class spell_monk_crackling_jade_lightning_knockback_proc_aura : AuraScript
|
||||||
{
|
{
|
||||||
public override bool Validate(SpellInfo spellInfo)
|
public override bool Validate(SpellInfo spellInfo)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1737,7 +1737,7 @@ namespace Scripts.Spells.Quest
|
|||||||
|
|
||||||
// 39238 - Fumping
|
// 39238 - Fumping
|
||||||
[Script]
|
[Script]
|
||||||
class spell_q10929_fumpingAuraScript : AuraScript
|
class spell_q10929_fumping : AuraScript
|
||||||
{
|
{
|
||||||
public override bool Validate(SpellInfo spell)
|
public override bool Validate(SpellInfo spell)
|
||||||
{
|
{
|
||||||
|
|||||||
+1
-14
@@ -69,6 +69,7 @@ namespace Scripts.Spells.Rogue
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Script]
|
||||||
public class spell_rog_killing_spree_AuraScript : AuraScript
|
public class spell_rog_killing_spree_AuraScript : AuraScript
|
||||||
{
|
{
|
||||||
public override bool Validate(SpellInfo spellInfo)
|
public override bool Validate(SpellInfo spellInfo)
|
||||||
@@ -118,20 +119,6 @@ namespace Scripts.Spells.Rogue
|
|||||||
List<ObjectGuid> _targets = new List<ObjectGuid>();
|
List<ObjectGuid> _targets = new List<ObjectGuid>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[Script] // 70805 - Rogue T10 2P Bonus -- THIS SHOULD BE REMOVED WITH NEW PROC SYSTEM.
|
|
||||||
class spell_rog_t10_2p_bonus : AuraScript
|
|
||||||
{
|
|
||||||
bool CheckProc(ProcEventInfo eventInfo)
|
|
||||||
{
|
|
||||||
return eventInfo.GetActor() == eventInfo.GetActionTarget();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Register()
|
|
||||||
{
|
|
||||||
DoCheckProc.Add(new CheckProcHandler(CheckProc));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Script] // 2098 - Eviscerate
|
[Script] // 2098 - Eviscerate
|
||||||
class spell_rog_eviscerate : SpellScript
|
class spell_rog_eviscerate : SpellScript
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ namespace Scripts.Spells.Warlock
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Script] // 603 - Bane of Doom
|
[Script] // 603 - Bane of Doom
|
||||||
class spell_warl_curse_of_doom : AuraScript
|
class spell_warl_bane_of_doom : AuraScript
|
||||||
{
|
{
|
||||||
public override bool Validate(SpellInfo spellInfo)
|
public override bool Validate(SpellInfo spellInfo)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -221,30 +221,6 @@ namespace Scripts.Spells.Warrior
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 58387 - Glyph of Sunder Armor
|
|
||||||
[Script]
|
|
||||||
class spell_warr_glyph_of_sunder_armor : AuraScript
|
|
||||||
{
|
|
||||||
void HandleEffectCalcSpellMod(AuraEffect aurEff, ref SpellModifier spellMod)
|
|
||||||
{
|
|
||||||
if (spellMod == null)
|
|
||||||
{
|
|
||||||
spellMod = new SpellModifier(aurEff.GetBase());
|
|
||||||
spellMod.op = (SpellModOp)aurEff.GetMiscValue();
|
|
||||||
spellMod.type = SpellModType.Flat;
|
|
||||||
spellMod.spellId = GetId();
|
|
||||||
spellMod.mask = GetSpellInfo().GetEffect(aurEff.GetEffIndex()).SpellClassMask;
|
|
||||||
}
|
|
||||||
|
|
||||||
spellMod.value = aurEff.GetAmount();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Register()
|
|
||||||
{
|
|
||||||
DoEffectCalcSpellMod.Add(new EffectCalcSpellModHandler(HandleEffectCalcSpellMod, 0, AuraType.Dummy));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Script] // Heroic leap - 6544
|
[Script] // Heroic leap - 6544
|
||||||
class spell_warr_heroic_leap : SpellScript
|
class spell_warr_heroic_leap : SpellScript
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user