{
	saved_FirstTime[0]

	Init[ (s)
	{
		if(saved_FirstTime=0)
		{
			saved_FirstTime=1;
			ShowEntity(false);
			SetUseText(187);
			SetUsable(false);
			SetSkin(1);
		}
	}]

	OnUse[ (s)
	{

		if (GetID()="charge1")
		{
			Charge01 = Level.GetEntity("charge1");
			Charge01.SetUsable(false);
			Charge01.SetSkin(0);
			Charge01.PlaySound(20);
			Delay (4,1);
		}

		if (GetID()="charge2")
		{
			Charge02 = Level.GetEntity("charge2");
			Charge02.SetUsable(false);
			Charge02.SetSkin(0);
			Charge02.PlaySound(20);
			Delay (4,2);
		}

		if (GetID()="charge3")
		{
			Charge03 = Level.GetEntity("charge3");
			Charge03.SetUsable(false);
			Charge03.SetSkin(0);
			Charge03.PlaySound(20);
			Delay (4,3);
		}

	}]


	ExplodeRocket[(name,num)
	{
		Rocket = Level.GetEntity(name);
		Rocket.DoFireExplosionEffect();
		Rocket.PlaySound(3,100,1);
		Rocket.SetModel(88);

		if (num = 1)
		{
			Level.GetPlayer().DamageHere(11020, 28659, 3000, 8);
		}

		if (num = 2)
		{
			Level.GetPlayer().DamageHere(7972, 28659, 3000, 8);
		}
		
		if (num = 3)
		{
			Level.GetPlayer().DamageHere(7948, 31257, 3000, 8);
		}


		// if "Fuel Rockets" objective is done..
		if( Level.IsObjectiveComplete((Level.saved_RocketObjective-1)) )
		{
			// check off counting rocket objective
			Level.ObjectiveComplete( Level.saved_RocketObjective );

			// if we haver not destroyed the last rocket..
			if( Level.saved_RocketObjective < 5 )
			{
				// hide current rocket objective
				Level.SetObjectiveActive( Level.saved_RocketObjective, false );

				// show the next rocket objective
				Level.SetObjectiveActive( (Level.saved_RocketObjective+1), true );

				// advance current rocket objective counter by 1
				Level.saved_RocketObjective = (Level.saved_RocketObjective + 1);
			}
		}
	}]

	CheckObjectives[()
	{
		if( Level.IsObjectiveComplete(4) )
		{
			Level.SetObjectiveActive(4, false );

			// show "Destroy Rockets" objective checked off
			Level.SetObjectiveActive( 5, true );
			Level.ObjectiveComplete(5);

			Level.Victory();
			Delay(8,5);
		}
	}]

	DelayReached [(s)
	{

		if (s=1)
		{
			ExplodeRocket("rocket1",1);
			ShowEntity( false );
			CheckObjectives();
		}

		if (s=2)
		{
			ExplodeRocket("rocket2",2);
			ShowEntity( false );
			CheckObjectives();
		}

		if (s=3)
		{
			ExplodeRocket("rocket3",3);
			ShowEntity( false );
			CheckObjectives();
		}

		if (s=5)
		{
			Level.LoadLevel("S_RUIntro_Level");
		}
	}]
}