Stop landing at enemy airfields ....
Code:
public override void OnAircraftLanded(int missionNumber, string shortName, AiAircraft aircraft)
{
base.OnAircraftLanded(missionNumber, shortName, aircraft);
foreach (AiBirthPlace bp in GamePlay.gpBirthPlaces())
{
double CircleRadius = 1000.00;
if (Math.Sqrt(Math.Pow((bp.Pos().x - aircraft.Pos().x), 2) + (Math.Pow((bp.Pos().y - aircraft.Pos().y), 2))) <= CircleRadius)
{
// landed within 1km of an airbase
if(bp.Army() != aircraft.Army())
{
// landed at enemy base so penalise the player
sendScreenMessageToPilot(aircraft, "Not allowed to land at enemy base " + bp.Name().ToString(), null);
// add any penalties here
}
}
}
}
private void sendScreenMessageToPilot(AiAircraft aircraft, string msg, object[] parms)
{ // send a screen message to the pilot of specified aircraft ONLY
GamePlay.gpHUDLogCenter(new Player[] { aircraft.Player(0) }, msg, null);
}