aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTrazom62 <none@none>2010-02-01 21:28:50 +0100
committerTrazom62 <none@none>2010-02-01 21:28:50 +0100
commit70425115f0650807fb08ca5d70a782c532e7c926 (patch)
tree778231be7866c94924dde52b836121c241b0648a /src
parenta91bf2f028f63a7b53b203213cc731456d1c5619 (diff)
Fix Script DrakTharon/Trollgore.
- fix adds spawn points. - fix achievement Consumption Junction. --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/scripts/northrend/draktharon_keep/boss_trollgore.cpp36
1 files changed, 17 insertions, 19 deletions
diff --git a/src/scripts/northrend/draktharon_keep/boss_trollgore.cpp b/src/scripts/northrend/draktharon_keep/boss_trollgore.cpp
index 7f97629e2fd..a820703961a 100644
--- a/src/scripts/northrend/draktharon_keep/boss_trollgore.cpp
+++ b/src/scripts/northrend/draktharon_keep/boss_trollgore.cpp
@@ -29,16 +29,19 @@ update creature_template set scriptname = 'boss_trollgore' where entry = '';
*** SQL END ***/
#include "ScriptedPch.h"
#include "drak_tharon_keep.h"
+#include "SpellId.h"
enum Spells
{
- SPELL_INFECTED_WOUND = 49637,
- SPELL_CRUSH = 49639,
- SPELL_CORPSE_EXPLODE = 49555,
- SPELL_CONSUME = 49380,
+ SPELL_INFECTED_WOUND = SPELL_INFECTED_WOUND_49637,
+ SPELL_CRUSH = SPELL_CRUSH_49639,
+ SPELL_CORPSE_EXPLODE = SPELL_CORPSE_EXPLODE_49555,
+ SPELL_CONSUME = SPELL_CONSUME_49380,
+ SPELL_CONSUME_AURA = SPELL_CONSUME_49381,
//Heroic spells
- H_SPELL_CORPSE_EXPLODE = 59807,
- H_SPELL_CONSUME = 59803
+ H_SPELL_CORPSE_EXPLODE = SPELL_CORPSE_EXPLODE_59807,
+ H_SPELL_CONSUME = SPELL_CONSUME_59803,
+ H_SPELL_CONSUME_AURA = SPELL_CONSUME_59805,
};
//not in db
enum Yells
@@ -94,8 +97,7 @@ struct TRINITY_DLL_DECL boss_trollgoreAI : public ScriptedAI
lSummons.DespawnAll();
- if (m_creature->HasAura(DUNGEON_MODE(SPELL_CONSUME,H_SPELL_CONSUME)))
- m_creature->RemoveAura(DUNGEON_MODE(SPELL_CONSUME,H_SPELL_CONSUME));
+ m_creature->RemoveAura(DUNGEON_MODE(SPELL_CONSUME_AURA,H_SPELL_CONSUME_AURA));
if (pInstance)
pInstance->SetData(DATA_TROLLGORE_EVENT, NOT_STARTED);
@@ -119,7 +121,7 @@ struct TRINITY_DLL_DECL boss_trollgoreAI : public ScriptedAI
{
uint32 spawnNumber = urand(2,DUNGEON_MODE(3,5));
for (uint8 i = 0; i < spawnNumber; ++i)
- DoSpawnCreature(RAND(NPC_DRAKKARI_INVADER_1,NPC_DRAKKARI_INVADER_2), AddSpawnPoint.GetPositionX(), AddSpawnPoint.GetPositionY(), AddSpawnPoint.GetPositionZ(), AddSpawnPoint.GetOrientation(), TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 90000);
+ DoSummon(RAND(NPC_DRAKKARI_INVADER_1,NPC_DRAKKARI_INVADER_2), AddSpawnPoint, 0, TEMPSUMMON_DEAD_DESPAWN);
uiSpawnTimer = urand(30000,40000);
} else uiSpawnTimer -= diff;
@@ -132,15 +134,9 @@ struct TRINITY_DLL_DECL boss_trollgoreAI : public ScriptedAI
if (bAchiev)
{
- if (uiAuraCountTimer <= diff)
- {
- if (Aura *pConsumeAura = m_creature->GetAura(DUNGEON_MODE(SPELL_CONSUME,H_SPELL_CONSUME)))
- {
- if (pConsumeAura && pConsumeAura->GetStackAmount() > 9)
- bAchiev = false;
- }
- uiAuraCountTimer = 16000;
- } else uiAuraCountTimer -= diff;
+ Aura *pConsumeAura = m_creature->GetAura(DUNGEON_MODE(SPELL_CONSUME_AURA,H_SPELL_CONSUME_AURA));
+ if (pConsumeAura && pConsumeAura->GetStackAmount() > 9)
+ bAchiev = false;
}
if (uiCrushTimer <= diff)
@@ -188,7 +184,9 @@ struct TRINITY_DLL_DECL boss_trollgoreAI : public ScriptedAI
void JustSummoned(Creature* summon)
{
- summon->AI()->AttackStart(m_creature);
+ lSummons.push_back(summon->GetGUID());
+ if (summon->AI())
+ summon->AI()->AttackStart(m_creature);
}
};