aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bindings/scripts/scripts/eastern_kingdoms/karazhan/boss_moroes.cpp3
-rw-r--r--src/bindings/scripts/scripts/eastern_kingdoms/sunwell_plateau/boss_eredar_twins.cpp13
-rw-r--r--src/bindings/scripts/scripts/northrend/azjol_nerub/ahnkahet/boss_prince_taldaram.cpp2
-rw-r--r--src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp5
-rw-r--r--src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp14
-rw-r--r--src/bindings/scripts/scripts/northrend/obsidian_sanctum/boss_sartharion.cpp3
-rw-r--r--src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_keep/boss_skarvald_dalronn.cpp4
-rw-r--r--src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_pinnacle/boss_palehoof.cpp6
8 files changed, 34 insertions, 16 deletions
diff --git a/src/bindings/scripts/scripts/eastern_kingdoms/karazhan/boss_moroes.cpp b/src/bindings/scripts/scripts/eastern_kingdoms/karazhan/boss_moroes.cpp
index be51947aa5b..f214988a658 100644
--- a/src/bindings/scripts/scripts/eastern_kingdoms/karazhan/boss_moroes.cpp
+++ b/src/bindings/scripts/scripts/eastern_kingdoms/karazhan/boss_moroes.cpp
@@ -134,7 +134,8 @@ struct TRINITY_DLL_DECL boss_moroesAI : public ScriptedAI
DeSpawnAdds();
//remove aura from spell Garrote when Moroes dies
- pInstance->DoRemoveAurasDueToSpellOnPlayers(SPELL_GARROTE);
+ if(pInstance)
+ pInstance->DoRemoveAurasDueToSpellOnPlayers(SPELL_GARROTE);
}
void SpawnAdds()
diff --git a/src/bindings/scripts/scripts/eastern_kingdoms/sunwell_plateau/boss_eredar_twins.cpp b/src/bindings/scripts/scripts/eastern_kingdoms/sunwell_plateau/boss_eredar_twins.cpp
index 61c15f73273..cc600c88177 100644
--- a/src/bindings/scripts/scripts/eastern_kingdoms/sunwell_plateau/boss_eredar_twins.cpp
+++ b/src/bindings/scripts/scripts/eastern_kingdoms/sunwell_plateau/boss_eredar_twins.cpp
@@ -577,12 +577,15 @@ struct TRINITY_DLL_DECL boss_alythessAI : public Scripted_NoMovementAI
}
if(!m_creature->getVictim())
{
- Creature* sisiter = Unit::GetCreature((*m_creature),pInstance->GetData64(DATA_SACROLASH));
- if (sisiter && !sisiter->isDead() && sisiter->getVictim())
+ if(pInstance)
{
- m_creature->AddThreat(sisiter->getVictim(),0.0f);
- DoStartNoMovement(sisiter->getVictim());
- m_creature->Attack(sisiter->getVictim(),false);
+ Creature* sisiter = Unit::GetCreature((*m_creature),pInstance->GetData64(DATA_SACROLASH));
+ if (sisiter && !sisiter->isDead() && sisiter->getVictim())
+ {
+ m_creature->AddThreat(sisiter->getVictim(),0.0f);
+ DoStartNoMovement(sisiter->getVictim());
+ m_creature->Attack(sisiter->getVictim(),false);
+ }
}
}
diff --git a/src/bindings/scripts/scripts/northrend/azjol_nerub/ahnkahet/boss_prince_taldaram.cpp b/src/bindings/scripts/scripts/northrend/azjol_nerub/ahnkahet/boss_prince_taldaram.cpp
index d277957b84d..7e2234e6672 100644
--- a/src/bindings/scripts/scripts/northrend/azjol_nerub/ahnkahet/boss_prince_taldaram.cpp
+++ b/src/bindings/scripts/scripts/northrend/azjol_nerub/ahnkahet/boss_prince_taldaram.cpp
@@ -313,6 +313,8 @@ struct TRINITY_DLL_DECL boss_taldaramAI : public ScriptedAI
void RemovePrison()
{
+ if(!pInstance)
+ return;
m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_OOC_NOT_ATTACKABLE);
m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
m_creature->RemoveAurasDueToSpell(SPELL_BEAM_VISUAL);
diff --git a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp
index 15df0fbc5f9..e09b0234288 100644
--- a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp
+++ b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp
@@ -53,6 +53,8 @@ struct TRINITY_DLL_DECL npc_toc5_announcerAI : public ScriptedAI
void StartEvent(Player* pPlayer)
{
+ if(!pInstance)
+ return;
if(pInstance->GetData(TYPE_GRAND_CHAMPIONS) == NOT_STARTED && pInstance->GetData(TYPE_ARGENT_CHALLENGE) == NOT_STARTED && pInstance->GetData(TYPE_BLACK_KNIGHT) == NOT_STARTED)
{
chmp1 = RAND(35572,35569,35571,35570,35617);
@@ -97,6 +99,9 @@ bool GossipHello_npc_toc5_announcer(Player* pPlayer, Creature* pCreature)
{
ScriptedInstance* pInstance = pCreature->GetInstanceData();
+ if(!pInstance)
+ return false;
+
if(pInstance->GetData(TYPE_GRAND_CHAMPIONS) == NOT_STARTED && pInstance->GetData(TYPE_ARGENT_CHALLENGE) == NOT_STARTED && pInstance->GetData(TYPE_BLACK_KNIGHT) == NOT_STARTED)
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_START_EVENT1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
else
diff --git a/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp b/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp
index 448fa9cab7c..6e5925ac2af 100644
--- a/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp
+++ b/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp
@@ -150,8 +150,11 @@ struct TRINITY_DLL_DECL boss_drakkari_elementalAI : public ScriptedAI
boss_drakkari_elementalAI(Creature* pCreature) : ScriptedAI(pCreature)
{
pInstance = pCreature->GetInstanceData();
- if (pCreature->GetMap()->IsDungeon())
- pColossus = CAST_CRE(pCreature->GetUnit(*pCreature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS)));
+ if(pInstance)
+ {
+ if (pCreature->GetMap()->IsDungeon())
+ pColossus = CAST_CRE(pCreature->GetUnit(*pCreature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS)));
+ }
}
Creature* pColossus;
@@ -221,8 +224,11 @@ struct TRINITY_DLL_DECL npc_living_mojoAI : public ScriptedAI
{
HeroicMode = pCreature->GetMap()->IsHeroic();
pInstance = pCreature->GetInstanceData();
- if (pCreature->GetMap()->IsDungeon())
- pColossus = CAST_CRE(pCreature->GetUnit(*pCreature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS)));
+ if(pInstance)
+ {
+ if (pCreature->GetMap()->IsDungeon())
+ pColossus = CAST_CRE(pCreature->GetUnit(*pCreature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS)));
+ }
}
Creature* pColossus;
diff --git a/src/bindings/scripts/scripts/northrend/obsidian_sanctum/boss_sartharion.cpp b/src/bindings/scripts/scripts/northrend/obsidian_sanctum/boss_sartharion.cpp
index 4d2d3234155..f8d78013c27 100644
--- a/src/bindings/scripts/scripts/northrend/obsidian_sanctum/boss_sartharion.cpp
+++ b/src/bindings/scripts/scripts/northrend/obsidian_sanctum/boss_sartharion.cpp
@@ -284,7 +284,8 @@ struct TRINITY_DLL_DECL boss_sartharionAI : public ScriptedAI
void FetchDragons()
{
- assert(pInstance);
+ if(!pInstance)
+ return;
Creature* pFetchTene = Unit::GetCreature(*m_creature, pInstance->GetData64(DATA_TENEBRON));
Creature* pFetchShad = Unit::GetCreature(*m_creature, pInstance->GetData64(DATA_SHADRON));
Creature* pFetchVesp = Unit::GetCreature(*m_creature, pInstance->GetData64(DATA_VESPERON));
diff --git a/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_keep/boss_skarvald_dalronn.cpp b/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_keep/boss_skarvald_dalronn.cpp
index 0c4d1163532..c6fee361b87 100644
--- a/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_keep/boss_skarvald_dalronn.cpp
+++ b/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_keep/boss_skarvald_dalronn.cpp
@@ -246,7 +246,7 @@ struct TRINITY_DLL_DECL boss_dalronn_the_controllerAI : public ScriptedAI
void EnterCombat(Unit *who)
{
- if (!ghost)
+ if (!ghost && pInstance)
{
Unit* skarvald = Unit::GetUnit((*m_creature),pInstance->GetData64(DATA_SKARVALD));
if (skarvald && skarvald->isAlive() && !skarvald->getVictim())
@@ -261,7 +261,7 @@ struct TRINITY_DLL_DECL boss_dalronn_the_controllerAI : public ScriptedAI
void JustDied(Unit* Killer)
{
- if (!ghost)
+ if (!ghost && pInstance)
{
Unit* skarvald = Unit::GetUnit((*m_creature),pInstance->GetData64(DATA_SKARVALD));
if (skarvald)
diff --git a/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_pinnacle/boss_palehoof.cpp b/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_pinnacle/boss_palehoof.cpp
index a5801ee4fd8..bbebb204eaf 100644
--- a/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_pinnacle/boss_palehoof.cpp
+++ b/src/bindings/scripts/scripts/northrend/utgarde_keep/utgarde_pinnacle/boss_palehoof.cpp
@@ -151,7 +151,7 @@ struct TRINITY_DLL_DECL boss_palehoofAI : public ScriptedAI
if (!UpdateVictim())
return;
- Creature* pTemp = Unit::GetCreature((*m_creature), pInstance->GetData64(DATA_MOB_ORB));
+ Creature* pTemp = Unit::GetCreature((*m_creature), pInstance ? pInstance->GetData64(DATA_MOB_ORB) : 0);
if (pTemp && pTemp->isAlive())
pTemp->DisappearAndDie();
@@ -182,7 +182,7 @@ struct TRINITY_DLL_DECL boss_palehoofAI : public ScriptedAI
DoScriptText(SAY_DEATH, m_creature);
if (pInstance)
pInstance->SetData(DATA_GORTOK_PALEHOOF_EVENT, DONE);
- Creature* pTemp = Unit::GetCreature((*m_creature), pInstance->GetData64(DATA_MOB_ORB));
+ Creature* pTemp = Unit::GetCreature((*m_creature), pInstance ? pInstance->GetData64(DATA_MOB_ORB) : 0);
if (pTemp && pTemp->isAlive())
pTemp->DisappearAndDie();
}
@@ -438,7 +438,7 @@ struct TRINITY_DLL_DECL mob_frenzied_worgenAI : public ScriptedAI
{
if (pInstance)
{
- Creature *pPalehoof = Unit::GetCreature((*m_creature), pInstance ? pInstance->GetData64(DATA_GORTOK_PALEHOOF) : 0);
+ Creature *pPalehoof = Unit::GetCreature((*m_creature), pInstance->GetData64(DATA_GORTOK_PALEHOOF));
if (pPalehoof)
CAST_AI(boss_palehoofAI, pPalehoof->AI())->NextPhase();
}