diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/bindings/scripts/ScriptMgr.cpp | 4 | ||||
-rw-r--r-- | src/bindings/scripts/scripts/zone/utgarde_keep/utgarde_keep/boss_keleseth.cpp | 19 |
2 files changed, 18 insertions, 5 deletions
diff --git a/src/bindings/scripts/ScriptMgr.cpp b/src/bindings/scripts/ScriptMgr.cpp index ad69effdb3d..2dede669c69 100644 --- a/src/bindings/scripts/ScriptMgr.cpp +++ b/src/bindings/scripts/ScriptMgr.cpp @@ -572,7 +572,7 @@ extern void AddSC_ungoro_crater(); //Utgarde Keep extern void AddSC_boss_keleseth(); -extern void AddSC_instance_utgarde_keep() +extern void AddSC_instance_utgarde_keep(); //Wailing caverns @@ -1787,7 +1787,7 @@ void ScriptsInit() //Utgarde Keep AddSC_boss_keleseth(); - AddSC_instance_utgarde_keep() + AddSC_instance_utgarde_keep(); //Wailing caverns diff --git a/src/bindings/scripts/scripts/zone/utgarde_keep/utgarde_keep/boss_keleseth.cpp b/src/bindings/scripts/scripts/zone/utgarde_keep/utgarde_keep/boss_keleseth.cpp index 3497472ea0a..c9d40cc1b77 100644 --- a/src/bindings/scripts/scripts/zone/utgarde_keep/utgarde_keep/boss_keleseth.cpp +++ b/src/bindings/scripts/scripts/zone/utgarde_keep/utgarde_keep/boss_keleseth.cpp @@ -19,7 +19,7 @@ /* ScriptData SDName: Boss_Prince_Keleseth SD%Complete: 80 -SDComment: Normal and Heroic Support. Needs Prince Movements, Needs skeletons resurrection, Needs adjustments to blizzlike timers, Needs adjustments to use spell though. Needs Shadowbolt +SDComment: Normal and Heroic Support. Needs Prince Movements, Needs skeletons resurrection, Needs adjustments to blizzlike timers, Needs adjustments to use spell though. Needs Shadowbolt castbar SDCategory: Utgarde Keep EndScriptData */ @@ -50,6 +50,8 @@ float SkeletonSpawnPoint[5][5]= {156.2559, 259.2093}, }; +float AttackLoc[3]={197.636, 194.046, 40.8164}; + struct TRINITY_DLL_DECL mob_frost_tombAI : public ScriptedAI { mob_frost_tombAI(Creature *c) : ScriptedAI(c) @@ -92,9 +94,12 @@ struct TRINITY_DLL_DECL boss_kelesethAI : public ScriptedAI uint32 FrostTombTimer; uint32 SummonSkeletonsTimer; + uint32 RespawnSkeletonsTimer; uint32 ShadowboltTimer; + uint64 SkeletonGUID[5]; bool Skeletons; bool Heroic; + bool RespawnSkeletons; void Reset() { @@ -153,10 +158,18 @@ struct TRINITY_DLL_DECL boss_kelesethAI : public ScriptedAI if((SummonSkeletonsTimer < diff) && !Skeletons) { - DoScriptText(SAY_SKELETONS, m_creature); + Creature* Skeleton; + DoScriptText(SAY_SKELETONS, m_creature); for(uint8 i = 0; i < 5; ++i) { - Creature* Skeleton = m_creature->SummonCreature(CREATURE_SKELETON, SkeletonSpawnPoint[i][0], SkeletonSpawnPoint[i][1] , SKELETONSPAWN_Z, 0, TEMPSUMMON_MANUAL_DESPAWN,0); + Skeleton = m_creature->SummonCreature(CREATURE_SKELETON, SkeletonSpawnPoint[i][0], SkeletonSpawnPoint[i][1] , SKELETONSPAWN_Z, 0, TEMPSUMMON_MANUAL_DESPAWN,0); + if(Skeleton) + { + Skeleton->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + Skeleton->GetMotionMaster()->MovePoint(0, m_creature->GetPositionX(), m_creature->GetPositionY() , m_creature->GetPositionZ()); + Skeleton->AddThreat(m_creature, 0.0f); + DoZoneInCombat(Skeleton); + } } Skeletons = true; }else SummonSkeletonsTimer -= diff; |