void AIUpdate()
	{
		if ( IsTimerFinished( mStompTimer ) )
		{
			if( m_bStomp == false )
			{
				m_bStomp = true;
				Announce( "Volkhan prepares to shatter his Brittle Golems!" );
				CastSpellNowNoScheduling( mStomp );
				ResetTimer( mStompTimer, 3000 );
			}
			else
			{
				DoStomp();
				ResetTimer( mStompTimer, TIMER_STOMP + ( RandomUInt( 6 ) * 1000 ) );
			}
		};

		if ( GetHealthPercent() <= ( 100 - ( 20 * mPhase ) ) )
		{
			ForceWaypointMove( 1 );
			Announce( "Volkhan runs to his anvil!" );
			++mPhase;
		}

		ParentClass::AIUpdate();
	};
Exemple #2
0
	void OnReachWP(uint32 iWaypointId, bool bForwards)
    {
		ForceWaypointMove(iWaypointId+1);
		if(GetPhase() == 1 && GetCurrentWaypoint() == 39)		
		{
			_unit->Emote(EMOTE_ONESHOT_TALK);
			SetPhase(2, Awakening);
			SpawnTimer = AddTimer(100000);
		}
		ParentClass::OnReachWP(iWaypointId, bForwards);
	}
 void OnReachWP(uint32 iWaypointId, bool /*bForwards*/) override
 {
     ForceWaypointMove(iWaypointId + 1);
     if (isScriptPhase(1) && GetCurrentWaypoint() == 39)
         setScriptPhase(2);
 }