mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-17 16:10:49 +01:00
Add Spells to Coldarra Warmages to target Tansisus Shield Bunnys same as Violet Stand.
Also required: http://trinitydatabase.org/index.php?/topic/15320-fix-for-transis-shield-bunnys-coldarra/ --HG-- branch : trunk
This commit is contained in:
@@ -407,7 +407,8 @@ UPDATE `creature_template` SET `ScriptName`='npc_fezzix_geartwist' WHERE `entry`
|
||||
UPDATE `creature_template` SET `scriptname`='npc_trapped_mammoth_calf' WHERE `entry`=25850;
|
||||
UPDATE `item_template` SET `scriptname`='item_dehta_trap_smasher' WHERE `entry`=35228;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_magmoth_crusher' WHERE `entry`=25434;
|
||||
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_valiance_keep_cannoneer' WHERE `entry`=25306;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_warmage_coldarra' WHERE `entry` IN (27173,27904,27906);
|
||||
|
||||
/* BURNING STEPPES */
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_ragged_john' WHERE `entry`=9563;
|
||||
|
||||
1
sql/updates/7780_world_scriptname.sql
Normal file
1
sql/updates/7780_world_scriptname.sql
Normal file
@@ -0,0 +1 @@
|
||||
UPDATE `creature_template` SET `ScriptName`= 'npc_warmage_coldarra' WHERE `entry` IN (27173,27904,27906);
|
||||
@@ -2240,6 +2240,105 @@ CreatureAI* GetAI_npc_valiance_keep_cannoneer(Creature* pCreature)
|
||||
return new npc_valiance_keep_cannoneerAI(pCreature);
|
||||
}
|
||||
|
||||
/*******************************************************
|
||||
* npc_warmage_coldarra
|
||||
*******************************************************/
|
||||
|
||||
enum Spells
|
||||
{
|
||||
SPELL_TRANSITUS_SHIELD_BEAM = 48310
|
||||
};
|
||||
|
||||
enum NPCs
|
||||
{
|
||||
NPC_TRANSITUS_SHIELD_DUMMY = 27306,
|
||||
NPC_WARMAGE_HOLLISTER = 27906,
|
||||
NPC_WARMAGE_CALANDRA = 27173,
|
||||
NPC_WARMAGE_WATKINS = 27904
|
||||
};
|
||||
|
||||
struct npc_warmage_coldarraAI : public Scripted_NoMovementAI
|
||||
{
|
||||
npc_warmage_coldarraAI(Creature* pCreature) : Scripted_NoMovementAI(pCreature){}
|
||||
|
||||
uint32 m_uiTimer; //Timer until recast
|
||||
|
||||
void Reset()
|
||||
{
|
||||
m_uiTimer = 0;
|
||||
}
|
||||
|
||||
void Aggro(Unit* pWho){}
|
||||
|
||||
void AttackStart(Unit* pWho){}
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (m_uiTimer <= uiDiff)
|
||||
{
|
||||
std::list<Creature*> orbList;
|
||||
GetCreatureListWithEntryInGrid(orbList, m_creature, NPC_TRANSITUS_SHIELD_DUMMY, 32.0f);
|
||||
|
||||
switch(me->GetEntry())
|
||||
{
|
||||
case NPC_WARMAGE_HOLLISTER:
|
||||
{
|
||||
if (!orbList.empty())
|
||||
{
|
||||
for (std::list<Creature*>::const_iterator itr = orbList.begin(); itr != orbList.end(); ++itr)
|
||||
{
|
||||
if (Creature* pOrb = *itr)
|
||||
if (pOrb->GetPositionY() > 6680)
|
||||
DoCast(pOrb,SPELL_TRANSITUS_SHIELD_BEAM);
|
||||
}
|
||||
}
|
||||
m_uiTimer = urand(90000,120000);
|
||||
}
|
||||
break;
|
||||
case NPC_WARMAGE_CALANDRA:
|
||||
{
|
||||
if (!orbList.empty())
|
||||
{
|
||||
for (std::list<Creature*>::const_iterator itr = orbList.begin(); itr != orbList.end(); ++itr)
|
||||
{
|
||||
if (Creature* pOrb = *itr)
|
||||
if ((pOrb->GetPositionY() < 6680) && (pOrb->GetPositionY() > 6630))
|
||||
DoCast(pOrb,SPELL_TRANSITUS_SHIELD_BEAM);
|
||||
}
|
||||
}
|
||||
m_uiTimer = urand(90000,120000);
|
||||
}
|
||||
break;
|
||||
case NPC_WARMAGE_WATKINS:
|
||||
{
|
||||
if (!orbList.empty())
|
||||
{
|
||||
for (std::list<Creature*>::const_iterator itr = orbList.begin(); itr != orbList.end(); ++itr)
|
||||
{
|
||||
if (Creature* pOrb = *itr)
|
||||
if (pOrb->GetPositionY() < 6630)
|
||||
DoCast(pOrb,SPELL_TRANSITUS_SHIELD_BEAM);
|
||||
}
|
||||
}
|
||||
m_uiTimer = urand(90000,120000);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
else m_uiTimer -= uiDiff;
|
||||
|
||||
ScriptedAI::UpdateAI(uiDiff);
|
||||
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
||||
CreatureAI* GetAI_npc_warmage_coldarra(Creature* pCreature)
|
||||
{
|
||||
return new npc_warmage_coldarraAI(pCreature);
|
||||
}
|
||||
|
||||
void AddSC_borean_tundra()
|
||||
{
|
||||
Script *newscript;
|
||||
@@ -2395,4 +2494,9 @@ void AddSC_borean_tundra()
|
||||
newscript->Name = "npc_valiance_keep_cannoneer";
|
||||
newscript->GetAI = &GetAI_npc_valiance_keep_cannoneer;
|
||||
newscript->RegisterSelf();
|
||||
|
||||
newscript = new Script;
|
||||
newscript->Name = "npc_warmage_coldarra";
|
||||
newscript->GetAI = &GetAI_npc_warmage_coldarra;
|
||||
newscript->RegisterSelf();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user