Violet Hold: Exploit fix

Now bosses reset if they're hitted when their door is closed

--HG--
branch : trunk
This commit is contained in:
Tartalo
2010-03-23 12:48:28 +01:00
parent 3cd729294e
commit a348b591a7
6 changed files with 36 additions and 0 deletions
@@ -117,6 +117,12 @@ struct boss_erekemAI : public ScriptedAI
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_EREKEM_CELL)))
if (pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
pGuard1 = pInstance->instance->GetCreature(pInstance->GetData64(DATA_EREKEM_GUARD_1));
pGuard2 = pInstance->instance->GetCreature(pInstance->GetData64(DATA_EREKEM_GUARD_2));
@@ -124,6 +124,12 @@ struct boss_ichoronAI : public ScriptedAI
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_ICHORON_CELL)))
if (pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
if (pInstance->GetData(DATA_WAVE_COUNT) == 6)
pInstance->SetData(DATA_1ST_BOSS_EVENT, IN_PROGRESS);
else if (pInstance->GetData(DATA_WAVE_COUNT) == 12)
@@ -56,6 +56,12 @@ struct boss_lavanthorAI : public ScriptedAI
{
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_LAVANTHOR_CELL)))
if (pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
if (pInstance->GetData(DATA_WAVE_COUNT) == 6)
pInstance->SetData(DATA_1ST_BOSS_EVENT, IN_PROGRESS);
else if (pInstance->GetData(DATA_WAVE_COUNT) == 12)
@@ -49,6 +49,12 @@ struct boss_moraggAI : public ScriptedAI
{
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_MORAGG_CELL)))
if(pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
if (pInstance->GetData(DATA_WAVE_COUNT) == 6)
pInstance->SetData(DATA_1ST_BOSS_EVENT, IN_PROGRESS);
else if (pInstance->GetData(DATA_WAVE_COUNT) == 12)
@@ -136,6 +136,12 @@ struct boss_xevozzAI : public ScriptedAI
DoScriptText(SAY_AGGRO, m_creature);
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_XEVOZZ_CELL)))
if (pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
if (pInstance->GetData(DATA_WAVE_COUNT) == 6)
pInstance->SetData(DATA_1ST_BOSS_EVENT, IN_PROGRESS);
else if (pInstance->GetData(DATA_WAVE_COUNT) == 12)
@@ -84,6 +84,12 @@ struct boss_zuramatAI : public ScriptedAI
DoScriptText(SAY_AGGRO, m_creature);
if (pInstance)
{
if (GameObject *pDoor = pInstance->instance->GetGameObject(pInstance->GetData64(DATA_ZURAMAT_CELL)))
if (pDoor->GetGoState() == GO_STATE_READY)
{
EnterEvadeMode();
return;
}
if (pInstance->GetData(DATA_WAVE_COUNT) == 6)
pInstance->SetData(DATA_1ST_BOSS_EVENT, IN_PROGRESS);
else if (pInstance->GetData(DATA_WAVE_COUNT) == 12)