Script modified (added a timer) and corrected:
Code:
using System;
using System.Collections.Generic;
using System.Diagnostics;
using maddox.game;
using maddox.game.world;
public class Mission : AMission
{
Stopwatch MissionTimer = new Stopwatch();
public override void OnBattleStarted()
{
base.OnBattleStarted();
MissionTimer.Start();
MissionNumberListener = -1;
}
public override void OnActorCreated(int missionNumber, string shortName, AiActor actor)
{
base.OnActorCreated(missionNumber, shortName, actor);
if (actor is AiAircraft)
{
switch ((actor as AiAircraft).InternalTypeName())
{
case "bob:Aircraft.He-111P-2":
Timeout(420, () => // Time in Seconds
{
(actor as AiAircraft).Destroy();
});
break;
}
}
}
public override void OnTickGame()
{
if(MissionTimer.Elapsed.TotalSeconds >= 60) //Loads a mission every 60s
{
Random ZufaelligeMission = new Random();
MissionTimer.Restart(); // Sets timer to 0 and start again
switch (ZufaelligeMission.Next(1,5))
{
case 1:
GamePlay.gpPostMissionLoad("missions\\Single\\apocalypseLondon\\mission1.mis");
break;
case 2:
GamePlay.gpPostMissionLoad("missions\\Single\\apocalypseLondon\\mission2.mis");
break;
case 3:
GamePlay.gpPostMissionLoad("missions\\Single\\apocalypseLondon\\mission3.mis");
break;
case 4:
GamePlay.gpPostMissionLoad("missions\\Single\\apocalypseLondon\\mission4.mis");
break;
}
}
}
}