aboutsummaryrefslogtreecommitdiff
path: root/src/bindings/scripts
diff options
context:
space:
mode:
authormegamage <none@none>2009-03-08 11:36:10 -0600
committermegamage <none@none>2009-03-08 11:36:10 -0600
commit985b7656bb8f7de1cb192410f2ee0495dd43ae91 (patch)
treeac10c887e7e80fe17956ee2ca0742c40f3d24389 /src/bindings/scripts
parent88c050182cd2628984a0282f66256913cecd188b (diff)
parent0f8dee432c4eb78b466744b9e3e13266c6be19d7 (diff)
*Merge.
--HG-- branch : trunk rename : sql/updates/XXX_characters_auctionhouse.sql => sql/updates/1164_characters.sql
Diffstat (limited to 'src/bindings/scripts')
-rw-r--r--src/bindings/scripts/scripts/zone/black_temple/boss_bloodboil.cpp7
-rw-r--r--src/bindings/scripts/scripts/zone/black_temple/boss_supremus.cpp7
-rw-r--r--src/bindings/scripts/scripts/zone/karazhan/boss_nightbane.cpp3
-rw-r--r--src/bindings/scripts/scripts/zone/karazhan/instance_karazhan.cpp24
-rw-r--r--src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp6
-rw-r--r--src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp3
6 files changed, 25 insertions, 25 deletions
diff --git a/src/bindings/scripts/scripts/zone/black_temple/boss_bloodboil.cpp b/src/bindings/scripts/scripts/zone/black_temple/boss_bloodboil.cpp
index aab2e8f79c5..1ac54a682aa 100644
--- a/src/bindings/scripts/scripts/zone/black_temple/boss_bloodboil.cpp
+++ b/src/bindings/scripts/scripts/zone/black_temple/boss_bloodboil.cpp
@@ -111,6 +111,9 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
PhaseChangeTimer = 60000;
Phase1 = true;
+
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, false);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, false);
}
void Aggro(Unit *who)
@@ -292,6 +295,8 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
if(DoGetThreat(target))
DoModifyThreatPercent(target, -100);
m_creature->AddThreat(target, 50000000.0f);
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
// If VMaps are disabled, this spell can call the whole instance
DoCast(m_creature, SPELL_INSIGNIFIGANCE, true);
DoCast(target, SPELL_FEL_RAGE_TARGET, true);
@@ -325,6 +330,8 @@ struct TRINITY_DLL_DECL boss_gurtogg_bloodboilAI : public ScriptedAI
FelAcidTimer += 2000;
EjectTimer += 2000;
PhaseChangeTimer = 60000;
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, false);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, false);
}
}else PhaseChangeTimer -= diff;
diff --git a/src/bindings/scripts/scripts/zone/black_temple/boss_supremus.cpp b/src/bindings/scripts/scripts/zone/black_temple/boss_supremus.cpp
index ac6d1091c60..3ae719effaf 100644
--- a/src/bindings/scripts/scripts/zone/black_temple/boss_supremus.cpp
+++ b/src/bindings/scripts/scripts/zone/black_temple/boss_supremus.cpp
@@ -91,6 +91,9 @@ struct TRINITY_DLL_DECL boss_supremusAI : public ScriptedAI
Phase1 = true;
summons.DespawnAll();
+
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, false);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, false);
}
void Aggro(Unit *who)
@@ -212,6 +215,8 @@ struct TRINITY_DLL_DECL boss_supremusAI : public ScriptedAI
PhaseSwitchTimer = 60000;
m_creature->SetSpeed(MOVE_RUN, 1.2f);
DoZoneInCombat();
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, false);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, false);
}
else
{
@@ -222,6 +227,8 @@ struct TRINITY_DLL_DECL boss_supremusAI : public ScriptedAI
PhaseSwitchTimer = 60000;
m_creature->SetSpeed(MOVE_RUN, 0.9f);
DoZoneInCombat();
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
}
}else PhaseSwitchTimer -= diff;
diff --git a/src/bindings/scripts/scripts/zone/karazhan/boss_nightbane.cpp b/src/bindings/scripts/scripts/zone/karazhan/boss_nightbane.cpp
index aae8b56cdf7..8103d73c651 100644
--- a/src/bindings/scripts/scripts/zone/karazhan/boss_nightbane.cpp
+++ b/src/bindings/scripts/scripts/zone/karazhan/boss_nightbane.cpp
@@ -114,8 +114,7 @@ struct TRINITY_DLL_DECL boss_nightbaneAI : public ScriptedAI
m_creature->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE);
m_creature->setActive(true);
- pInstance->SetData(DATA_NIGHTBANE_EVENT, 6);
- if(pInstance->GetData(DATA_NIGHTBANE_EVENT) > 1)
+ if(pInstance->GetData(DATA_NIGHTBANE_EVENT) == DONE || pInstance->GetData(DATA_NIGHTBANE_EVENT) == IN_PROGRESS)
{
m_creature->DealDamage(m_creature, m_creature->GetMaxHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
m_creature->RemoveCorpse();
diff --git a/src/bindings/scripts/scripts/zone/karazhan/instance_karazhan.cpp b/src/bindings/scripts/scripts/zone/karazhan/instance_karazhan.cpp
index 72a839cc5bd..c86fe3ead82 100644
--- a/src/bindings/scripts/scripts/zone/karazhan/instance_karazhan.cpp
+++ b/src/bindings/scripts/scripts/zone/karazhan/instance_karazhan.cpp
@@ -65,9 +65,6 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
uint64 MastersTerraceDoor[2];
uint64 ImageGUID;
- uint8 Nightbane;
- bool CheckNightbane;
-
void Initialize()
{
for (uint8 i = 0; i < ENCOUNTERS; ++i)
@@ -92,10 +89,6 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
MastersTerraceDoor[0]= 0;
MastersTerraceDoor[1]= 0;
ImageGUID = 0;
-
- Nightbane = 0;
-
- CheckNightbane = false;
}
bool IsEncounterInProgress() const
@@ -122,12 +115,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
case DATA_NETHERSPITE_EVENT: return Encounters[8];
case DATA_CHESS_EVENT: return Encounters[9];
case DATA_MALCHEZZAR_EVENT: return Encounters[10];
- case DATA_NIGHTBANE_EVENT:
- if(CheckNightbane)
- {
- CheckNightbane = false;
- return Nightbane;
- }else return Encounters[11];
+ case DATA_NIGHTBANE_EVENT: return Encounters[11];
case DATA_OPERA_PERFORMANCE: return OperaEvent;
case DATA_OPERA_OZ_DEATHCOUNT: return OzDeathCount;
case DATA_IMAGE_OF_MEDIVH: return ImageGUID;
@@ -188,11 +176,9 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
case DATA_CHESS_EVENT: Encounters[9] = data; break;
case DATA_MALCHEZZAR_EVENT: Encounters[10] = data; break;
case DATA_NIGHTBANE_EVENT:
- if(data == 6)
- {
- Nightbane;
- CheckNightbane = true;
- }else Encounters[11] = data;
+ if (Encounters[11] == DONE)
+ break;
+ Encounters[11] = data;
break;
case DATA_OPERA_OZ_DEATHCOUNT: ++OzDeathCount; break;
}
@@ -268,7 +254,7 @@ struct TRINITY_DLL_DECL instance_karazhan : public ScriptedInstance
std::istringstream loadStream(in);
loadStream >> Encounters[0] >> Encounters[1] >> Encounters[2] >> Encounters[3]
>> Encounters[4] >> Encounters[5] >> Encounters[6] >> Encounters[7]
- >> Encounters[8] >> Encounters[9] >> Encounters[10];
+ >> Encounters[8] >> Encounters[9] >> Encounters[10] >> Encounters[11];
for(uint8 i = 0; i < ENCOUNTERS; ++i)
if(Encounters[i] == IN_PROGRESS) // Do not load an encounter as "In Progress" - reset it instead.
Encounters[i] = NOT_STARTED;
diff --git a/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp b/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp
index da576d9ebbc..de5a723c630 100644
--- a/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp
+++ b/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp
@@ -201,9 +201,6 @@ struct TRINITY_DLL_DECL mob_ragin_flamesAI : public ScriptedAI
void UpdateAI(const uint32 diff)
{
- if (!UpdateVictim())
- return;
-
//Check_Timer
if(Check_Timer < diff)
{
@@ -219,6 +216,9 @@ struct TRINITY_DLL_DECL mob_ragin_flamesAI : public ScriptedAI
Check_Timer = 1000;
}else Check_Timer -= diff;
+ if (!UpdateVictim())
+ return;
+
if (!onlyonce)
{
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0))
diff --git a/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp b/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp
index d5506fbf44e..58fb27f90b5 100644
--- a/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp
+++ b/src/bindings/scripts/scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp
@@ -46,7 +46,8 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
bool IsEncounterInProgress() const
{
for(uint8 i = 0; i < ENCOUNTERS; ++i)
- if(Encounters[i]) return true;
+ if(Encounters[i] == IN_PROGRESS)
+ return true;
return false;
}