Results 1 to 9 of 9

Thread: Script Reference Master List for IL2COD

  1. #1
    Team Fusion ATAG_Bliss's Avatar
    Join Date
    Feb 2011
    Location
    United States of China
    Posts
    4,135
    Post Thanks / Like
    Total Downloaded
    457.02 MB

    Script Reference Master List for IL2COD

    The following is just a quick reference guide for the various types of events/call outs you can place in your mission. This code is specifically made for IL2COD. Combine these elements with Microsoft .Net and you can virtually do anything you want. I made a master list back in 2011, back when I had the time to build missions, but I figure putting it all in one spot as a quick reference might help someone trying to start mission building.

    There's tons of things in here that have yet to be explored.

    Hope this helps, and good luck!!


    ABattle


    Code:
    namespace maddox.game
    {
        using maddox.game.world;
        using part;
        using System;
        using System.Collections;
        using System.Collections.Generic;
        using System.Runtime.CompilerServices;
    
        public class ABattle : MarshalByRefObject, IBattle
        {
            protected List<AMission> missions = new List<AMission>();
            protected TimeoutItem timeoutList;
    
            public virtual bool? checkBattleGoal()
            {
                return null;
            }
    
            public virtual double ComputePlayerScore(Player player, AiActor victim)
            {
                return 0.0;
            }
    
            public virtual void creatingMissionScript(AMission mission, int missionNumber)
            {
                mission.Init(this, missionNumber);
                this.missions.Add(mission);
            }
    
            public virtual void doSingleBattleSuccess(bool success)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnSingleBattleSuccess(success);
                }
            }
    
            public virtual ArrayList GetDamageInitiators(AiActor victim)
            {
                return null;
            }
    
            public virtual ArrayList GetDamageVictims()
            {
                return null;
            }
    
            public virtual ArrayList GetEnemyAirGroupIDs(Player player)
            {
                return null;
            }
    
            public virtual void Init(IGamePlay gamePlay)
            {
                this.GamePlay = gamePlay;
                this.Time = gamePlay.gpTime();
                this.Inited();
            }
    
            public virtual void Inited()
            {
            }
    
            public sealed override object InitializeLifetimeService()
            {
                return null;
            }
    
            public virtual void OnActorCreated(int missionNumber, string shortName, AiActor actor)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnActorCreated(missionNumber, shortName, actor);
                    }
                }
            }
    
            public virtual void OnActorDamaged(int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator, NamedDamageTypes damageType)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnActorDamaged(missionNumber, shortName, actor, initiator, damageType);
                    }
                }
            }
    
            public virtual void OnActorDead(int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator)
            {
                DamagerScore score = new DamagerScore(initiator, 1.0, this.Time.current());
                List<DamagerScore> damages = new List<DamagerScore>(1) {
                    score
                };
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnActorDead(missionNumber, shortName, actor, damages);
                    }
                }
            }
    
            public virtual void OnActorDestroyed(int missionNumber, string shortName, AiActor actor)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnActorDestroyed(missionNumber, shortName, actor);
                    }
                }
            }
    
            public virtual void OnActorTaskCompleted(int missionNumber, string shortName, AiActor actor)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnActorTaskCompleted(missionNumber, shortName, actor);
                    }
                }
            }
    
            public virtual void OnAiAirNewEnemy(AiAirEnemyElement element, int army)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnAiAirNewEnemy(element, army);
                }
            }
    
            public virtual void OnAircraftCrashLanded(int missionNumber, string shortName, AiAircraft aircraft)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftCrashLanded(missionNumber, shortName, aircraft);
                    }
                }
            }
    
            public virtual void OnAircraftCutLimb(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, LimbNames limbName)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftCutLimb(missionNumber, shortName, aircraft, initiator, limbName);
                    }
                }
            }
    
            public virtual void OnAircraftDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, NamedDamageTypes damageType)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftDamaged(missionNumber, shortName, aircraft, initiator, damageType);
                    }
                }
            }
    
            public virtual void OnAircraftKilled(int missionNumber, string shortName, AiAircraft aircraft)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftKilled(missionNumber, shortName, aircraft);
                    }
                }
            }
    
            public virtual void OnAircraftLanded(int missionNumber, string shortName, AiAircraft aircraft)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftLanded(missionNumber, shortName, aircraft);
                    }
                }
            }
    
            public virtual void OnAircraftLimbDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiLimbDamage limbDamage)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftLimbDamaged(missionNumber, shortName, aircraft, limbDamage);
                    }
                }
            }
    
            public virtual void OnAircraftTookOff(int missionNumber, string shortName, AiAircraft aircraft)
            {
                foreach (AMission mission in this.missions)
                {
                    if (mission.IsMissionListener(missionNumber))
                    {
                        mission.OnAircraftTookOff(missionNumber, shortName, aircraft);
                    }
                }
            }
    
            public virtual void OnAutopilotOff(AiActor actor, int placeIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnAutopilotOff(actor, placeIndex);
                }
            }
    
            public virtual void OnAutopilotOn(AiActor actor, int placeIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnAutopilotOn(actor, placeIndex);
                }
            }
    
            public virtual void OnBattleInit()
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnBattleInit();
                }
            }
    
            public virtual void OnBattleStarted()
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnBattleStarted();
                }
            }
    
            public virtual void OnBattleStoped()
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnBattleStoped();
                }
            }
    
            public virtual void OnCarter(AiActor actor, int placeIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnCarter(actor, placeIndex);
                }
            }
    
            public virtual void OnEventGame(GameEventId eventId, object eventArg0, object eventArg1, int eventArgInt)
            {
                int num;
                string str;
                switch (eventId)
                {
                    case GameEventId.BattleInit:
                        this.OnBattleInit();
                        return;
    
                    case GameEventId.BattleStarted:
                        this.OnBattleStarted();
                        return;
    
                    case GameEventId.BattleStoped:
                        this.OnBattleStoped();
                        return;
    
                    case GameEventId.MissionLoaded:
                        this.OnMissionLoaded(eventArgInt);
                        return;
    
                    case GameEventId.PlayerConnected:
                        this.OnPlayerConnected(eventArg0 as Player);
                        return;
    
                    case GameEventId.ClientAddInActivated:
                    case GameEventId.AdminIn:
                    case GameEventId.AdminOut:
                        break;
    
                    case GameEventId.PlayerDisconnected:
                        this.OnPlayerDisconnected(eventArg0 as Player, eventArg1 as string);
                        return;
    
                    case GameEventId.PlayerArmy:
                        this.OnPlayerArmy(eventArg0 as Player, eventArgInt);
                        return;
    
                    case GameEventId.ActorCreated:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnActorCreated(num, str, eventArg0 as AiActor);
                        return;
    
                    case GameEventId.ActorDestroyed:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnActorDestroyed(num, str, eventArg0 as AiActor);
                        return;
    
                    case GameEventId.ActorDamaged:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnActorDamaged(num, str, eventArg0 as AiActor, eventArg1 as AiDamageInitiator, (NamedDamageTypes) eventArgInt);
                        return;
    
                    case GameEventId.ActorDead:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnActorDead(num, str, eventArg0 as AiActor, eventArg1 as AiDamageInitiator);
                        return;
    
                    case GameEventId.ActorTaskCompleted:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnActorTaskCompleted(num, str, eventArg0 as AiActor);
                        return;
    
                    case GameEventId.Trigger:
                        ActorName.Parce(eventArg0 as string, out num, out str);
                        this.OnTrigger(num, str, eventArgInt != 0);
                        return;
    
                    case GameEventId.AircraftDamaged:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftDamaged(num, str, eventArg0 as AiAircraft, eventArg1 as AiDamageInitiator, (NamedDamageTypes) eventArgInt);
                        return;
    
                    case GameEventId.AircraftLimbDamaged:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftLimbDamaged(num, str, eventArg0 as AiAircraft, eventArg1 as AiLimbDamage);
                        return;
    
                    case GameEventId.AircraftCutLimb:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftCutLimb(num, str, eventArg0 as AiAircraft, eventArg1 as AiDamageInitiator, (LimbNames) eventArgInt);
                        return;
    
                    case GameEventId.AircraftTookOff:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftTookOff(num, str, eventArg0 as AiAircraft);
                        return;
    
                    case GameEventId.AircraftLanded:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftLanded(num, str, eventArg0 as AiAircraft);
                        return;
    
                    case GameEventId.AircraftCrashLanded:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftCrashLanded(num, str, eventArg0 as AiAircraft);
                        return;
    
                    case GameEventId.AircraftKilled:
                        ActorName.Parce((eventArg0 as AiActor).Name(), out num, out str);
                        this.OnAircraftKilled(num, str, eventArg0 as AiAircraft);
                        return;
    
                    case GameEventId.PersonMoved:
                        this.OnPersonMoved(eventArg0 as AiPerson, eventArg1 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.PersonHealth:
                        this.OnPersonHealth(eventArg0 as AiPerson, eventArg1 as AiDamageInitiator, ((float) eventArgInt) / 255f);
                        return;
    
                    case GameEventId.PersonParachuteLanded:
                        this.OnPersonParachuteLanded(eventArg0 as AiPerson);
                        return;
    
                    case GameEventId.PersonParachuteFailed:
                        this.OnPersonParachuteFailed(eventArg0 as AiPerson);
                        return;
    
                    case GameEventId.PlaceEnter:
                        this.OnPlaceEnter(eventArg0 as Player, eventArg1 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.PlaceLeave:
                        this.OnPlaceLeave(eventArg0 as Player, eventArg1 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.Carter:
                        this.OnCarter(eventArg0 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.AutopilotOn:
                        this.OnAutopilotOn(eventArg0 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.AutopilotOff:
                        this.OnAutopilotOff(eventArg0 as AiActor, eventArgInt);
                        return;
    
                    case GameEventId.AiAirNewEnemy:
                        this.OnAiAirNewEnemy(eventArg0 as AiAirEnemyElement, eventArgInt);
                        return;
    
                    case GameEventId.OrderMissionMenuSelected:
                        this.OnOrderMissionMenuSelected(eventArg0 as Player, (int) eventArg1, eventArgInt);
                        break;
    
                    default:
                        return;
                }
            }
    
            public virtual void OnMissionLoaded(int missionNumber)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnMissionLoaded(missionNumber);
                }
            }
    
            public virtual void OnOrderMissionMenuSelected(Player player, int ID, int menuItemIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnOrderMissionMenuSelected(player, ID, menuItemIndex);
                }
            }
    
            public virtual void OnPersonHealth(AiPerson person, AiDamageInitiator initiator, float deltaHealth)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPersonHealth(person, initiator, deltaHealth);
                }
            }
    
            public virtual void OnPersonMoved(AiPerson person, AiActor fromCart, int fromPlaceIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPersonMoved(person, fromCart, fromPlaceIndex);
                }
            }
    
            public virtual void OnPersonParachuteFailed(AiPerson person)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPersonParachuteFailed(person);
                }
            }
    
            public virtual void OnPersonParachuteLanded(AiPerson person)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPersonParachuteLanded(person);
                }
            }
    
            public virtual void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPlaceEnter(player, actor, placeIndex);
                }
            }
    
            public virtual void OnPlaceLeave(Player player, AiActor actor, int placeIndex)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPlaceLeave(player, actor, placeIndex);
                }
            }
    
            public virtual void OnPlayerArmy(Player player, int army)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPlayerArmy(player, army);
                }
            }
    
            public virtual void OnPlayerConnected(Player player)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPlayerConnected(player);
                }
            }
    
            public virtual void OnPlayerDisconnected(Player player, string diagnostic)
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnPlayerDisconnected(player, diagnostic);
                }
            }
    
            public virtual void OnTickGame()
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnTickGame();
                }
                this.TimeoutProcess();
            }
    
            public virtual void OnTickReal()
            {
                foreach (AMission mission in this.missions)
                {
                    mission.OnTickReal();
                }
            }
    
            public virtual void OnTrigger(int missionNumber, string shortName, bool active)
            {
                if (this.missions.Count > 0)
                {
                    foreach (AMission mission in this.missions)
                    {
                        if (mission.IsMissionListener(missionNumber))
                        {
                            mission.OnTrigger(missionNumber, shortName, active);
                        }
                    }
                }
                else if (active)
                {
                    AiAction action = this.GamePlay.gpGetAction(ActorName.Full(missionNumber, shortName));
                    if (action != null)
                    {
                        action.Do();
                    }
                }
            }
    
            public virtual void Timeout(double sec, DoTimeout doTimeout)
            {
                TimeoutItem item = new TimeoutItem(this.Time.current() + sec, doTimeout);
                TimeoutItem item2 = null;
                TimeoutItem timeoutList = this.timeoutList;
                while ((timeoutList != null) && (item.time >= timeoutList.time))
                {
                    item2 = timeoutList;
                    timeoutList = timeoutList.next;
                }
                if (item2 != null)
                {
                    item.next = item2.next;
                    item2.next = item;
                }
                else
                {
                    this.timeoutList = item;
                    item.next = timeoutList;
                }
            }
    
            protected virtual void TimeoutProcess()
            {
                if (this.timeoutList != null)
                {
                    double num = this.Time.current();
                    while (this.timeoutList != null)
                    {
                        if (this.timeoutList.time > num)
                        {
                            return;
                        }
                        TimeoutItem timeoutList = this.timeoutList;
                        this.timeoutList = timeoutList.next;
                        try
                        {
                            timeoutList.doTimeout();
                            continue;
                        }
                        catch
                        {
                            continue;
                        }
                    }
                }
            }
    
            public IGamePlay GamePlay { get; private set; }
    
            public ITime Time { get; private set; }
    
            protected class TimeoutItem
            {
                public DoTimeout doTimeout;
                public ABattle.TimeoutItem next = null;
                public double time;
    
                public TimeoutItem(double time, DoTimeout doTimeout)
                {
                    this.time = time;
                    this.doTimeout = doTimeout;
                }
            }
        }
    }
    AMission

    Code:
    namespace maddox.game
    {
        using maddox.game.world;
        using part;
        using System;
        using System.Collections.Generic;
        using System.Runtime.CompilerServices;
    
        public abstract class AMission
        {
            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 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 OnTickGame()
            {
            }
    
            public virtual void OnTickReal()
            {
            }
    
            public virtual void OnTrigger(int missionNumber, string shortName, bool active)
            {
            }
    
            public virtual void Timeout(double sec, DoTimeout doTimeout)
            {
                this.Battle.Timeout(sec, doTimeout);
            }
    
            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;
                }
            }
        }
    }
    ActorName

    Code:
    namespace maddox.game
    {
        using System;
        using System.Runtime.InteropServices;
    
        public static class ActorName
        {
            public static string Full(int missionNumber, string shortActorName)
            {
                return (missionNumber + ":" + shortActorName);
            }
    
            public static bool IsShort(string actorName)
            {
                return (actorName.IndexOf(':') < 0);
            }
    
            public static int MissionNumber(string fullActorName)
            {
                int num2;
                int index = fullActorName.IndexOf(':');
                if ((index > 0) && int.TryParse(fullActorName.Substring(0, index), out num2))
                {
                    return num2;
                }
                return 0;
            }
    
            public static void Parce(string fullActorName, out int missionNumber, out string shortName)
            {
                int index = fullActorName.IndexOf(':');
                if (index < 0)
                {
                    missionNumber = 0;
                    shortName = fullActorName;
                }
                else
                {
                    int num2;
                    if (int.TryParse(fullActorName.Substring(0, index), out num2))
                    {
                        missionNumber = num2;
                    }
                    else
                    {
                        missionNumber = 0;
                    }
                    shortName = fullActorName.Substring(index + 1);
                }
            }
    
            public static string Short(string fullActorName)
            {
                int index = fullActorName.IndexOf(':');
                if (index < 0)
                {
                    return fullActorName;
                }
                return fullActorName.Substring(index + 1);
            }
        }
    }
    AiAction

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public interface AiAIChief : AiGroundGroup, AiGroup, AiActor
        {
            double FieldR();
        }
    }
    AiActor

    Code:
    namespace maddox.game.world
    {
        using maddox.GP;
        using System;
    
        public interface AiActor
        {
            int Army();
            AiGroup Group();
            bool IsAlive();
            bool IsTaskComplete();
            bool IsValid();
            string Name();
            Point3d Pos();
    
            object Tag { get; set; }
        }
    }
    AiAIChief

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public interface AiAIChief : AiGroundGroup, AiGroup, AiActor
        {
            double FieldR();
        }
    }
    AiAIChiefType

    Code:
     
    namespace maddox.game.world
    {
        using System;
    
        public static class AiAIChiefType
        {
            public const int GROUND = 1;
        }
    }
    AiAircraft

    Code:
    namespace maddox.game.world
    {
        using part;
        using System;
    
        public interface AiAircraft : AiCart, AiActor
        {
            AiAirGroup AirGroup();
            string CallSign();
            int CallSignNumber();
            void cutLimb(LimbNames limb);
            double getParameter(ParameterTypes type, int subtype);
            void hitLimb(LimbNames limb, double value);
            void hitNamed(NamedDamageTypes type);
            string HullNumber();
            bool IsAirborne();
            bool IsKilled();
            maddox.game.world.Regiment Regiment();
            void SayToGroup(AiAirGroup group, string msg);
            AircraftType Type();
            string TypedName();
        }
    }
    AiAirEnemyElement

    Code:
    namespace maddox.game.world
    {
        using System;
    
        [Serializable]
        public class AiAirEnemyElement
        {
            public int agID;
            public int army;
            public int state;
        }
    }
    AiAirGroup

    Code:
    namespace maddox.game.world
    {
        using maddox.GP;
        using System;
    
        public interface AiAirGroup : AiGroup, AiActor
        {
            int aircraftEnginesNum();
            AiAirGroup[] attachedGroups();
            void calcDangerType(double[] dt);
            AiAirGroup[] candidates();
            void changeGoalTarget(AiActor taskArg);
            AiAirGroup clientGroup();
            AiAirGroup[] daughterGroups();
            AiAirGroup[] enemies();
            int getArmy();
            AiAirGroupTask getTask();
            bool hasBombs();
            bool hasBombsInInternalBays();
            bool hasCourseCannon();
            bool hasCourseTracers();
            bool hasCourseWeapon();
            bool hasPayload();
            bool hasRockets();
            bool hasTorpedos();
            int ID();
            bool isAircraftType(AircraftType t);
            AiAirGroup leaderGroup();
            AiAirGroup motherGroup();
            void SayEnemyGroupChangedCourse(EnemyAirInterf EE);
            void SayEnemyGroupChangedHeight(EnemyAirInterf EE);
            void SayEnemyGroupChangedIdent(EnemyAirInterf EE);
            void SayNewEnemyGroup(EnemyAirInterf EE);
            void setTask(AiAirGroupTask task, AiAirGroup taskArg);
            Vector3d Vwld();
    
            int DiedAircrafts { get; }
    
            int InitNOfAirc { get; }
    
            int NOfAirc { get; }
        }
    }
    AiAirGroupTask

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public enum AiAirGroupTask
        {
            UNKNOWN,
            FLY_WAYPOINT,
            ATTACH,
            DEFENDING,
            ATTACK_AIR,
            ATTACK_GROUND,
            PURSUIT,
            TAKEOFF,
            RETURN,
            LANDING,
            DO_NOTHING
        }
    }
    AiAirport

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public interface AiAirport : AiActor
        {
            double CoverageR();
            double FieldR();
            int ParkCountAll();
            int ParkCountFree();
            AiActor[] QueueLanding();
            AiActor[] QueueTakeoff();
            int StripCount();
            double StripDirection(int indxStrip);
            double StripLength(int indxStrip);
            int StripState(int indxStrip);
            double StripWidth(int indxStrip);
            int Type();
        }
    }
    AiAirportStripState

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public static class AiAirportStripState
        {
            public const int BLOCKED = 3;
            public const int DAMAGED = 4;
            public const int EMPTY = 0;
            public const int LANDING = 2;
            public const int TAKEOFF = 1;
        }
    }
    AiAirportType

    Code:
    namespace maddox.game.world
    {
        using System;
    
        public static class AiAirportType
        {
            public const int CARRIER = 4;
            public const int GROUND = 1;
            public const int MARITIME = 2;
        }
    }
    AiAirWayPoint

    Code:
    namespace maddox.game.world
    {
        using maddox.GP;
        using System;
    
        [Serializable]
        public class AiAirWayPoint : AiWayPoint
        {
            public AiAirWayPointType Action;
            public AiAirWayPointGAttackPasses GAttackPasses;
            public AiAirWayPointGAttackType GAttackType;
            public AiActor Target;
    
            public AiAirWayPoint(ref Point3d p, double speed) : base(ref p, speed)
            {
            }
        }
    }
    AiDamageInitiator

    Code:
    namespace maddox.game.world
    {
        using maddox.game;
        using part;
        using System;
        using System.Runtime.CompilerServices;
    
        [Serializable]
        public class AiDamageInitiator
        {
            public AiDamageInitiator(AiActor Actor, AiPerson Person, maddox.game.Player Player, AiDamageTool Tool)
            {
                this.Actor = Actor;
                this.Person = Person;
                this.Player = Player;
                this.Tool = Tool;
            }
    
            public static string DamageNameById(NamedDamageTypes DamageId)
            {
                return DamageId.ToString();
            }
    
            public AiActor Actor { get; private set; }
    
            public AiPerson Person { get; private set; }
    
            public maddox.game.Player Player { get; private set; }
    
            public AiDamageTool Tool { get; private set; }
        }
    }
    GameEventID

    Code:
    namespace maddox.game
    {
        using System;
    
        public enum GameEventId
        {
            GameStarted,
            GameStoped,
            BattleInit,
            BattleStarted,
            BattleStoped,
            MissionLoaded,
            PlayerConnected,
            ClientAddInActivated,
            PlayerDisconnected,
            PlayerArmy,
            AdminIn,
            AdminOut,
            ActorCreated,
            ActorDestroyed,
            ActorDamaged,
            ActorDead,
            ActorTaskCompleted,
            Trigger,
            AircraftDamaged,
            AircraftLimbDamaged,
            AircraftCutLimb,
            AircraftTookOff,
            AircraftLanded,
            AircraftCrashLanded,
            AircraftKilled,
            PersonMoved,
            PersonHealth,
            PersonParachuteLanded,
            PersonParachuteFailed,
            PlaceEnter,
            PlaceLeave,
            Carter,
            AutopilotOn,
            AutopilotOff,
            AiAirNewEnemy,
            OrderMissionMenuSelected
        }
    }
    Plane Damage Types

    Code:
    namespace part
    {
        using System;
        using System.Reflection;
    
        [Obfuscation(Exclude=true, ApplyToMembers=true)]
        public enum NamedDamageTypes
        {
            Nil,
            FuelPumpFailure,
            FuelTank0TinyLeak,
            FuelTank1TinyLeak,
            FuelTank2TinyLeak,
            FuelTank3TinyLeak,
            FuelTank4TinyLeak,
            FuelTank5TinyLeak,
            FuelTank6TinyLeak,
            FuelTank7TinyLeak,
            FuelTank0SmallLeak,
            FuelTank1SmallLeak,
            FuelTank2SmallLeak,
            FuelTank3SmallLeak,
            FuelTank4SmallLeak,
            FuelTank5SmallLeak,
            FuelTank6SmallLeak,
            FuelTank7SmallLeak,
            FuelTank0LargeLeak,
            FuelTank1LargeLeak,
            FuelTank2LargeLeak,
            FuelTank3LargeLeak,
            FuelTank4LargeLeak,
            FuelTank5LargeLeak,
            FuelTank6LargeLeak,
            FuelTank7LargeLeak,
            FuelTank0Fire,
            FuelTank1Fire,
            FuelTank2Fire,
            FuelTank3Fire,
            FuelTank4Fire,
            FuelTank5Fire,
            FuelTank6Fire,
            FuelTank7Fire,
            FuelTank0Exploded,
            FuelTank1Exploded,
            FuelTank2Exploded,
            FuelTank3Exploded,
            FuelTank4Exploded,
            FuelTank5Exploded,
            FuelTank6Exploded,
            FuelTank7Exploded,
            FuelTank0HosePerforated,
            FuelTank1HosePerforated,
            FuelTank2HosePerforated,
            FuelTank3HosePerforated,
            FuelTank4HosePerforated,
            FuelTank5HosePerforated,
            FuelTank6HosePerforated,
            FuelTank7HosePerforated,
            FuelTank0PumpFailure,
            FuelTank1PumpFailure,
            FuelTank2PumpFailure,
            FuelTank3PumpFailure,
            FuelTank4PumpFailure,
            FuelTank5PumpFailure,
            FuelTank6PumpFailure,
            FuelTank7PumpFailure,
            ElecGeneratorFailure,
            ElecBatteryFailure,
            ElecPrimaryFailure,
            ElecSecondaryFailure,
            ElecMasterCompassFailure,
            ElecWeaponryFailure,
            ElecPriNavigationFailure,
            ElecSecNavigationFailure,
            ElecTransceiverFailure,
            ElecIlluminationFailure,
            HydraulicsPumpFailure,
            HydraulicsPrimaryHosePerforated,
            HydraulicsPistonOpened,
            HydraulicsEmergencyFailure,
            HydraulicsTankPerforated,
            PneumaticsCompressorFailure,
            PneumaticsPrimaryContainerPerforated,
            PneumaticsSecondaryContainerPerforated,
            PneumaticsPrimaryHosePerforated,
            PneumaticsSecondaryHosePerforated,
            Machinegun00Failure,
            Machinegun01Failure,
            Machinegun02Failure,
            Machinegun03Failure,
            Machinegun04Failure,
            Machinegun05Failure,
            Machinegun06Failure,
            Machinegun07Failure,
            Machinegun08Failure,
            Machinegun09Failure,
            Machinegun10Failure,
            Machinegun11Failure,
            Machinegun00BeltBroken,
            Machinegun01BeltBroken,
            Machinegun02BeltBroken,
            Machinegun03BeltBroken,
            Machinegun04BeltBroken,
            Machinegun05BeltBroken,
            Machinegun06BeltBroken,
            Machinegun07BeltBroken,
            Machinegun08BeltBroken,
            Machinegun09BeltBroken,
            Machinegun10BeltBroken,
            Machinegun11BeltBroken,
            Machinegun00Jammed,
            Machinegun01Jammed,
            Machinegun02Jammed,
            Machinegun03Jammed,
            Machinegun04Jammed,
            Machinegun05Jammed,
            Machinegun06Jammed,
            Machinegun07Jammed,
            Machinegun08Jammed,
            Machinegun09Jammed,
            Machinegun10Jammed,
            Machinegun11Jammed,
            Machinegun00Charged,
            Machinegun01Charged,
            Machinegun02Charged,
            Machinegun03Charged,
            Machinegun04Charged,
            Machinegun05Charged,
            Machinegun06Charged,
            Machinegun07Charged,
            Machinegun08Charged,
            Machinegun09Charged,
            Machinegun10Charged,
            Machinegun11Charged,
            Machinegun00LineDamaged,
            Machinegun01LineDamaged,
            Machinegun02LineDamaged,
            Machinegun03LineDamaged,
            Machinegun04LineDamaged,
            Machinegun05LineDamaged,
            Machinegun06LineDamaged,
            Machinegun07LineDamaged,
            Machinegun08LineDamaged,
            Machinegun09LineDamaged,
            Machinegun10LineDamaged,
            Machinegun11LineDamaged,
            ControlsGenericKickdown,
            ControlsAileronsDisabled,
            ControlsElevatorDisabled,
            ControlsRudderDisabled,
            LandingFlapsPistonFailure1,
            LandingFlapsPistonFailure2,
            LandingFlapsKinematicFailure1,
            LandingFlapsKinematicFailure2,
            LandingFlapsDriveFailure,
            LandingFlapsHosePerforated,
            AirbrakeHosePerforated,
            AirbrakeDriveFailure,
            AirbrakePistonFailure,
            WheelBrakesFailureL,
            WheelBrakesFailureR,
            WheelBrakesTotalFailure,
            WheelBrakesHosePerforated,
            UndercarriageShockFailureL,
            UndercarriageShockFailureR,
            UndercarriageShockFailureC,
            UndercarriageUpLockFailureL,
            UndercarriageUpLockFailureR,
            UndercarriageUpLockFailureC,
            UndercarriageDownLockFailureL,
            UndercarriageDownLockFailureR,
            UndercarriageDownLockFailureC,
            UndercarriageKinematicFailureL,
            UndercarriageKinematicFailureR,
            UndercarriageKinematicFailureC,
            UndercarriageHosePerforated,
            UndercarriageDriveDamaged,
            CockpitDamageFlag00,
            CockpitDamageFlag01,
            CockpitDamageFlag02,
            CockpitDamageFlag03,
            CockpitDamageFlag04,
            CockpitDamageFlag05,
            CockpitDamageFlag06,
            CockpitDamageFlag07,
            CockpitDamageFlag08,
            CockpitDamageFlag09,
            CockpitDamageFlag10,
            CockpitDamageFlag11,
            CockpitDamageFlag12,
            CockpitDamageFlag13,
            CockpitDamageFlag14,
            Eng0TotalFailure,
            Eng0TotalSeizure,
            Eng0IntakeBurnt,
            Eng0CompressorFailure,
            Eng0CompressorGovernorFailure,
            Eng0CompressorSeizure,
            Eng0IntercoolerBurnt,
            Eng0CarbFailure,
            Eng0CarbControlsFailure,
            Eng0FuelLinePerforated,
            Eng0FuelPumpFailure,
            Eng0FuelSecondariesFire,
            Eng0Magneto0Failure,
            Eng0Magneto1Failure,
            Eng0OilPumpFailure,
            Eng0OilRadiatorPerforated,
            Eng0OilLineBroken,
            Eng0OilGasketLeak,
            Eng0OilSecondariesFire,
            Eng0OilSecondariesExtinguished,
            Eng0OilTankPerforated,
            Eng0WaterPumpFailure,
            Eng0WaterRadiatorPerforated,
            Eng0WaterLineBroken,
            Eng0WaterTankPerforated,
            Eng0WaterJacketBroken,
            Eng0CylinderHeadFire,
            Eng0CylinderHeadExtinguished,
            Eng0ExhaustHeadFailure,
            Eng0GovernorFailure,
            Eng0GovernorSeizure,
            Eng0ThrottleControlBroken,
            Eng0PropControlBroken,
            Eng0TretiaryControlBroken,
            Eng0PropBlade0Broken,
            Eng0PropBlade1Broken,
            Eng0PropBlade2Broken,
            Eng0PropBlade3Broken,
            Eng0Plug00Failure,
            Eng0Plug01Failure,
            Eng0Plug02Failure,
            Eng0Plug03Failure,
            Eng0Plug04Failure,
            Eng0Plug05Failure,
            Eng0Plug06Failure,
            Eng0Plug07Failure,
            Eng0Plug08Failure,
            Eng0Plug09Failure,
            Eng0Plug10Failure,
            Eng0Plug11Failure,
            Eng0Plug12Failure,
            Eng0Plug13Failure,
            Eng0Plug14Failure,
            Eng0Plug15Failure,
            Eng0Plug16Failure,
            Eng0Plug17Failure,
            Eng1TotalFailure,
            Eng1TotalSeizure,
            Eng1IntakeBurnt,
            Eng1CompressorFailure,
            Eng1CompressorGovernorFailure,
            Eng1CompressorSeizure,
            Eng1IntercoolerBurnt,
            Eng1CarbFailure,
            Eng1CarbControlsFailure,
            Eng1FuelLinePerforated,
            Eng1FuelPumpFailure,
            Eng1FuelSecondariesFire,
            Eng1Magneto0Failure,
            Eng1Magneto1Failure,
            Eng1OilPumpFailure,
            Eng1OilRadiatorPerforated,
            Eng1OilLineBroken,
            Eng1OilGasketLeak,
            Eng1OilSecondariesFire,
            Eng1OilSecondariesExtinguished,
            Eng1OilTankPerforated,
            Eng1WaterPumpFailure,
            Eng1WaterRadiatorPerforated,
            Eng1WaterLineBroken,
            Eng1WaterTankPerforated,
            Eng1WaterJacketBroken,
            Eng1CylinderHeadFire,
            Eng1CylinderHeadExtinguished,
            Eng1ExhaustHeadFailure,
            Eng1GovernorFailure,
            Eng1GovernorSeizure,
            Eng1ThrottleControlBroken,
            Eng1PropControlBroken,
            Eng1TretiaryControlBroken,
            Eng1PropBlade0Broken,
            Eng1PropBlade1Broken,
            Eng1PropBlade2Broken,
            Eng1PropBlade3Broken,
            Eng1Plug00Failure,
            Eng1Plug01Failure,
            Eng1Plug02Failure,
            Eng1Plug03Failure,
            Eng1Plug04Failure,
            Eng1Plug05Failure,
            Eng1Plug06Failure,
            Eng1Plug07Failure,
            Eng1Plug08Failure,
            Eng1Plug09Failure,
            Eng1Plug10Failure,
            Eng1Plug11Failure,
            Eng1Plug12Failure,
            Eng1Plug13Failure,
            Eng1Plug14Failure,
            Eng1Plug15Failure,
            Eng1Plug16Failure,
            Eng1Plug17Failure,
            Eng2TotalFailure,
            Eng2TotalSeizure,
            Eng2IntakeBurnt,
            Eng2CompressorFailure,
            Eng2CompressorGovernorFailure,
            Eng2CompressorSeizure,
            Eng2IntercoolerBurnt,
            Eng2CarbFailure,
            Eng2CarbControlsFailure,
            Eng2FuelLinePerforated,
            Eng2FuelPumpFailure,
            Eng2FuelSecondariesFire,
            Eng2Magneto0Failure,
            Eng2Magneto1Failure,
            Eng2OilPumpFailure,
            Eng2OilRadiatorPerforated,
            Eng2OilLineBroken,
            Eng2OilGasketLeak,
            Eng2OilSecondariesFire,
            Eng2OilSecondariesExtinguished,
            Eng2OilTankPerforated,
            Eng2WaterPumpFailure,
            Eng2WaterRadiatorPerforated,
            Eng2WaterLineBroken,
            Eng2WaterTankPerforated,
            Eng2WaterJacketBroken,
            Eng2CylinderHeadFire,
            Eng2CylinderHeadExtinguished,
            Eng2ExhaustHeadFailure,
            Eng2GovernorFailure,
            Eng2GovernorSeizure,
            Eng2ThrottleControlBroken,
            Eng2PropControlBroken,
            Eng2TretiaryControlBroken,
            Eng2PropBlade0Broken,
            Eng2PropBlade1Broken,
            Eng2PropBlade2Broken,
            Eng2PropBlade3Broken,
            Eng2Plug00Failure,
            Eng2Plug01Failure,
            Eng2Plug02Failure,
            Eng2Plug03Failure,
            Eng2Plug04Failure,
            Eng2Plug05Failure,
            Eng2Plug06Failure,
            Eng2Plug07Failure,
            Eng2Plug08Failure,
            Eng2Plug09Failure,
            Eng2Plug10Failure,
            Eng2Plug11Failure,
            Eng2Plug12Failure,
            Eng2Plug13Failure,
            Eng2Plug14Failure,
            Eng2Plug15Failure,
            Eng2Plug16Failure,
            Eng2Plug17Failure,
            Eng3TotalFailure,
            Eng3TotalSeizure,
            Eng3IntakeBurnt,
            Eng3CompressorFailure,
            Eng3CompressorGovernorFailure,
            Eng3CompressorSeizure,
            Eng3IntercoolerBurnt,
            Eng3CarbFailure,
            Eng3CarbControlsFailure,
            Eng3FuelLinePerforated,
            Eng3FuelPumpFailure,
            Eng3FuelSecondariesFire,
            Eng3Magneto0Failure,
            Eng3Magneto1Failure,
            Eng3OilPumpFailure,
            Eng3OilRadiatorPerforated,
            Eng3OilLineBroken,
            Eng3OilGasketLeak,
            Eng3OilSecondariesFire,
            Eng3OilSecondariesExtinguished,
            Eng3OilTankPerforated,
            Eng3WaterPumpFailure,
            Eng3WaterRadiatorPerforated,
            Eng3WaterLineBroken,
            Eng3WaterTankPerforated,
            Eng3WaterJacketBroken,
            Eng3CylinderHeadFire,
            Eng3CylinderHeadExtinguished,
            Eng3ExhaustHeadFailure,
            Eng3GovernorFailure,
            Eng3GovernorSeizure,
            Eng3ThrottleControlBroken,
            Eng3PropControlBroken,
            Eng3TretiaryControlBroken,
            Eng3PropBlade0Broken,
            Eng3PropBlade1Broken,
            Eng3PropBlade2Broken,
            Eng3PropBlade3Broken,
            Eng3Plug00Failure,
            Eng3Plug01Failure,
            Eng3Plug02Failure,
            Eng3Plug03Failure,
            Eng3Plug04Failure,
            Eng3Plug05Failure,
            Eng3Plug06Failure,
            Eng3Plug07Failure,
            Eng3Plug08Failure,
            Eng3Plug09Failure,
            Eng3Plug10Failure,
            Eng3Plug11Failure,
            Eng3Plug12Failure,
            Eng3Plug13Failure,
            Eng3Plug14Failure,
            Eng3Plug15Failure,
            Eng3Plug16Failure,
            Eng3Plug17Failure,
            Eng4TotalFailure,
            Eng4TotalSeizure,
            Eng4IntakeBurnt,
            Eng4CompressorFailure,
            Eng4CompressorGovernorFailure,
            Eng4CompressorSeizure,
            Eng4IntercoolerBurnt,
            Eng4CarbFailure,
            Eng4CarbControlsFailure,
            Eng4FuelLinePerforated,
            Eng4FuelPumpFailure,
            Eng4FuelSecondariesFire,
            Eng4Magneto0Failure,
            Eng4Magneto1Failure,
            Eng4OilPumpFailure,
            Eng4OilRadiatorPerforated,
            Eng4OilLineBroken,
            Eng4OilGasketLeak,
            Eng4OilSecondariesFire,
            Eng4OilSecondariesExtinguished,
            Eng4OilTankPerforated,
            Eng4WaterPumpFailure,
            Eng4WaterRadiatorPerforated,
            Eng4WaterLineBroken,
            Eng4WaterTankPerforated,
            Eng4WaterJacketBroken,
            Eng4CylinderHeadFire,
            Eng4CylinderHeadExtinguished,
            Eng4ExhaustHeadFailure,
            Eng4GovernorFailure,
            Eng4GovernorSeizure,
            Eng4ThrottleControlBroken,
            Eng4PropControlBroken,
            Eng4TretiaryControlBroken,
            Eng4PropBlade0Broken,
            Eng4PropBlade1Broken,
            Eng4PropBlade2Broken,
            Eng4PropBlade3Broken,
            Eng4Plug00Failure,
            Eng4Plug01Failure,
            Eng4Plug02Failure,
            Eng4Plug03Failure,
            Eng4Plug04Failure,
            Eng4Plug05Failure,
            Eng4Plug06Failure,
            Eng4Plug07Failure,
            Eng4Plug08Failure,
            Eng4Plug09Failure,
            Eng4Plug10Failure,
            Eng4Plug11Failure,
            Eng4Plug12Failure,
            Eng4Plug13Failure,
            Eng4Plug14Failure,
            Eng4Plug15Failure,
            Eng4Plug16Failure,
            Eng4Plug17Failure,
            Eng5TotalFailure,
            Eng5TotalSeizure,
            Eng5IntakeBurnt,
            Eng5CompressorFailure,
            Eng5CompressorGovernorFailure,
            Eng5CompressorSeizure,
            Eng5IntercoolerBurnt,
            Eng5CarbFailure,
            Eng5CarbControlsFailure,
            Eng5FuelLinePerforated,
            Eng5FuelPumpFailure,
            Eng5FuelSecondariesFire,
            Eng5Magneto0Failure,
            Eng5Magneto1Failure,
            Eng5OilPumpFailure,
            Eng5OilRadiatorPerforated,
            Eng5OilLineBroken,
            Eng5OilGasketLeak,
            Eng5OilSecondariesFire,
            Eng5OilSecondariesExtinguished,
            Eng5OilTankPerforated,
            Eng5WaterPumpFailure,
            Eng5WaterRadiatorPerforated,
            Eng5WaterLineBroken,
            Eng5WaterTankPerforated,
            Eng5WaterJacketBroken,
            Eng5CylinderHeadFire,
            Eng5CylinderHeadExtinguished,
            Eng5ExhaustHeadFailure,
            Eng5GovernorFailure,
            Eng5GovernorSeizure,
            Eng5ThrottleControlBroken,
            Eng5PropControlBroken,
            Eng5TretiaryControlBroken,
            Eng5PropBlade0Broken,
            Eng5PropBlade1Broken,
            Eng5PropBlade2Broken,
            Eng5PropBlade3Broken,
            Eng5Plug00Failure,
            Eng5Plug01Failure,
            Eng5Plug02Failure,
            Eng5Plug03Failure,
            Eng5Plug04Failure,
            Eng5Plug05Failure,
            Eng5Plug06Failure,
            Eng5Plug07Failure,
            Eng5Plug08Failure,
            Eng5Plug09Failure,
            Eng5Plug10Failure,
            Eng5Plug11Failure,
            Eng5Plug12Failure,
            Eng5Plug13Failure,
            Eng5Plug14Failure,
            Eng5Plug15Failure,
            Eng5Plug16Failure,
            Eng5Plug17Failure,
            Eng6TotalFailure,
            Eng6TotalSeizure,
            Eng6IntakeBurnt,
            Eng6CompressorFailure,
            Eng6CompressorGovernorFailure,
            Eng6CompressorSeizure,
            Eng6IntercoolerBurnt,
            Eng6CarbFailure,
            Eng6CarbControlsFailure,
            Eng6FuelLinePerforated,
            Eng6FuelPumpFailure,
            Eng6FuelSecondariesFire,
            Eng6Magneto0Failure,
            Eng6Magneto1Failure,
            Eng6OilPumpFailure,
            Eng6OilRadiatorPerforated,
            Eng6OilLineBroken,
            Eng6OilGasketLeak,
            Eng6OilSecondariesFire,
            Eng6OilSecondariesExtinguished,
            Eng6OilTankPerforated,
            Eng6WaterPumpFailure,
            Eng6WaterRadiatorPerforated,
            Eng6WaterLineBroken,
            Eng6WaterTankPerforated,
            Eng6WaterJacketBroken,
            Eng6CylinderHeadFire,
            Eng6CylinderHeadExtinguished,
            Eng6ExhaustHeadFailure,
            Eng6GovernorFailure,
            Eng6GovernorSeizure,
            Eng6ThrottleControlBroken,
            Eng6PropControlBroken,
            Eng6TretiaryControlBroken,
            Eng6PropBlade0Broken,
            Eng6PropBlade1Broken,
            Eng6PropBlade2Broken,
            Eng6PropBlade3Broken,
            Eng6Plug00Failure,
            Eng6Plug01Failure,
            Eng6Plug02Failure,
            Eng6Plug03Failure,
            Eng6Plug04Failure,
            Eng6Plug05Failure,
            Eng6Plug06Failure,
            Eng6Plug07Failure,
            Eng6Plug08Failure,
            Eng6Plug09Failure,
            Eng6Plug10Failure,
            Eng6Plug11Failure,
            Eng6Plug12Failure,
            Eng6Plug13Failure,
            Eng6Plug14Failure,
            Eng6Plug15Failure,
            Eng6Plug16Failure,
            Eng6Plug17Failure,
            Eng7TotalFailure,
            Eng7TotalSeizure,
            Eng7IntakeBurnt,
            Eng7CompressorFailure,
            Eng7CompressorGovernorFailure,
            Eng7CompressorSeizure,
            Eng7IntercoolerBurnt,
            Eng7CarbFailure,
            Eng7CarbControlsFailure,
            Eng7FuelLinePerforated,
            Eng7FuelPumpFailure,
            Eng7FuelSecondariesFire,
            Eng7Magneto0Failure,
            Eng7Magneto1Failure,
            Eng7OilPumpFailure,
            Eng7OilRadiatorPerforated,
            Eng7OilLineBroken,
            Eng7OilGasketLeak,
            Eng7OilSecondariesFire,
            Eng7OilSecondariesExtinguished,
            Eng7OilTankPerforated,
            Eng7WaterPumpFailure,
            Eng7WaterRadiatorPerforated,
            Eng7WaterLineBroken,
            Eng7WaterTankPerforated,
            Eng7WaterJacketBroken,
            Eng7CylinderHeadFire,
            Eng7CylinderHeadExtinguished,
            Eng7ExhaustHeadFailure,
            Eng7GovernorFailure,
            Eng7GovernorSeizure,
            Eng7ThrottleControlBroken,
            Eng7PropControlBroken,
            Eng7TretiaryControlBroken,
            Eng7PropBlade0Broken,
            Eng7PropBlade1Broken,
            Eng7PropBlade2Broken,
            Eng7PropBlade3Broken,
            Eng7Plug00Failure,
            Eng7Plug01Failure,
            Eng7Plug02Failure,
            Eng7Plug03Failure,
            Eng7Plug04Failure,
            Eng7Plug05Failure,
            Eng7Plug06Failure,
            Eng7Plug07Failure,
            Eng7Plug08Failure,
            Eng7Plug09Failure,
            Eng7Plug10Failure,
            Eng7Plug11Failure,
            Eng7Plug12Failure,
            Eng7Plug13Failure,
            Eng7Plug14Failure,
            Eng7Plug15Failure,
            Eng7Plug16Failure,
            Eng7Plug17Failure,
            ChunkSmallDamage,
            ChunkLargeDamage,
            PartSmallDamage,
            PartLargeDamage,
            WeaponSmallDamage,
            WeaponLargeDamage,
            EngineSmallDamage,
            EngineLargeDamage,
            LifeKeeperPartSmallDamage,
            LifeKeeperPartLargeDamage,
            MaxValue
        }
    }


    "The dissenter is every human being at those moments of his life when he resigns momentarily from the herd and thinks for himself". - Archibald Macleish


  2. Likes ATAG_Lord Wukits, fenbeiduo, Yo-Yo liked this post
  3. #2
    Combat pilot
    Join Date
    Feb 2014
    Posts
    248
    Post Thanks / Like
    Total Downloaded
    0

    Re: Script Reference Master List for IL2COD

    thank you.
    I hope to find the time, someday, to dig into mission building for CloD.


    Inviato dal mio KFTT utilizzando Tapatalk

  4. #3
    Combat pilot
    Join Date
    Nov 2012
    Posts
    246
    Post Thanks / Like
    Total Downloaded
    196.73 MB

    Re: Script Reference Master List for IL2COD

    Hi all,

    I would like to try and copy/paste some of this stuff into my missions but I have no knowledge of script/code although I understand (i think) how to include them in to my missions.

    Is it possible for someone to write a few lines with each individual script explaining what it will do within the mission if the script is included in it.

    Thanks for the work put into this list so far.

    Cheers

  5. #4
    Ace
    Join Date
    May 2015
    Location
    Kansas City, Missouri area
    Posts
    515
    Post Thanks / Like
    Total Downloaded
    130.02 MB

    Re: Script Reference Master List for IL2COD

    Along this same line, the files in this directory from Project303 give comprehensive examples about how to deal with all the override methods you can use when scripting missions, such as OnAircraftDamaged, OnActorDead, etc:

    https://sourceforge.net/p/project303...Handler.cs#l55

    In fact, one of the files gives what appears to be a comprehensive list of all available override methods and their arguments (see below). But the other files go beyond that, showing exactly how to extract the information you can retrieve from each of these methods. Very helpful!

    It's all part of Project303, which is an updated version of the Repka Commander. (Repka Commander is something like ATAG CLOD Commander, but it seems to be designed for and only work with vanilla CloD, not the TF patches.)

    Code:
            void Init(IGamePlay gamePlay, maddox.game.world.Strategy strategy);
            void Inited();
            void OnActorCreated(int missionNumber, string shortName, AiActor actor);
            void OnActorDamaged(int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator, NamedDamageTypes damageType);
            void OnActorDead(int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator);
            void OnActorDestroyed(int missionNumber, string shortName, AiActor actor);
            void OnActorTaskCompleted(int missionNumber, string shortName, AiActor actor);
            void OnAiAirNewEnemy(AiAirEnemyElement element, int army);
            void OnAircraftCrashLanded(int missionNumber, string shortName, AiAircraft aircraft);
            void OnAircraftCutLimb(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, LimbNames limbName);
            void OnAircraftDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiDamageInitiator initiator, NamedDamageTypes damageType);
            void OnAircraftKilled(int missionNumber, string shortName, AiAircraft aircraft);
            void OnAircraftLanded(int missionNumber, string shortName, AiAircraft aircraft);
            void OnAircraftLimbDamaged(int missionNumber, string shortName, AiAircraft aircraft, AiLimbDamage limbDamage);
            void OnAircraftTookOff(int missionNumber, string shortName, AiAircraft aircraft);
            void OnAutopilotOff(AiActor actor, int placeIndex);
            void OnAutopilotOn(AiActor actor, int placeIndex);
            void OnBattleInit();
            void OnBattleStarted();
            void OnBattleStoped();
            void OnBombExplosion(GroundBombExplosion _bombExplosion, AiDamageInitiator initiator, int eventArgInt);
            void OnBuildingKilled(string title, Point3d pos, AiDamageInitiator initiator, int eventArgInt);
            void OnCarter(AiActor actor, int placeIndex);
            void OnEventGame(GameEventId eventId, object eventArg0, object eventArg1, int eventArgInt);
            void OnMissionLoaded(int missionNumber);
            void OnOrderMissionMenuSelected(Player player, int ID, int menuItemIndex);
            void OnPersonHealth(AiPerson person, AiDamageInitiator initiator, float deltaHealth);
            void OnPersonMoved(AiPerson person, AiActor fromCart, int fromPlaceIndex);
            void OnPersonParachuteFailed(AiPerson person);
            void OnPersonParachuteLanded(AiPerson person);
            void OnPlaceEnter(Player player, AiActor actor, int placeIndex);
            void OnPlaceLeave(Player player, AiActor actor, int placeIndex);
            void OnPlayerArmy(Player player, int army);
            void OnPlayerConnected(Player player);
            void OnPlayerDisconnected(Player player, string diagnostic);
            void OnStationaryKilled(int missionNumber, GroundStationary _stationary, AiDamageInitiator initiator, int eventArgInt);
            void OnTickGame();
            void OnTickReal();
            void OnTrigger(int missionNumber, string shortName, bool active);
            void OnUserCreateUserLabel(GPUserLabel ul);
            void OnUserDeleteUserLabel(GPUserLabel ul);
    Last edited by TWC_Flug; May-17-2016 at 17:39.

  6. #5
    Ace Cassius's Avatar
    Join Date
    Dec 2011
    Posts
    2,659
    Post Thanks / Like
    Total Downloaded
    424.49 MB

    Re: Script Reference Master List for IL2COD

    It's not finished. Have not working part of the password option. But works well with Clod TF. I'm using it for any quick start of mission or Campaign for training.

  7. #6
    Ace
    Join Date
    May 2015
    Location
    Kansas City, Missouri area
    Posts
    515
    Post Thanks / Like
    Total Downloaded
    130.02 MB

    Re: Script Reference Master List for IL2COD

    Quote Originally Posted by Cassius View Post
    It's not finished. Have not working part of the password option. But works well with Clod TF. I'm using it for any quick start of mission or Campaign for training.
    Aha, that's great to hear. I couldn't get it to work on my machine for some reason, and so that (combined with the fact that I was looking at one portion of the stats logging code that looks tuned to an older version of Clod) made me I jump to a wrong conclusion.

    It looks like a beautiful and very useful tool--please do let us know when it's ready to go!

    BTW the problem I had is that it would launch launcher.exe -server all right but then it somehow wouldn't recognize that it was started properly, so it would just continually kill & attempt to re-start it over and over. Any thoughts on how to solve that problem would be welcome!
    Last edited by TWC_Flug; May-20-2016 at 20:09.

  8. #7
    Ace Cassius's Avatar
    Join Date
    Dec 2011
    Posts
    2,659
    Post Thanks / Like
    Total Downloaded
    424.49 MB

    Re: Script Reference Master List for IL2COD

    .
    Attached Images Attached Images
    • File Type: jpg 5.jpg (152.7 KB, 384 views)
    • File Type: jpg 4.jpg (189.4 KB, 339 views)
    • File Type: jpg 2.jpg (152.9 KB, 329 views)
    • File Type: jpg 3.jpg (190.2 KB, 281 views)
    • File Type: jpg 1.jpg (189.6 KB, 391 views)
    Last edited by Cassius; Sep-24-2020 at 00:31.

  9. Likes TWC_Fatal_Error liked this post
  10. #8
    Ace Cassius's Avatar
    Join Date
    Dec 2011
    Posts
    2,659
    Post Thanks / Like
    Total Downloaded
    424.49 MB

    Re: Script Reference Master List for IL2COD

    .
    Last edited by Cassius; Sep-24-2020 at 00:30.

  11. #9
    Team Fusion TWC_Fatal_Error's Avatar
    Join Date
    Dec 2013
    Location
    Florida
    Posts
    678
    Post Thanks / Like
    Total Downloaded
    226.63 MB

    Re: Script Reference Master List for IL2COD

    Use a conglomeration of ideas on our servers (we have so many), autohotkey among them as well as a custom launcher created by ACG Donkey.
    i7 2700 ,32 gigs, 4 ssd's ,1 7200rpm 2terabyte,1 samsung 55 display,2 mfd's,EDTRACKER,Warthog ,X55 stick, 7inch liliput monitor in mfd's 21 I-inc secondary display for instruments using virtual cockpit
    [*]iustus facere unus[*] JUST MAKE ONE ( FATAL ERROR) Commander TWC http://twcpilots.com

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •