*Added HasAura check for Winter Reveler

*Moved back reverted changes in lurker  and added things for future and todo list

--HG--
branch : trunk
This commit is contained in:
Blaymoira
2008-12-15 21:43:03 +01:00
parent 9b1357a332
commit 3f9e5651e8
5 changed files with 34 additions and 16 deletions
@@ -1,3 +1,6 @@
DELETE FROM gameobject WHERE id=184956;
INSERT INTO gameobject (id, map, spawnMask, position_x, position_y, position_z, orientation, rotation0, rotation1, rotation2, rotation3, spawntimesecs, animprogress, state) VALUES (184956, 548, 1, 39.1372, -418.625, -21.5806, 1.29069, 0, 0, 0.601475, 0.798891, 25, 0, 1)
UPDATE `instance_template` SET `script`='instance_dark_portal' WHERE `map`=269;
UPDATE `creature_template` SET `ScriptName`='npc_medivh_bm' WHERE `entry`=15608;
UPDATE `creature_template` SET `ScriptName`='npc_time_rift' WHERE `entry`=17838;
@@ -897,8 +897,8 @@ CreatureAI* GetAI_npc_tonk_mine(Creature *_Creature)
bool ReceiveEmote_npc_winter_reveler( Player *player, Creature *_Creature, uint32 emote )
{
//TODO: check auralist.
//if()
// return false;
if(player->HasAura(26218, 0))
return false;
if( emote == TEXTEMOTE_KISS )
{
@@ -16,8 +16,8 @@
/* ScriptData
SDName: boss_the_lurker_below
SD%Complete: 75
SDComment: Pack summoning when it's does when it's appear how check this and check for coilfang frenzy if water is boiling they get deadstate
SD%Complete: 80
SDComment: Coilfang Frenzy, find out how could we fishing in the strangepool
SDCategory: The Lurker Below
EndScriptData */
@@ -122,6 +122,16 @@ struct TRINITY_DLL_DECL boss_the_lurker_belowAI : public Scripted_NoMovementAI
if(pInstance)
pInstance->SetData(DATA_THELURKERBELOWEVENT, NOT_STARTED);
/*if(pInstance->GetData(DATA_STRANGE_POOL) != DONE)
{
m_creature->SetReactState(REACT_PASSIVE);
m_creature->SetVisibility(VISIBILITY_OFF);
}else {
m_creature->SetVisibility(VISIBILITY_ON);
m_creature->SetReactState(REACT_AGGRESSIVE);
}*/
}
void MoveInLineOfSight(Unit *who)
@@ -231,10 +241,14 @@ struct TRINITY_DLL_DECL boss_the_lurker_belowAI : public Scripted_NoMovementAI
m_creature->MonsterTextEmote(EMOTE_SPOUT,0,true);
//DoCast(m_creature,SPELL_SPOUT_BREATH);//take breath anim
}
void BoilingWater(bool active)
void UpdateAI(const uint32 diff)
{
//Check if players in water and if in water cast spell
//Return since we have no target
if (!m_creature->SelectHostilTarget() /*|| !m_creature->getVictim()*/ )//rotate resets target
return;
//Check if players in water and if in water cast spell
Map *map = m_creature->GetMap();
if (map->IsDungeon() && pInstance->GetData(DATA_THELURKERBELOWEVENT) == IN_PROGRESS)
{
@@ -251,13 +265,6 @@ struct TRINITY_DLL_DECL boss_the_lurker_belowAI : public Scripted_NoMovementAI
i->getSource()->RemoveAurasDueToSpell(SPELL_SCALDINGWATER);
}
}
}
void UpdateAI(const uint32 diff)
{
//Return since we have no target
if (!m_creature->SelectHostilTarget() /*|| !m_creature->getVictim()*/ )//rotate resets target
return;
Rotate(diff);//always check rotate things
if(!Submerged)
@@ -27,4 +27,5 @@
#define DATA_LEOTHERAS 20
#define DATA_LEOTHERAS_EVENT_STARTER 21
#define DATA_CONTROL_CONSOLE 22
#define DATA_STRANGE_POOL 23
#endif
@@ -35,9 +35,9 @@ EndScriptData */
5 - Lady Vashj Event
*/
bool GOHello_go_bridge_console(Player *player, GameObject* _GO)
bool GOHello_go_bridge_console(Player *player, GameObject* go)
{
ScriptedInstance* pInstance = (ScriptedInstance*)_GO->GetInstanceData();
ScriptedInstance* pInstance = (ScriptedInstance*)go->GetInstanceData();
if(!pInstance)
return false;
@@ -64,6 +64,7 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
uint64 ControlConsole;
uint64 BridgePart[3];
uint64 StrangePool;
bool ShieldGeneratorDeactivated[4];
bool Encounters[ENCOUNTERS];
@@ -84,6 +85,7 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
BridgePart[0] = 0;
BridgePart[1] = 0;
BridgePart[2] = 0;
StrangePool = 0;
ShieldGeneratorDeactivated[0] = false;
ShieldGeneratorDeactivated[1] = false;
@@ -125,6 +127,10 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
BridgePart[2] = go->GetGUID();
go->setActive(true);
break;
case 184956:
StrangePool = go->GetGUID();
if(go->isActive())
SetData(DATA_STRANGE_POOL, DONE);
}
}
@@ -176,6 +182,7 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
{
switch(type)
{
case DATA_STRANGE_POOL: StrangePool = data;
case DATA_CONTROL_CONSOLE:
if(data = DONE)
{