Violet Hold: Fix some despawning timers

Check pointers to avoid possible crashes

--HG--
branch : trunk
This commit is contained in:
tartalo
2009-10-25 02:47:04 +02:00
parent 19ea9b8de4
commit 7cb1b4fa86
2 changed files with 5 additions and 4 deletions

View File

@@ -246,7 +246,7 @@ struct TRINITY_DLL_DECL instance_violet_hold : public ScriptedInstance
Creature *pSinclari = instance->GetCreature(uiSinclari);
if (pSinclari)
pSinclari->SummonCreature(CREATURE_CYANIGOSA,PortalLocation[0].x,PortalLocation[0].y,
PortalLocation[0].z,PortalLocation[0].orientation,TEMPSUMMON_CORPSE_DESPAWN,90000);
PortalLocation[0].z,PortalLocation[0].orientation,TEMPSUMMON_CORPSE_DESPAWN,0);
break;
}
case 1:
@@ -261,7 +261,7 @@ struct TRINITY_DLL_DECL instance_violet_hold : public ScriptedInstance
{
pSinclari->SummonCreature(CREATURE_TELEPORTATION_PORTAL,PortalLocation[uiLocation].x,PortalLocation[uiLocation].y,
PortalLocation[uiLocation].z,PortalLocation[uiLocation].orientation,
TEMPSUMMON_CORPSE_DESPAWN,0);
TEMPSUMMON_CORPSE_DESPAWN,900000);
uiLocation = (++uiLocation)%3;
}
}

View File

@@ -17,7 +17,7 @@ enum Creatures
bool GossipHello_npc_sinclari(Player* pPlayer, Creature* pCreature)
{
ScriptedInstance* pInstance = pCreature->GetInstanceData();
if (pInstance && pInstance->GetData(DATA_WAVE_COUNT) == 0)
if (pInstance && pInstance->GetData(DATA_WAVE_COUNT) == 0 && pPlayer)
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT,GOSSIP_START_EVENT,GOSSIP_SENDER_MAIN,GOSSIP_ACTION_INFO_DEF+1);
pPlayer->SEND_GOSSIP_MENU(1, pCreature->GetGUID());
return true;
@@ -25,7 +25,8 @@ bool GossipHello_npc_sinclari(Player* pPlayer, Creature* pCreature)
bool GossipSelect_npc_sinclari(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction)
{
pPlayer->CLOSE_GOSSIP_MENU();
if (pPlayer)
pPlayer->CLOSE_GOSSIP_MENU();
ScriptedInstance* pInstance = pCreature->GetInstanceData();
if (pInstance)
pInstance->SetData(DATA_WAVE_COUNT,1);