The first code is the orginal virtual method from ABattle (not from me, it contains also control structures for different missions), you don't have access to it via normal script, it was only a example how the orginal code looks like.
There is nothing interesting in AMission:
Code:
public abstract class AMission
{
// Methods
protected AMission()
{
}
public virtual void Init(ABattle battle, int missionNumber)
{
this.Battle = battle;
this.MissionNumber = missionNumber;
this.MissionNumberListener = missionNumber;
this.Inited();
}
public virtual void Inited()
{
}
public virtual bool IsMissionListener(int missionNumber)
{
return ((this.MissionNumberListener < 0) || (missionNumber == this.MissionNumberListener));
}
public virtual void OnActorCreated(int missionNumber, string shortName, AiActor actor)
{
}
public virtual void OnActorDamaged(int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator, NamedDamageTypes damageType)
{
}
public virtual void OnActorDead(int missionNumber, string shortName, AiActor actor, List<DamagerScore> damages)
{
}
public virtual void OnActorDestroyed(int missionNumber, string shortName, AiActor actor)
{
}
public virtual void OnActorTaskCompleted(int missionNumber, string shortName, AiActor actor)
{
}
public virtual void OnAiAirNewEnemy(AiAirEnemyElement element, int army)
{
}
public virtual void OnAircraftCrashLanded(int missionNumber, string shortName, AiAircraft aircraft)
{
}
public virtual void OnAircraftCutLimb(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, LimbNames limbName)
{
}
public virtual void OnAircraftDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, NamedDamageTypes damageType)
{
}
public virtual void OnAircraftKilled(int missionNumber, string shortName, AiAircraft aircraft)
{
}
public virtual void OnAircraftLanded(int missionNumber, string shortName, AiAircraft aircraft)
{
}
public virtual void OnAircraftLimbDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiLimbDamage limbDamage)
{
}
public virtual void OnAircraftTookOff(int missionNumber, string shortName, AiAircraft aircraft)
{
}
public virtual void OnAutopilotOff(AiActor actor, int placeIndex)
{
}
public virtual void OnAutopilotOn(AiActor actor, int placeIndex)
{
}
public virtual void OnBattleInit()
{
}
public virtual void OnBattleStarted()
{
}
public virtual void OnBattleStoped()
{
}
public virtual void OnBombExplosion(string title, double mass, Point3d pos, AiDamageInitiator initiator, int eventArgInt)
{
}
public virtual void OnBuildingKilled(string title, Point3d pos, AiDamageInitiator initiator, int eventArgInt)
{
}
public virtual void OnCarter(AiActor actor, int placeIndex)
{
}
public virtual void OnMissionLoaded(int missionNumber)
{
}
public virtual void OnOrderMissionMenuSelected(Player player, int ID, int menuItemIndex)
{
}
public virtual void OnPersonHealth(AiPerson person, AiDamageInitiator initiator, float deltaHealth)
{
}
public virtual void OnPersonMoved(AiPerson person, AiActor fromCart, int fromPlaceIndex)
{
}
public virtual void OnPersonParachuteFailed(AiPerson person)
{
}
public virtual void OnPersonParachuteLanded(AiPerson person)
{
}
public virtual void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
{
}
public virtual void OnPlaceLeave(Player player, AiActor actor, int placeIndex)
{
}
public virtual void OnPlayerArmy(Player player, int army)
{
}
public virtual void OnPlayerConnected(Player player)
{
}
public virtual void OnPlayerDisconnected(Player player, string diagnostic)
{
}
public virtual void OnSingleBattleSuccess(bool success)
{
}
public virtual void OnStationaryKilled(int missionNumber, GroundStationary _stationary, AiDamageInitiator initiator, int eventArgInt)
{
}
public virtual void OnTickGame()
{
}
public virtual void OnTickReal()
{
}
public virtual void OnTrigger(int missionNumber, string shortName, bool active)
{
}
public virtual void OnUserCreateUserLabel(GPUserLabel ul)
{
}
public virtual void OnUserDeleteUserLabel(GPUserLabel ul)
{
}
public virtual void Timeout(double sec, DoTimeout doTimeout)
{
this.Battle.Timeout(sec, doTimeout);
}
// Properties
public ABattle Battle { get; private set; }
public IGamePlay GamePlay
{
get
{
return this.Battle.GamePlay;
}
}
public int MissionNumber { get; private set; }
public int MissionNumberListener { get; protected set; }
public ITime Time
{
get
{
return this.Battle.Time;
}
}
}