Banner Image

Module Core.Set

Core - Define collections of objects to perform bulk actions and logically group objects.


Features:

  • Dynamically maintain collections of objects.
  • Manually modify the collection, by adding or removing objects.
  • Collections of different types.
  • Validate the presence of objects in the collection.
  • Perform bulk actions on collection.

Group objects or data of the same type into a collection, which is either:

  • Manually managed using the :Add...() or :Remove...() methods. The initial SET can be filtered with the **SET_BASE.FilterOnce()** method.
  • Dynamically updated when new objects are created or objects are destroyed using the **SET_BASE.FilterStart()** method.

Various types of SET_ classes are available:

These classes are derived from #SET_BASE, which contains the main methods to manage the collections.

A multitude of other methods are available in the individual set classes that allow to:

  • Validate the presence of objects in the SET.
  • Trigger events when objects in the SET change a zone presence.

Author: FlightControl

Contributions:


Global(s)

Global SET_AIRBASE

Mission designers can use the Core.Set#SET_AIRBASE class to build sets of airbases optionally belonging to certain:

  • Coalitions

SET_AIRBASE constructor

Create a new SET_AIRBASE object with the SET_AIRBASE.New method:

#SET_AIRBASE SET_AIRBASE

Mission designers can use the Core.Set#SET_AIRBASE class to build sets of airbases optionally belonging to certain:

  • Coalitions

SET_AIRBASE constructor

Create a new SET_AIRBASE object with the SET_AIRBASE.New method:

Add or Remove AIRBASEs from SET_AIRBASE

AIRBASEs can be added and removed using the Core.Set#SET_AIRBASE.AddAirbasesByName and Core.Set#SET_AIRBASE.RemoveAirbasesByName respectively. These methods take a single AIRBASE name or an array of AIRBASE names to be added or removed from SET_AIRBASE.

SET_AIRBASE filter criteria

You can set filter criteria to define the set of clients within the SET_AIRBASE. Filter criteria are defined by:

Once the filter criteria have been set for the SET_AIRBASE, you can start filtering using:

SET_AIRBASE iterators

Once the filters have been defined and the SET_AIRBASE has been built, you can iterate the SET_AIRBASE with the available iterator methods. The iterator methods will walk the SET_AIRBASE set, and call for each airbase within the set a function that you provide. The following iterator methods are currently available within the SET_AIRBASE:


Global SET_BASE

The Core.Set#SET_BASE class defines the core functions that define a collection of objects.

#SET_BASE SET_BASE

The Core.Set#SET_BASE class defines the core functions that define a collection of objects.

A SET provides iterators to iterate the SET, but will temporarily yield the ForEach interator loop at defined "intervals" to the mail simulator loop. In this way, large loops can be done while not blocking the simulator main processing loop. The default "yield interval" is after 10 objects processed. The default "time interval" is after 0.001 seconds.

Add or remove objects from the SET

Some key core functions are Core.Set#SET_BASE.Add and Core.Set#SET_BASE.Remove to add or remove objects from the SET in your logic.

Define the SET iterator "yield interval" and the "time interval"

Modify the iterator intervals with the Core.Set#SET_BASE.SetInteratorIntervals method. You can set the "yield interval", and the "time interval". (See above).

Global SET_CARGO

Mission designers can use the Core.Set#SET_CARGO class to build sets of cargos optionally belonging to certain:

  • Coalitions
  • Types
  • Name or Prefix

SET_CARGO constructor

Create a new SET_CARGO object with the SET_CARGO.New method:

#SET_CARGO SET_CARGO

Mission designers can use the Core.Set#SET_CARGO class to build sets of cargos optionally belonging to certain:

  • Coalitions
  • Types
  • Name or Prefix

SET_CARGO constructor

Create a new SET_CARGO object with the SET_CARGO.New method:

Add or Remove CARGOs from SET_CARGO

CARGOs can be added and removed using the Core.Set#SET_CARGO.AddCargosByName and Core.Set#SET_CARGO.RemoveCargosByName respectively. These methods take a single CARGO name or an array of CARGO names to be added or removed from SET_CARGO.

SET_CARGO filter criteria

You can set filter criteria to automatically maintain the SET_CARGO contents. Filter criteria are defined by:

Once the filter criteria have been set for the SET_CARGO, you can start filtering using:

SET_CARGO iterators

Once the filters have been defined and the SET_CARGO has been built, you can iterate the SET_CARGO with the available iterator methods. The iterator methods will walk the SET_CARGO set, and call for each cargo within the set a function that you provide. The following iterator methods are currently available within the SET_CARGO:

Global SET_CLIENT

Mission designers can use the Core.Set#SET_CLIENT class to build sets of units belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Client types
  • Starting with certain prefix strings.
#SET_CLIENT SET_CLIENT

Mission designers can use the Core.Set#SET_CLIENT class to build sets of units belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Client types
  • Starting with certain prefix strings.

1) SET_CLIENT constructor

Create a new SET_CLIENT object with the SET_CLIENT.New method:

2) Add or Remove CLIENT(s) from SET_CLIENT

CLIENTs can be added and removed using the Core.Set#SET_CLIENT.AddClientsByName and Core.Set#SET_CLIENT.RemoveClientsByName respectively. These methods take a single CLIENT name or an array of CLIENT names to be added or removed from SET_CLIENT.

3) SET_CLIENT filter criteria

You can set filter criteria to define the set of clients within the SET_CLIENT. Filter criteria are defined by:

Once the filter criteria have been set for the SET_CLIENT, you can start filtering using:

Planned filter criteria within development are (so these are not yet available):

4) SET_CLIENT iterators

Once the filters have been defined and the SET_CLIENT has been built, you can iterate the SET_CLIENT with the available iterator methods. The iterator methods will walk the SET_CLIENT set, and call for each element within the set a function that you provide. The following iterator methods are currently available within the SET_CLIENT:


Global SET_GROUP

Mission designers can use the Core.Set#SET_GROUP class to build sets of groups belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Starting with certain prefix strings.
#SET_GROUP SET_GROUP

Mission designers can use the Core.Set#SET_GROUP class to build sets of groups belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Starting with certain prefix strings.

SET_GROUP constructor

Create a new SET_GROUP object with the SET_GROUP.New method:

Add or Remove GROUP(s) from SET_GROUP

GROUPS can be added and removed using the Core.Set#SET_GROUP.AddGroupsByName and Core.Set#SET_GROUP.RemoveGroupsByName respectively. These methods take a single GROUP name or an array of GROUP names to be added or removed from SET_GROUP.

SET_GROUP filter criteria

You can set filter criteria to define the set of groups within the SET_GROUP. Filter criteria are defined by:

For the Category Filter, extra methods have been added:

Once the filter criteria have been set for the SET_GROUP, you can start filtering using:

Planned filter criteria within development are (so these are not yet available):

SET_GROUP iterators

Once the filters have been defined and the SET_GROUP has been built, you can iterate the SET_GROUP with the available iterator methods. The iterator methods will walk the SET_GROUP set, and call for each element within the set a function that you provide. The following iterator methods are currently available within the SET_GROUP:

  • SET_GROUP.ForEachGroup: Calls a function for each alive group it finds within the SET_GROUP.
  • SET_GROUP.ForEachGroupCompletelyInZone: Iterate the SET_GROUP and call an iterator function for each alive GROUP presence completely in a Zone, providing the GROUP and optional parameters to the called function.
  • SET_GROUP.ForEachGroupPartlyInZone: Iterate the SET_GROUP and call an iterator function for each alive GROUP presence partly in a Zone, providing the GROUP and optional parameters to the called function.
  • SET_GROUP.ForEachGroupNotInZone: Iterate the SET_GROUP and call an iterator function for each alive GROUP presence not in a Zone, providing the GROUP and optional parameters to the called function.

SET_GROUP trigger events on the GROUP objects.

The SET is derived from the FSM class, which provides extra capabilities to track the contents of the GROUP objects in the SET_GROUP.

When a GROUP object crashes or is dead, the SET_GROUP will trigger a Dead event.

You can handle the event using the OnBefore and OnAfter event handlers. The event handlers need to have the paramters From, Event, To, GroupObject. The GroupObject is the GROUP object that is dead and within the SET_GROUP, and is passed as a parameter to the event handler. See the following example:

   -- Create the SetCarrier SET_GROUP collection.

   local SetHelicopter = SET_GROUP:New():FilterPrefixes( "Helicopter" ):FilterStart()

   -- Put a Dead event handler on SetCarrier, to ensure that when a carrier is destroyed, that all internal parameters are reset.

   function SetHelicopter:OnAfterDead( From, Event, To, GroupObject )
     self:F( { GroupObject = GroupObject:GetName() } )
   end

While this is a good example, there is a catch. Imageine you want to execute the code above, the the self would need to be from the object declared outside (above) the OnAfterDead method. So, the self would need to contain another object. Fortunately, this can be done, but you must use then the . notation for the method. See the modified example:

   -- Now we have a constructor of the class AI_CARGO_DISPATCHER, that receives the SetHelicopter as a parameter.
   -- Within that constructor, we want to set an enclosed event handler OnAfterDead for SetHelicopter.
   -- But within the OnAfterDead method, we want to refer to the self variable of the AI_CARGO_DISPATCHER.

   function AI_CARGO_DISPATCHER:New( SetCarrier, SetCargo, SetDeployZones )

     local self = BASE:Inherit( self, FSM:New() ) -- #AI_CARGO_DISPATCHER

     -- Put a Dead event handler on SetCarrier, to ensure that when a carrier is destroyed, that all internal parameters are reset.
     -- Note the "." notation, and the explicit declaration of SetHelicopter, which would be using the ":" notation the implicit self variable declaration.

     function SetHelicopter.OnAfterDead( SetHelicopter, From, Event, To, GroupObject )
       SetHelicopter:F( { GroupObject = GroupObject:GetName() } )
       self.PickupCargo[GroupObject] = nil  -- So here I clear the PickupCargo table entry of the self object AI_CARGO_DISPATCHER.
       self.CarrierHome[GroupObject] = nil
     end

   end

Global SET_PLAYER

Mission designers can use the Core.Set#SET_PLAYER class to build sets of units belonging to alive players:

SET_PLAYER constructor

Create a new SET_PLAYER object with the SET_PLAYER.New method:

#SET_PLAYER SET_PLAYER

Mission designers can use the Core.Set#SET_PLAYER class to build sets of units belonging to alive players:

SET_PLAYER constructor

Create a new SET_PLAYER object with the SET_PLAYER.New method:

SET_PLAYER filter criteria

You can set filter criteria to define the set of clients within the SET_PLAYER. Filter criteria are defined by:

Once the filter criteria have been set for the SET_PLAYER, you can start filtering using:

Planned filter criteria within development are (so these are not yet available):

SET_PLAYER iterators

Once the filters have been defined and the SET_PLAYER has been built, you can iterate the SET_PLAYER with the available iterator methods. The iterator methods will walk the SET_PLAYER set, and call for each element within the set a function that you provide. The following iterator methods are currently available within the SET_PLAYER:


Global SET_STATIC

Mission designers can use the SET_STATIC class to build sets of Statics belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Static types
  • Starting with certain prefix strings.
#SET_STATIC SET_STATIC

Mission designers can use the SET_STATIC class to build sets of Statics belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Static types
  • Starting with certain prefix strings.

SET_STATIC constructor

Create a new SET_STATIC object with the SET_STATIC.New method:

Add or Remove STATIC(s) from SET_STATIC

STATICs can be added and removed using the Core.Set#SET_STATIC.AddStaticsByName and Core.Set#SET_STATIC.RemoveStaticsByName respectively. These methods take a single STATIC name or an array of STATIC names to be added or removed from SET_STATIC.

SET_STATIC filter criteria

You can set filter criteria to define the set of units within the SET_STATIC. Filter criteria are defined by:

Once the filter criteria have been set for the SET_STATIC, you can start filtering using:

Planned filter criteria within development are (so these are not yet available):

SET_STATIC iterators

Once the filters have been defined and the SET_STATIC has been built, you can iterate the SET_STATIC with the available iterator methods. The iterator methods will walk the SET_STATIC set, and call for each element within the set a function that you provide. The following iterator methods are currently available within the SET_STATIC:

  • SET_STATIC.ForEachStatic: Calls a function for each alive unit it finds within the SET_STATIC.
  • SET_GROUP.ForEachGroupCompletelyInZone: Iterate the SET_GROUP and call an iterator function for each alive GROUP presence completely in a Zone, providing the GROUP and optional parameters to the called function.
  • SET_GROUP.ForEachGroupNotInZone: Iterate the SET_GROUP and call an iterator function for each alive GROUP presence not in a Zone, providing the GROUP and optional parameters to the called function.

Planned iterators methods in development are (so these are not yet available):

SET_STATIC atomic methods

Various methods exist for a SET_STATIC to perform actions or calculations and retrieve results from the SET_STATIC:


Global SET_UNIT

Mission designers can use the SET_UNIT class to build sets of units belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Unit types
  • Starting with certain prefix strings.
#SET_UNIT SET_UNIT

Mission designers can use the SET_UNIT class to build sets of units belonging to certain:

  • Coalitions
  • Categories
  • Countries
  • Unit types
  • Starting with certain prefix strings.

1) SET_UNIT constructor

Create a new SET_UNIT object with the SET_UNIT.New method:

2) Add or Remove UNIT(s) from SET_UNIT

UNITs can be added and removed using the Core.Set#SET_UNIT.AddUnitsByName and Core.Set#SET_UNIT.RemoveUnitsByName respectively. These methods take a single UNIT name or an array of UNIT names to be added or removed from SET_UNIT.

3) SET_UNIT filter criteria

You can set filter criteria to define the set of units within the SET_UNIT. Filter criteria are defined by:

Once the filter criteria have been set for the SET_UNIT, you can start filtering using:

Planned filter criteria within development are (so these are not yet available):

4) SET_UNIT iterators

Once the filters have been defined and the SET_UNIT has been built, you can iterate the SET_UNIT with the available iterator methods. The iterator methods will walk the SET_UNIT set, and call for each element within the set a function that you provide. The following iterator methods are currently available within the SET_UNIT:

  • SET_UNIT.ForEachUnit: Calls a function for each alive unit it finds within the SET_UNIT.
  • SET_UNIT.ForEachUnitInZone: Iterate the SET_UNIT and call an iterator function for each alive UNIT object presence completely in a Zone, providing the UNIT object and optional parameters to the called function.
  • SET_UNIT.ForEachUnitNotInZone: Iterate the SET_UNIT and call an iterator function for each alive UNIT object presence not in a Zone, providing the UNIT object and optional parameters to the called function.

Planned iterators methods in development are (so these are not yet available):

5) SET_UNIT atomic methods

Various methods exist for a SET_UNIT to perform actions or calculations and retrieve results from the SET_UNIT:

6) SET_UNIT trigger events on the UNIT objects.

The SET is derived from the FSM class, which provides extra capabilities to track the contents of the UNIT objects in the SET_UNIT.

6.1) When a UNIT object crashes or is dead, the SET_UNIT will trigger a Dead event.

You can handle the event using the OnBefore and OnAfter event handlers. The event handlers need to have the paramters From, Event, To, GroupObject. The GroupObject is the UNIT object that is dead and within the SET_UNIT, and is passed as a parameter to the event handler. See the following example:

   -- Create the SetCarrier SET_UNIT collection.

   local SetHelicopter = SET_UNIT:New():FilterPrefixes( "Helicopter" ):FilterStart()

   -- Put a Dead event handler on SetCarrier, to ensure that when a carrier unit is destroyed, that all internal parameters are reset.

   function SetHelicopter:OnAfterDead( From, Event, To, UnitObject )
     self:F( { UnitObject = UnitObject:GetName() } )
   end

While this is a good example, there is a catch. Imageine you want to execute the code above, the the self would need to be from the object declared outside (above) the OnAfterDead method. So, the self would need to contain another object. Fortunately, this can be done, but you must use then the . notation for the method. See the modified example:

   -- Now we have a constructor of the class AI_CARGO_DISPATCHER, that receives the SetHelicopter as a parameter.
   -- Within that constructor, we want to set an enclosed event handler OnAfterDead for SetHelicopter.
   -- But within the OnAfterDead method, we want to refer to the self variable of the AI_CARGO_DISPATCHER.

   function ACLASS:New( SetCarrier, SetCargo, SetDeployZones )

     local self = BASE:Inherit( self, FSM:New() ) -- #AI_CARGO_DISPATCHER

     -- Put a Dead event handler on SetCarrier, to ensure that when a carrier is destroyed, that all internal parameters are reset.
     -- Note the "." notation, and the explicit declaration of SetHelicopter, which would be using the ":" notation the implicit self variable declaration.

     function SetHelicopter.OnAfterDead( SetHelicopter, From, Event, To, UnitObject )
       SetHelicopter:F( { UnitObject = UnitObject:GetName() } )
       self.array[UnitObject] = nil  -- So here I clear the array table entry of the self object ACLASS.
     end

   end

Global SET_ZONE

Mission designers can use the Core.Set#SET_ZONE class to build sets of zones of various types.

#SET_ZONE SET_ZONE

Mission designers can use the Core.Set#SET_ZONE class to build sets of zones of various types.

SET_ZONE constructor

Create a new SET_ZONE object with the SET_ZONE.New method:

Add or Remove ZONEs from SET_ZONE

ZONEs can be added and removed using the Core.Set#SET_ZONE.AddZonesByName and Core.Set#SET_ZONE.RemoveZonesByName respectively. These methods take a single ZONE name or an array of ZONE names to be added or removed from SET_ZONE.

SET_ZONE filter criteria

You can set filter criteria to build the collection of zones in SET_ZONE. Filter criteria are defined by:

Once the filter criteria have been set for the SET_ZONE, you can start filtering using:

SET_ZONE iterators

Once the filters have been defined and the SET_ZONE has been built, you can iterate the SET_ZONE with the available iterator methods. The iterator methods will walk the SET_ZONE set, and call for each airbase within the set a function that you provide. The following iterator methods are currently available within the SET_ZONE:


Global SET_ZONE_GOAL

Mission designers can use the Core.Set#SET_ZONE_GOAL class to build sets of zones of various types.

#SET_ZONE_GOAL SET_ZONE_GOAL

Mission designers can use the Core.Set#SET_ZONE_GOAL class to build sets of zones of various types.

SET_ZONE_GOAL constructor

Create a new SET_ZONE_GOAL object with the SET_ZONE_GOAL.New method:

Add or Remove ZONEs from SET_ZONE_GOAL

ZONEs can be added and removed using the Core.Set#SET_ZONE_GOAL.AddZonesByName and Core.Set#SET_ZONE_GOAL.RemoveZonesByName respectively. These methods take a single ZONE name or an array of ZONE names to be added or removed from SET_ZONE_GOAL.

SET_ZONE_GOAL filter criteria

You can set filter criteria to build the collection of zones in SET_ZONE_GOAL. Filter criteria are defined by:

Once the filter criteria have been set for the SET_ZONE_GOAL, you can start filtering using:

SET_ZONE_GOAL iterators

Once the filters have been defined and the SET_ZONE_GOAL has been built, you can iterate the SET_ZONE_GOAL with the available iterator methods. The iterator methods will walk the SET_ZONE_GOAL set, and call for each airbase within the set a function that you provide. The following iterator methods are currently available within the SET_ZONE_GOAL:


Type(s)

Fields and Methods inherited from SET_AIRBASE Description

SET_AIRBASE:AddAirbase(airbase)

Add an AIRBASE object to SET_AIRBASE.

SET_AIRBASE:AddAirbasesByName(AddAirbaseNames)

Add AIRBASEs to SET_AIRBASE.

SET_AIRBASE:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_AIRBASE:FilterCategories(Categories)

Builds a set of airbases out of categories.

SET_AIRBASE:FilterCoalitions(Coalitions)

Builds a set of airbases of coalitions.

SET_AIRBASE:FilterStart()

Starts the filtering.

SET_AIRBASE:FindAirbase(AirbaseName)

Finds a Airbase based on the Airbase Name.

SET_AIRBASE:FindAirbaseInRange(Coordinate, Range)

Finds an Airbase in range of a coordinate.

SET_AIRBASE:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_AIRBASE:FindNearestAirbaseFromPointVec2(PointVec2)

Iterate the SET_AIRBASE while identifying the nearest Wrapper.Airbase#AIRBASE from a Core.Point#POINT_VEC2.

SET_AIRBASE:ForEachAirbase(IteratorFunction, ...)

Iterate the SET_AIRBASE and call an interator function for each AIRBASE, providing the AIRBASE and optional parameters.

SET_AIRBASE:GetRandomAirbase()

Finds a random Airbase in the set.

SET_AIRBASE:IsIncludeObject(MAirbase)

SET_AIRBASE:New()

Creates a new SET_AIRBASE object, building a set of airbases belonging to a coalitions and categories.

SET_AIRBASE:OnEventBaseCaptured(EventData)

Starts the filtering.

SET_AIRBASE:RemoveAirbasesByName(RemoveAirbaseNames)

Remove AIRBASEs from SET_AIRBASE.

Fields and Methods inherited from SET_BASE Description

SET_AIRBASE:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_AIRBASE:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_AIRBASE.CallScheduler

SET_AIRBASE:Clear()

Clear the Objects in the Set.

SET_AIRBASE:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_AIRBASE.Database

SET_AIRBASE.Filter

SET_AIRBASE:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_AIRBASE:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_AIRBASE:FilterOnce()

Filters for the defined collection.

SET_AIRBASE:FilterStop()

Stops the filtering for the defined collection.

SET_AIRBASE:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_AIRBASE:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_AIRBASE:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_AIRBASE:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_AIRBASE:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_AIRBASE:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_AIRBASE:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_AIRBASE:GetObjectNames()

Gets a string with all the object names.

SET_AIRBASE:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_AIRBASE:GetSet()

Gets the Set.

SET_AIRBASE:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_AIRBASE:GetSetObjects()

Gets a list of the Objects in the Set.

SET_AIRBASE:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_AIRBASE:IsIncludeObject(Object)

Decides whether to include the Object

SET_AIRBASE.List

SET_AIRBASE:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_AIRBASE:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_AIRBASE:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_AIRBASE:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_AIRBASE.Set

SET_AIRBASE:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_AIRBASE:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_AIRBASE:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_AIRBASE.SomeIteratorLimit

SET_AIRBASE.TimeInterval

SET_AIRBASE.YieldInterval

SET_AIRBASE:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_AIRBASE:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_AIRBASE:_FilterStart()

Starts the filtering for the defined collection.

SET_AIRBASE:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_AIRBASE.ClassID

The ID number of the class.

SET_AIRBASE.ClassName

The name of the class.

SET_AIRBASE.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_AIRBASE:ClearState(Object, StateName)

Clear the state of an object.

SET_AIRBASE:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_AIRBASE:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_AIRBASE:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_AIRBASE:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_AIRBASE:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_AIRBASE:E(Arguments)

Log an exception which will be traced always.

SET_AIRBASE:EventDispatcher()

Returns the event dispatcher

SET_AIRBASE:EventRemoveAll()

Remove all subscribed events

SET_AIRBASE:F(Arguments)

Trace a function call.

SET_AIRBASE:F2(Arguments)

Trace a function call level 2.

SET_AIRBASE:F3(Arguments)

Trace a function call level 3.

SET_AIRBASE:GetClassID()

Get the ClassID of the class instance.

SET_AIRBASE:GetClassName()

Get the ClassName of the class instance.

SET_AIRBASE:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_AIRBASE:GetEventPriority()

Get the Class Event processing Priority.

SET_AIRBASE:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_AIRBASE:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_AIRBASE:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_AIRBASE:I(Arguments)

Log an information which will be traced always.

SET_AIRBASE:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_AIRBASE:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_AIRBASE:IsTrace()

Enquires if tracing is on (for the class).

SET_AIRBASE:New()

BASE constructor.

SET_AIRBASE:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_AIRBASE:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_AIRBASE:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_AIRBASE:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_AIRBASE:OnEventDead(EventData)

Occurs when an object is dead.

SET_AIRBASE:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_AIRBASE:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_AIRBASE:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_AIRBASE:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_AIRBASE:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_AIRBASE:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_AIRBASE:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_AIRBASE:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_AIRBASE:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_AIRBASE:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_AIRBASE:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_AIRBASE:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_AIRBASE:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_AIRBASE:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_AIRBASE:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_AIRBASE:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_AIRBASE:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_AIRBASE:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_AIRBASE:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_AIRBASE:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_AIRBASE:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_AIRBASE:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_AIRBASE:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_AIRBASE.Scheduler

SET_AIRBASE:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_AIRBASE:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_AIRBASE:T(Arguments)

Trace a function logic level 1.

SET_AIRBASE:T2(Arguments)

Trace a function logic level 2.

SET_AIRBASE:T3(Arguments)

Trace a function logic level 3.

SET_AIRBASE:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_AIRBASE:TraceClass(Class)

Set tracing for a class

SET_AIRBASE:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_AIRBASE:TraceLevel(Level)

Set trace level

SET_AIRBASE:TraceOff()

Set trace off.

SET_AIRBASE:TraceOn()

Set trace on.

SET_AIRBASE:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_AIRBASE:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_AIRBASE._

SET_AIRBASE:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_AIRBASE:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_AIRBASE.__

SET_AIRBASE:onEvent(event)

Fields and Methods inherited from SET_BASE Description

SET_BASE:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_BASE:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_BASE.CallScheduler

SET_BASE:Clear()

Clear the Objects in the Set.

SET_BASE:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_BASE.Database

SET_BASE.Filter

SET_BASE:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_BASE:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_BASE:FilterOnce()

Filters for the defined collection.

SET_BASE:FilterStop()

Stops the filtering for the defined collection.

SET_BASE:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_BASE:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_BASE:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_BASE:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_BASE:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_BASE:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_BASE:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_BASE:GetObjectNames()

Gets a string with all the object names.

SET_BASE:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_BASE:GetSet()

Gets the Set.

SET_BASE:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_BASE:GetSetObjects()

Gets a list of the Objects in the Set.

SET_BASE:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_BASE:IsIncludeObject(Object)

Decides whether to include the Object

SET_BASE.List

SET_BASE:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_BASE:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_BASE:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_BASE:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_BASE.Set

SET_BASE:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_BASE:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_BASE:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_BASE.SomeIteratorLimit

SET_BASE.TimeInterval

SET_BASE.YieldInterval

SET_BASE:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_BASE:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_BASE:_FilterStart()

Starts the filtering for the defined collection.

SET_BASE:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_BASE.ClassID

The ID number of the class.

SET_BASE.ClassName

The name of the class.

SET_BASE.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_BASE:ClearState(Object, StateName)

Clear the state of an object.

SET_BASE:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_BASE:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_BASE:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_BASE:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_BASE:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_BASE:E(Arguments)

Log an exception which will be traced always.

SET_BASE:EventDispatcher()

Returns the event dispatcher

SET_BASE:EventRemoveAll()

Remove all subscribed events

SET_BASE:F(Arguments)

Trace a function call.

SET_BASE:F2(Arguments)

Trace a function call level 2.

SET_BASE:F3(Arguments)

Trace a function call level 3.

SET_BASE:GetClassID()

Get the ClassID of the class instance.

SET_BASE:GetClassName()

Get the ClassName of the class instance.

SET_BASE:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_BASE:GetEventPriority()

Get the Class Event processing Priority.

SET_BASE:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_BASE:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_BASE:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_BASE:I(Arguments)

Log an information which will be traced always.

SET_BASE:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_BASE:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_BASE:IsTrace()

Enquires if tracing is on (for the class).

SET_BASE:New()

BASE constructor.

SET_BASE:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_BASE:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_BASE:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_BASE:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_BASE:OnEventDead(EventData)

Occurs when an object is dead.

SET_BASE:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_BASE:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_BASE:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_BASE:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_BASE:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_BASE:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_BASE:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_BASE:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_BASE:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_BASE:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_BASE:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_BASE:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_BASE:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_BASE:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_BASE:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_BASE:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_BASE:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_BASE:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_BASE:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_BASE:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_BASE:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_BASE:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_BASE:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_BASE.Scheduler

SET_BASE:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_BASE:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_BASE:T(Arguments)

Trace a function logic level 1.

SET_BASE:T2(Arguments)

Trace a function logic level 2.

SET_BASE:T3(Arguments)

Trace a function logic level 3.

SET_BASE:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_BASE:TraceClass(Class)

Set tracing for a class

SET_BASE:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_BASE:TraceLevel(Level)

Set trace level

SET_BASE:TraceOff()

Set trace off.

SET_BASE:TraceOn()

Set trace on.

SET_BASE:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_BASE:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_BASE._

SET_BASE:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_BASE:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_BASE.__

SET_BASE:onEvent(event)

Fields and Methods inherited from SET_CARGO Description

SET_CARGO:AddCargo(Cargo)

(R2.1) Add CARGO to SET_CARGO.

SET_CARGO:AddCargosByName(AddCargoNames)

(R2.1) Add CARGOs to SET_CARGO.

SET_CARGO:AddInDatabase(Event)

(R2.1) Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_CARGO:FilterCoalitions(Coalitions)

(R2.1) Builds a set of cargos of coalitions.

SET_CARGO:FilterCountries(Countries)

(R2.1) Builds a set of cargos of defined countries.

SET_CARGO:FilterPrefixes(Prefixes)

(R2.1) Builds a set of cargos of defined cargo prefixes.

SET_CARGO:FilterStart()

(R2.1) Starts the filtering.

SET_CARGO:FilterStop()

Stops the filtering for the defined collection.

SET_CARGO:FilterTypes(Types)

(R2.1) Builds a set of cargos of defined cargo types.

SET_CARGO:FindCargo(CargoName)

(R2.1) Finds a Cargo based on the Cargo Name.

SET_CARGO:FindInDatabase(Event)

(R2.1) Handles the Database to check on any event that Object exists in the Database.

SET_CARGO:FindNearestCargoFromPointVec2(PointVec2)

(R2.1) Iterate the SET_CARGO while identifying the nearest Cargo.Cargo#CARGO from a Core.Point#POINT_VEC2.

SET_CARGO:FirstCargoDeployed()

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is Deployed.

SET_CARGO:FirstCargoLoaded()

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is Loaded.

SET_CARGO:FirstCargoUnLoaded()

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is UnLoaded.

SET_CARGO:FirstCargoUnLoadedAndNotDeployed()

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is UnLoaded and not Deployed.

SET_CARGO:FirstCargoWithState(State)

SET_CARGO:FirstCargoWithStateAndNotDeployed(State)

SET_CARGO:ForEachCargo(IteratorFunction, ...)

(R2.1) Iterate the SET_CARGO and call an interator function for each CARGO, providing the CARGO and optional parameters.

SET_CARGO:IsIncludeObject(MCargo)

(R2.1)

SET_CARGO:New()

Creates a new SET_CARGO object, building a set of cargos belonging to a coalitions and categories.

SET_CARGO:OnEventDeleteCargo(EventData)

(R2.1) Handles the OnDead or OnCrash event for alive units set.

SET_CARGO:OnEventNewCargo(EventData)

(R2.1) Handles the OnEventNewCargo event for the Set.

SET_CARGO:RemoveCargosByName(RemoveCargoNames)

(R2.1) Remove CARGOs from SET_CARGO.

Fields and Methods inherited from SET_BASE Description

SET_CARGO:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_CARGO:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_CARGO.CallScheduler

SET_CARGO:Clear()

Clear the Objects in the Set.

SET_CARGO:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_CARGO.Database

SET_CARGO.Filter

SET_CARGO:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_CARGO:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_CARGO:FilterOnce()

Filters for the defined collection.

SET_CARGO:FilterStop()

Stops the filtering for the defined collection.

SET_CARGO:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_CARGO:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_CARGO:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_CARGO:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_CARGO:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_CARGO:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_CARGO:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_CARGO:GetObjectNames()

Gets a string with all the object names.

SET_CARGO:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_CARGO:GetSet()

Gets the Set.

SET_CARGO:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_CARGO:GetSetObjects()

Gets a list of the Objects in the Set.

SET_CARGO:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_CARGO:IsIncludeObject(Object)

Decides whether to include the Object

SET_CARGO.List

SET_CARGO:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_CARGO:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_CARGO:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_CARGO:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_CARGO.Set

SET_CARGO:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_CARGO:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_CARGO:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_CARGO.SomeIteratorLimit

SET_CARGO.TimeInterval

SET_CARGO.YieldInterval

SET_CARGO:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_CARGO:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_CARGO:_FilterStart()

Starts the filtering for the defined collection.

SET_CARGO:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_CARGO.ClassID

The ID number of the class.

SET_CARGO.ClassName

The name of the class.

SET_CARGO.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_CARGO:ClearState(Object, StateName)

Clear the state of an object.

SET_CARGO:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_CARGO:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_CARGO:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_CARGO:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_CARGO:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_CARGO:E(Arguments)

Log an exception which will be traced always.

SET_CARGO:EventDispatcher()

Returns the event dispatcher

SET_CARGO:EventRemoveAll()

Remove all subscribed events

SET_CARGO:F(Arguments)

Trace a function call.

SET_CARGO:F2(Arguments)

Trace a function call level 2.

SET_CARGO:F3(Arguments)

Trace a function call level 3.

SET_CARGO:GetClassID()

Get the ClassID of the class instance.

SET_CARGO:GetClassName()

Get the ClassName of the class instance.

SET_CARGO:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_CARGO:GetEventPriority()

Get the Class Event processing Priority.

SET_CARGO:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_CARGO:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_CARGO:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_CARGO:I(Arguments)

Log an information which will be traced always.

SET_CARGO:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_CARGO:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_CARGO:IsTrace()

Enquires if tracing is on (for the class).

SET_CARGO:New()

BASE constructor.

SET_CARGO:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_CARGO:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_CARGO:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_CARGO:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_CARGO:OnEventDead(EventData)

Occurs when an object is dead.

SET_CARGO:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_CARGO:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_CARGO:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_CARGO:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_CARGO:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_CARGO:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_CARGO:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_CARGO:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_CARGO:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_CARGO:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_CARGO:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_CARGO:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_CARGO:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_CARGO:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_CARGO:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_CARGO:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_CARGO:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_CARGO:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_CARGO:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_CARGO:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_CARGO:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_CARGO:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_CARGO:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_CARGO.Scheduler

SET_CARGO:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_CARGO:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_CARGO:T(Arguments)

Trace a function logic level 1.

SET_CARGO:T2(Arguments)

Trace a function logic level 2.

SET_CARGO:T3(Arguments)

Trace a function logic level 3.

SET_CARGO:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_CARGO:TraceClass(Class)

Set tracing for a class

SET_CARGO:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_CARGO:TraceLevel(Level)

Set trace level

SET_CARGO:TraceOff()

Set trace off.

SET_CARGO:TraceOn()

Set trace on.

SET_CARGO:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_CARGO:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_CARGO._

SET_CARGO:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_CARGO:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_CARGO.__

SET_CARGO:onEvent(event)

Fields and Methods inherited from SET_CLIENT Description

SET_CLIENT:AddClientsByName(AddClientNames)

Add CLIENT(s) to SET_CLIENT.

SET_CLIENT:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_CLIENT:FilterActive(Active)

Builds a set of clients that are only active.

SET_CLIENT:FilterCategories(Categories)

Builds a set of clients out of categories.

SET_CLIENT:FilterCoalitions(Coalitions)

Builds a set of clients of coalitions.

SET_CLIENT:FilterCountries(Countries)

Builds a set of clients of defined countries.

SET_CLIENT:FilterPrefixes(Prefixes)

Builds a set of clients of defined client prefixes.

SET_CLIENT:FilterStart()

Starts the filtering.

SET_CLIENT:FilterTypes(Types)

Builds a set of clients of defined client types.

SET_CLIENT:FindClient(ClientName)

Finds a Client based on the Client Name.

SET_CLIENT:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_CLIENT:ForEachClient(IteratorFunction, ...)

Iterate the SET_CLIENT and call an interator function for each alive CLIENT, providing the CLIENT and optional parameters.

SET_CLIENT:ForEachClientInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_CLIENT and call an iterator function for each alive CLIENT presence completely in a Zone, providing the CLIENT and optional parameters to the called function.

SET_CLIENT:ForEachClientNotInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_CLIENT and call an iterator function for each alive CLIENT presence not in a Zone, providing the CLIENT and optional parameters to the called function.

SET_CLIENT:IsIncludeObject(MClient)

SET_CLIENT:New()

Creates a new SET_CLIENT object, building a set of clients belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_CLIENT:RemoveClientsByName(RemoveClientNames)

Remove CLIENT(s) from SET_CLIENT.

Fields and Methods inherited from SET_BASE Description

SET_CLIENT:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_CLIENT:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_CLIENT.CallScheduler

SET_CLIENT:Clear()

Clear the Objects in the Set.

SET_CLIENT:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_CLIENT.Database

SET_CLIENT.Filter

SET_CLIENT:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_CLIENT:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_CLIENT:FilterOnce()

Filters for the defined collection.

SET_CLIENT:FilterStop()

Stops the filtering for the defined collection.

SET_CLIENT:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_CLIENT:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_CLIENT:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_CLIENT:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_CLIENT:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_CLIENT:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_CLIENT:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_CLIENT:GetObjectNames()

Gets a string with all the object names.

SET_CLIENT:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_CLIENT:GetSet()

Gets the Set.

SET_CLIENT:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_CLIENT:GetSetObjects()

Gets a list of the Objects in the Set.

SET_CLIENT:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_CLIENT:IsIncludeObject(Object)

Decides whether to include the Object

SET_CLIENT.List

SET_CLIENT:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_CLIENT:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_CLIENT:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_CLIENT:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_CLIENT.Set

SET_CLIENT:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_CLIENT:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_CLIENT:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_CLIENT.SomeIteratorLimit

SET_CLIENT.TimeInterval

SET_CLIENT.YieldInterval

SET_CLIENT:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_CLIENT:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_CLIENT:_FilterStart()

Starts the filtering for the defined collection.

SET_CLIENT:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_CLIENT.ClassID

The ID number of the class.

SET_CLIENT.ClassName

The name of the class.

SET_CLIENT.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_CLIENT:ClearState(Object, StateName)

Clear the state of an object.

SET_CLIENT:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_CLIENT:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_CLIENT:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_CLIENT:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_CLIENT:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_CLIENT:E(Arguments)

Log an exception which will be traced always.

SET_CLIENT:EventDispatcher()

Returns the event dispatcher

SET_CLIENT:EventRemoveAll()

Remove all subscribed events

SET_CLIENT:F(Arguments)

Trace a function call.

SET_CLIENT:F2(Arguments)

Trace a function call level 2.

SET_CLIENT:F3(Arguments)

Trace a function call level 3.

SET_CLIENT:GetClassID()

Get the ClassID of the class instance.

SET_CLIENT:GetClassName()

Get the ClassName of the class instance.

SET_CLIENT:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_CLIENT:GetEventPriority()

Get the Class Event processing Priority.

SET_CLIENT:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_CLIENT:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_CLIENT:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_CLIENT:I(Arguments)

Log an information which will be traced always.

SET_CLIENT:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_CLIENT:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_CLIENT:IsTrace()

Enquires if tracing is on (for the class).

SET_CLIENT:New()

BASE constructor.

SET_CLIENT:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_CLIENT:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_CLIENT:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_CLIENT:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_CLIENT:OnEventDead(EventData)

Occurs when an object is dead.

SET_CLIENT:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_CLIENT:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_CLIENT:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_CLIENT:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_CLIENT:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_CLIENT:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_CLIENT:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_CLIENT:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_CLIENT:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_CLIENT:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_CLIENT:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_CLIENT:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_CLIENT:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_CLIENT:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_CLIENT:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_CLIENT:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_CLIENT:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_CLIENT:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_CLIENT:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_CLIENT:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_CLIENT:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_CLIENT:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_CLIENT:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_CLIENT.Scheduler

SET_CLIENT:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_CLIENT:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_CLIENT:T(Arguments)

Trace a function logic level 1.

SET_CLIENT:T2(Arguments)

Trace a function logic level 2.

SET_CLIENT:T3(Arguments)

Trace a function logic level 3.

SET_CLIENT:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_CLIENT:TraceClass(Class)

Set tracing for a class

SET_CLIENT:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_CLIENT:TraceLevel(Level)

Set trace level

SET_CLIENT:TraceOff()

Set trace off.

SET_CLIENT:TraceOn()

Set trace on.

SET_CLIENT:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_CLIENT:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_CLIENT._

SET_CLIENT:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_CLIENT:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_CLIENT.__

SET_CLIENT:onEvent(event)

Fields and Methods inherited from SET_GROUP Description

SET_GROUP:AddGroup(group)

Add a GROUP to SET_GROUP.

SET_GROUP:AddGroupsByName(AddGroupNames)

Add GROUP(s) to SET_GROUP.

SET_GROUP:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_GROUP:AllCompletelyInZone(ZoneObject, Zone)

Iterate the SET_GROUP and return true if all the Wrapper.Group#GROUP are completely in the Core.Zone#ZONE

SET_GROUP:AnyCompletelyInZone(ZoneObject, Zone)

Iterate the SET_GROUP and return true if at least one of the Wrapper.Group#GROUP is completely inside the Core.Zone#ZONE

SET_GROUP:AnyInZone(ZoneObject, Zone)

Iterate the SET_GROUP and return true if at least one #UNIT of one GROUP of the SET_GROUP is in ZONE

SET_GROUP:AnyPartlyInZone(ZoneObject, Zone)

Iterate the SET_GROUP and return true if at least one GROUP of the SET_GROUP is partly in ZONE.

SET_GROUP:CountAlive()

Iterate the SET_GROUP and count how many GROUPs and UNITs are alive.

SET_GROUP:CountInZone(ZoneObject, Zone)

Iterate the SET_GROUP and count how many GROUPs are completely in the Zone That could easily be done with SET_GROUP:ForEachGroupCompletelyInZone(), but this function provides an easy to use shortcut...

SET_GROUP:CountUnitInZone(ZoneObject, Zone)

Iterate the SET_GROUP and count how many UNITs are completely in the Zone

SET_GROUP:FilterActive(Active)

Builds a set of groups that are only active.

SET_GROUP:FilterCategories(Categories)

Builds a set of groups out of categories.

SET_GROUP:FilterCategoryAirplane()

Builds a set of groups out of airplane category.

SET_GROUP:FilterCategoryGround()

Builds a set of groups out of ground category.

SET_GROUP:FilterCategoryHelicopter()

Builds a set of groups out of helicopter category.

SET_GROUP:FilterCategoryShip()

Builds a set of groups out of ship category.

SET_GROUP:FilterCategoryStructure()

Builds a set of groups out of structure category.

SET_GROUP:FilterCoalitions(Coalitions)

Builds a set of groups of coalitions.

SET_GROUP:FilterCountries(Countries)

Builds a set of groups of defined countries.

SET_GROUP:FilterPrefixes(Prefixes)

Builds a set of groups of defined GROUP prefixes.

SET_GROUP:FilterStart()

Starts the filtering.

SET_GROUP:FindGroup(GroupName)

Finds a Group based on the Group Name.

SET_GROUP:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_GROUP:FindNearestGroupFromPointVec2(PointVec2)

Iterate the SET_GROUP while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_GROUP:ForEachGroup(IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each GROUP object, providing the GROUP and optional parameters.

SET_GROUP:ForEachGroupAlive(IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each alive GROUP object, providing the GROUP and optional parameters.

SET_GROUP:ForEachGroupAnyInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each alive GROUP that has any unit in the Core.Zone, providing the GROUP and optional parameters to the called function.

SET_GROUP:ForEachGroupCompletelyInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each alive GROUP presence completely in a Zone, providing the GROUP and optional parameters to the called function.

SET_GROUP:ForEachGroupNotInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each alive GROUP presence not in a Zone, providing the GROUP and optional parameters to the called function.

SET_GROUP:ForEachGroupPartlyInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for each alive GROUP presence partly in a Zone, providing the GROUP and optional parameters to the called function.

SET_GROUP:ForSomeGroup(IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for some GROUP objects, providing the GROUP and optional parameters.

SET_GROUP:ForSomeGroupAlive(IteratorFunction, ...)

Iterate the SET_GROUP and call an iterator function for some alive GROUP objects, providing the GROUP and optional parameters.

SET_GROUP:GetAliveSet()

Gets the Set.

SET_GROUP:GetUnitTypeNames()

Returns a report of of unit types.

SET_GROUP:IsIncludeObject(MGroup)

SET_GROUP:New()

Creates a new SET_GROUP object, building a set of groups belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_GROUP:NoneInZone(ZoneObject, Zone)

Iterate the SET_GROUP and return true if no GROUP of the SET_GROUP is in ZONE This could also be achieved with not SET_GROUP:AnyPartlyInZone(Zone), but it's easier for the mission designer to add a dedicated method

SET_GROUP:RemoveGroupsByName(RemoveGroupNames)

Remove GROUP(s) from SET_GROUP.

SET_GROUP:SetCargoBayWeightLimit()

Iterate the SET_GROUP and set for each unit the default cargo bay weight limit.

SET_GROUP:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive groups set.

Fields and Methods inherited from SET_BASE Description

SET_GROUP:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_GROUP:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_GROUP.CallScheduler

SET_GROUP:Clear()

Clear the Objects in the Set.

SET_GROUP:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_GROUP.Database

SET_GROUP.Filter

SET_GROUP:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_GROUP:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_GROUP:FilterOnce()

Filters for the defined collection.

SET_GROUP:FilterStop()

Stops the filtering for the defined collection.

SET_GROUP:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_GROUP:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_GROUP:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_GROUP:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_GROUP:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_GROUP:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_GROUP:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_GROUP:GetObjectNames()

Gets a string with all the object names.

SET_GROUP:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_GROUP:GetSet()

Gets the Set.

SET_GROUP:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_GROUP:GetSetObjects()

Gets a list of the Objects in the Set.

SET_GROUP:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_GROUP:IsIncludeObject(Object)

Decides whether to include the Object

SET_GROUP.List

SET_GROUP:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_GROUP:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_GROUP:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_GROUP:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_GROUP.Set

SET_GROUP:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_GROUP:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_GROUP:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_GROUP.SomeIteratorLimit

SET_GROUP.TimeInterval

SET_GROUP.YieldInterval

SET_GROUP:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_GROUP:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_GROUP:_FilterStart()

Starts the filtering for the defined collection.

SET_GROUP:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_GROUP.ClassID

The ID number of the class.

SET_GROUP.ClassName

The name of the class.

SET_GROUP.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_GROUP:ClearState(Object, StateName)

Clear the state of an object.

SET_GROUP:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_GROUP:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_GROUP:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_GROUP:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_GROUP:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_GROUP:E(Arguments)

Log an exception which will be traced always.

SET_GROUP:EventDispatcher()

Returns the event dispatcher

SET_GROUP:EventRemoveAll()

Remove all subscribed events

SET_GROUP:F(Arguments)

Trace a function call.

SET_GROUP:F2(Arguments)

Trace a function call level 2.

SET_GROUP:F3(Arguments)

Trace a function call level 3.

SET_GROUP:GetClassID()

Get the ClassID of the class instance.

SET_GROUP:GetClassName()

Get the ClassName of the class instance.

SET_GROUP:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_GROUP:GetEventPriority()

Get the Class Event processing Priority.

SET_GROUP:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_GROUP:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_GROUP:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_GROUP:I(Arguments)

Log an information which will be traced always.

SET_GROUP:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_GROUP:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_GROUP:IsTrace()

Enquires if tracing is on (for the class).

SET_GROUP:New()

BASE constructor.

SET_GROUP:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_GROUP:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_GROUP:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_GROUP:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_GROUP:OnEventDead(EventData)

Occurs when an object is dead.

SET_GROUP:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_GROUP:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_GROUP:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_GROUP:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_GROUP:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_GROUP:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_GROUP:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_GROUP:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_GROUP:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_GROUP:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_GROUP:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_GROUP:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_GROUP:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_GROUP:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_GROUP:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_GROUP:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_GROUP:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_GROUP:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_GROUP:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_GROUP:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_GROUP:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_GROUP:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_GROUP:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_GROUP.Scheduler

SET_GROUP:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_GROUP:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_GROUP:T(Arguments)

Trace a function logic level 1.

SET_GROUP:T2(Arguments)

Trace a function logic level 2.

SET_GROUP:T3(Arguments)

Trace a function logic level 3.

SET_GROUP:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_GROUP:TraceClass(Class)

Set tracing for a class

SET_GROUP:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_GROUP:TraceLevel(Level)

Set trace level

SET_GROUP:TraceOff()

Set trace off.

SET_GROUP:TraceOn()

Set trace on.

SET_GROUP:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_GROUP:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_GROUP._

SET_GROUP:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_GROUP:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_GROUP.__

SET_GROUP:onEvent(event)

Fields and Methods inherited from SET_PLAYER Description

SET_PLAYER:AddClientsByName(AddClientNames)

Add CLIENT(s) to SET_PLAYER.

SET_PLAYER:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_PLAYER:FilterCategories(Categories)

Builds a set of clients out of categories joined by players.

SET_PLAYER:FilterCoalitions(Coalitions)

Builds a set of clients of coalitions joined by specific players.

SET_PLAYER:FilterCountries(Countries)

Builds a set of clients of defined countries.

SET_PLAYER:FilterPrefixes(Prefixes)

Builds a set of clients of defined client prefixes.

SET_PLAYER:FilterStart()

Starts the filtering.

SET_PLAYER:FilterTypes(Types)

Builds a set of clients of defined client types joined by players.

SET_PLAYER:FindClient(PlayerName)

Finds a Client based on the Player Name.

SET_PLAYER:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_PLAYER:ForEachPlayer(IteratorFunction, ...)

Iterate the SET_PLAYER and call an interator function for each alive CLIENT, providing the CLIENT and optional parameters.

SET_PLAYER:ForEachPlayerInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_PLAYER and call an iterator function for each alive CLIENT presence completely in a Zone, providing the CLIENT and optional parameters to the called function.

SET_PLAYER:ForEachPlayerNotInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_PLAYER and call an iterator function for each alive CLIENT presence not in a Zone, providing the CLIENT and optional parameters to the called function.

SET_PLAYER:IsIncludeObject(MClient)

SET_PLAYER:New()

Creates a new SET_PLAYER object, building a set of clients belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_PLAYER:RemoveClientsByName(RemoveClientNames)

Remove CLIENT(s) from SET_PLAYER.

Fields and Methods inherited from SET_BASE Description

SET_PLAYER:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_PLAYER:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_PLAYER.CallScheduler

SET_PLAYER:Clear()

Clear the Objects in the Set.

SET_PLAYER:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_PLAYER.Database

SET_PLAYER.Filter

SET_PLAYER:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_PLAYER:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_PLAYER:FilterOnce()

Filters for the defined collection.

SET_PLAYER:FilterStop()

Stops the filtering for the defined collection.

SET_PLAYER:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_PLAYER:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_PLAYER:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_PLAYER:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_PLAYER:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_PLAYER:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_PLAYER:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_PLAYER:GetObjectNames()

Gets a string with all the object names.

SET_PLAYER:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_PLAYER:GetSet()

Gets the Set.

SET_PLAYER:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_PLAYER:GetSetObjects()

Gets a list of the Objects in the Set.

SET_PLAYER:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_PLAYER:IsIncludeObject(Object)

Decides whether to include the Object

SET_PLAYER.List

SET_PLAYER:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_PLAYER:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_PLAYER:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_PLAYER:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_PLAYER.Set

SET_PLAYER:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_PLAYER:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_PLAYER:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_PLAYER.SomeIteratorLimit

SET_PLAYER.TimeInterval

SET_PLAYER.YieldInterval

SET_PLAYER:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_PLAYER:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_PLAYER:_FilterStart()

Starts the filtering for the defined collection.

SET_PLAYER:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_PLAYER.ClassID

The ID number of the class.

SET_PLAYER.ClassName

The name of the class.

SET_PLAYER.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_PLAYER:ClearState(Object, StateName)

Clear the state of an object.

SET_PLAYER:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_PLAYER:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_PLAYER:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_PLAYER:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_PLAYER:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_PLAYER:E(Arguments)

Log an exception which will be traced always.

SET_PLAYER:EventDispatcher()

Returns the event dispatcher

SET_PLAYER:EventRemoveAll()

Remove all subscribed events

SET_PLAYER:F(Arguments)

Trace a function call.

SET_PLAYER:F2(Arguments)

Trace a function call level 2.

SET_PLAYER:F3(Arguments)

Trace a function call level 3.

SET_PLAYER:GetClassID()

Get the ClassID of the class instance.

SET_PLAYER:GetClassName()

Get the ClassName of the class instance.

SET_PLAYER:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_PLAYER:GetEventPriority()

Get the Class Event processing Priority.

SET_PLAYER:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_PLAYER:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_PLAYER:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_PLAYER:I(Arguments)

Log an information which will be traced always.

SET_PLAYER:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_PLAYER:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_PLAYER:IsTrace()

Enquires if tracing is on (for the class).

SET_PLAYER:New()

BASE constructor.

SET_PLAYER:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_PLAYER:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_PLAYER:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_PLAYER:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_PLAYER:OnEventDead(EventData)

Occurs when an object is dead.

SET_PLAYER:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_PLAYER:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_PLAYER:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_PLAYER:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_PLAYER:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_PLAYER:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_PLAYER:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_PLAYER:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_PLAYER:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_PLAYER:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_PLAYER:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_PLAYER:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_PLAYER:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_PLAYER:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_PLAYER:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_PLAYER:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_PLAYER:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_PLAYER:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_PLAYER:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_PLAYER:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_PLAYER:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_PLAYER:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_PLAYER:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_PLAYER.Scheduler

SET_PLAYER:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_PLAYER:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_PLAYER:T(Arguments)

Trace a function logic level 1.

SET_PLAYER:T2(Arguments)

Trace a function logic level 2.

SET_PLAYER:T3(Arguments)

Trace a function logic level 3.

SET_PLAYER:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_PLAYER:TraceClass(Class)

Set tracing for a class

SET_PLAYER:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_PLAYER:TraceLevel(Level)

Set trace level

SET_PLAYER:TraceOff()

Set trace off.

SET_PLAYER:TraceOn()

Set trace on.

SET_PLAYER:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_PLAYER:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_PLAYER._

SET_PLAYER:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_PLAYER:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_PLAYER.__

SET_PLAYER:onEvent(event)

Fields and Methods inherited from SET_STATIC Description

SET_STATIC:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_STATIC:AddStatic(AddStatic)

Add STATIC(s) to SET_STATIC.

SET_STATIC:AddStaticsByName(AddStaticNames)

Add STATIC(s) to SET_STATIC.

SET_STATIC:CalculateThreatLevelA2G()

Calculate the maxium A2G threat level of the SET_STATIC.

SET_STATIC:FilterCategories(Categories)

Builds a set of units out of categories.

SET_STATIC:FilterCoalitions(Coalitions)

Builds a set of units of coalitions.

SET_STATIC:FilterCountries(Countries)

Builds a set of units of defined countries.

SET_STATIC:FilterPrefixes(Prefixes)

Builds a set of units of defined unit prefixes.

SET_STATIC:FilterStart()

Starts the filtering.

SET_STATIC:FilterTypes(Types)

Builds a set of units of defined unit types.

SET_STATIC:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_STATIC:FindStatic(StaticName)

Finds a Static based on the Static Name.

SET_STATIC:ForEachStatic(IteratorFunction, ...)

Iterate the SET_STATIC and call an interator function for each alive STATIC, providing the STATIC and optional parameters.

SET_STATIC:ForEachStaticCompletelyInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_STATIC and call an iterator function for each alive STATIC presence completely in a Zone, providing the STATIC and optional parameters to the called function.

SET_STATIC:ForEachStaticInZone(IteratorFunction, ...)

Check if minimal one element of the SET_STATIC is in the Zone.

SET_STATIC:ForEachStaticNotInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_STATIC and call an iterator function for each alive STATIC presence not in a Zone, providing the STATIC and optional parameters to the called function.

SET_STATIC:GetCoordinate()

Get the center coordinate of the SET_STATIC.

SET_STATIC:GetFirst()

Get the first unit from the set.

SET_STATIC:GetHeading()

Get the average heading of the SET_STATIC.

SET_STATIC:GetStaticTypes()

Returns map of unit types.

SET_STATIC:GetStaticTypesText()

Returns a comma separated string of the unit types with a count in the Set.

SET_STATIC:GetTypeNames(Delimiter)

Retrieve the type names of the Statics in the SET, delimited by an optional delimiter.

SET_STATIC:GetVelocity()

Get the maximum velocity of the SET_STATIC.

SET_STATIC:IsIncludeObject(MStatic)

SET_STATIC:IsNotInZone(ZoneObject, Zone)

Check if no element of the SET_STATIC is in the Zone.

SET_STATIC:IsPatriallyInZone(Zone)

Check if minimal one element of the SET_STATIC is in the Zone.

SET_STATIC:New()

Creates a new SET_STATIC object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_STATIC:RemoveStaticsByName(RemoveStaticNames)

Remove STATIC(s) from SET_STATIC.

Fields and Methods inherited from SET_BASE Description

SET_STATIC:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_STATIC:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_STATIC.CallScheduler

SET_STATIC:Clear()

Clear the Objects in the Set.

SET_STATIC:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_STATIC.Database

SET_STATIC.Filter

SET_STATIC:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_STATIC:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_STATIC:FilterOnce()

Filters for the defined collection.

SET_STATIC:FilterStop()

Stops the filtering for the defined collection.

SET_STATIC:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_STATIC:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_STATIC:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_STATIC:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_STATIC:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_STATIC:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_STATIC:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_STATIC:GetObjectNames()

Gets a string with all the object names.

SET_STATIC:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_STATIC:GetSet()

Gets the Set.

SET_STATIC:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_STATIC:GetSetObjects()

Gets a list of the Objects in the Set.

SET_STATIC:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_STATIC:IsIncludeObject(Object)

Decides whether to include the Object

SET_STATIC.List

SET_STATIC:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_STATIC:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_STATIC:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_STATIC:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_STATIC.Set

SET_STATIC:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_STATIC:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_STATIC:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_STATIC.SomeIteratorLimit

SET_STATIC.TimeInterval

SET_STATIC.YieldInterval

SET_STATIC:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_STATIC:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_STATIC:_FilterStart()

Starts the filtering for the defined collection.

SET_STATIC:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_STATIC.ClassID

The ID number of the class.

SET_STATIC.ClassName

The name of the class.

SET_STATIC.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_STATIC:ClearState(Object, StateName)

Clear the state of an object.

SET_STATIC:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_STATIC:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_STATIC:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_STATIC:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_STATIC:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_STATIC:E(Arguments)

Log an exception which will be traced always.

SET_STATIC:EventDispatcher()

Returns the event dispatcher

SET_STATIC:EventRemoveAll()

Remove all subscribed events

SET_STATIC:F(Arguments)

Trace a function call.

SET_STATIC:F2(Arguments)

Trace a function call level 2.

SET_STATIC:F3(Arguments)

Trace a function call level 3.

SET_STATIC:GetClassID()

Get the ClassID of the class instance.

SET_STATIC:GetClassName()

Get the ClassName of the class instance.

SET_STATIC:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_STATIC:GetEventPriority()

Get the Class Event processing Priority.

SET_STATIC:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_STATIC:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_STATIC:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_STATIC:I(Arguments)

Log an information which will be traced always.

SET_STATIC:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_STATIC:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_STATIC:IsTrace()

Enquires if tracing is on (for the class).

SET_STATIC:New()

BASE constructor.

SET_STATIC:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_STATIC:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_STATIC:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_STATIC:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_STATIC:OnEventDead(EventData)

Occurs when an object is dead.

SET_STATIC:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_STATIC:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_STATIC:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_STATIC:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_STATIC:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_STATIC:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_STATIC:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_STATIC:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_STATIC:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_STATIC:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_STATIC:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_STATIC:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_STATIC:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_STATIC:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_STATIC:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_STATIC:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_STATIC:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_STATIC:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_STATIC:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_STATIC:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_STATIC:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_STATIC:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_STATIC:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_STATIC.Scheduler

SET_STATIC:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_STATIC:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_STATIC:T(Arguments)

Trace a function logic level 1.

SET_STATIC:T2(Arguments)

Trace a function logic level 2.

SET_STATIC:T3(Arguments)

Trace a function logic level 3.

SET_STATIC:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_STATIC:TraceClass(Class)

Set tracing for a class

SET_STATIC:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_STATIC:TraceLevel(Level)

Set trace level

SET_STATIC:TraceOff()

Set trace off.

SET_STATIC:TraceOn()

Set trace on.

SET_STATIC:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_STATIC:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_STATIC._

SET_STATIC:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_STATIC:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_STATIC.__

SET_STATIC:onEvent(event)

Fields and Methods inherited from SET_UNIT Description

SET_UNIT:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_UNIT:AddUnit(Unit)

Add UNIT(s) to SET_UNIT.

SET_UNIT:AddUnitsByName(AddUnitNames)

Add UNIT(s) to SET_UNIT.

SET_UNIT:CalculateThreatLevelA2G()

Calculate the maxium A2G threat level of the SET_UNIT.

SET_UNIT:FilterActive(Active)

Builds a set of units that are only active.

SET_UNIT:FilterCategories(Categories)

Builds a set of units out of categories.

SET_UNIT:FilterCoalitions(Coalitions)

Builds a set of units of coalitions.

SET_UNIT:FilterCountries(Countries)

Builds a set of units of defined countries.

SET_UNIT:FilterHasRadar(RadarTypes)

Builds a set of units having a radar of give types.

SET_UNIT:FilterHasSEAD()

Builds a set of SEADable units.

SET_UNIT:FilterPrefixes(Prefixes)

Builds a set of units of defined unit prefixes.

SET_UNIT:FilterStart()

Starts the filtering.

SET_UNIT:FilterTypes(Types)

Builds a set of units of defined unit types.

SET_UNIT:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_UNIT:FindUnit(UnitName)

Finds a Unit based on the Unit Name.

SET_UNIT:ForEachUnit(IteratorFunction, ...)

Iterate the SET_UNIT and call an interator function for each alive UNIT, providing the UNIT and optional parameters.

SET_UNIT:ForEachUnitCompletelyInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_UNIT and call an iterator function for each alive UNIT presence completely in a Zone, providing the UNIT and optional parameters to the called function.

SET_UNIT:ForEachUnitNotInZone(ZoneObject, IteratorFunction, ...)

Iterate the SET_UNIT and call an iterator function for each alive UNIT presence not in a Zone, providing the UNIT and optional parameters to the called function.

SET_UNIT:ForEachUnitPerThreatLevel(FromThreatLevel, ToThreatLevel, IteratorFunction, ...)

Iterate the SET_UNIT sorted *per Threat Level and call an interator function for each alive UNIT, providing the UNIT and optional parameters.

SET_UNIT:GetCoordinate()

Get the center coordinate of the SET_UNIT.

SET_UNIT:GetFirst()

Get the first unit from the set.

SET_UNIT:GetHeading()

Get the average heading of the SET_UNIT.

SET_UNIT:GetSetPerThreatLevel(FromThreatLevel, ToThreatLevel)

Get the SET of the SET_UNIT sorted per Threat Level.

SET_UNIT:GetTypeNames(Delimiter)

Retrieve the type names of the Wrapper.Units in the SET, delimited by an optional delimiter.

SET_UNIT:GetUnitThreatLevels()

Returns map of unit threat levels.

SET_UNIT:GetUnitTypes()

Returns map of unit types.

SET_UNIT:GetUnitTypesText()

Returns a comma separated string of the unit types with a count in the Set.

SET_UNIT:GetVelocity()

Get the maximum velocity of the SET_UNIT.

SET_UNIT:HasAirUnits()

Returns if the Set has air targets.

SET_UNIT:HasFriendlyUnits(FriendlyCoalition)

Returns if the Set has friendly ground units.

SET_UNIT:HasGroundUnits()

Returns if the Set has ground targets.

SET_UNIT:HasRadar(RadarType)

Returns if the Set has targets having a radar (of a given type).

SET_UNIT:HasSEAD()

Returns if the Set has targets that can be SEADed.

SET_UNIT:IsIncludeObject(MUnit)

SET_UNIT:IsNotInZone(ZoneObject, Zone)

Check if no element of the SET_UNIT is in the Zone.

SET_UNIT:IsPartiallyInZone(ZoneTest)

Check if minimal one element of the SET_UNIT is in the Zone.

SET_UNIT:New()

Creates a new SET_UNIT object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_UNIT:RemoveUnitsByName(RemoveUnitNames)

Remove UNIT(s) from SET_UNIT.

SET_UNIT:SetCargoBayWeightLimit()

Iterate the SET_UNIT and set for each unit the default cargo bay weight limit.

Fields and Methods inherited from SET_BASE Description

SET_UNIT:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_UNIT:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_UNIT.CallScheduler

SET_UNIT:Clear()

Clear the Objects in the Set.

SET_UNIT:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_UNIT.Database

SET_UNIT.Filter

SET_UNIT:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_UNIT:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_UNIT:FilterOnce()

Filters for the defined collection.

SET_UNIT:FilterStop()

Stops the filtering for the defined collection.

SET_UNIT:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_UNIT:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_UNIT:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_UNIT:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_UNIT:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_UNIT:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_UNIT:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_UNIT:GetObjectNames()

Gets a string with all the object names.

SET_UNIT:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_UNIT:GetSet()

Gets the Set.

SET_UNIT:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_UNIT:GetSetObjects()

Gets a list of the Objects in the Set.

SET_UNIT:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_UNIT:IsIncludeObject(Object)

Decides whether to include the Object

SET_UNIT.List

SET_UNIT:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_UNIT:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_UNIT:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_UNIT:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_UNIT.Set

SET_UNIT:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_UNIT:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_UNIT:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_UNIT.SomeIteratorLimit

SET_UNIT.TimeInterval

SET_UNIT.YieldInterval

SET_UNIT:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_UNIT:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_UNIT:_FilterStart()

Starts the filtering for the defined collection.

SET_UNIT:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_UNIT.ClassID

The ID number of the class.

SET_UNIT.ClassName

The name of the class.

SET_UNIT.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_UNIT:ClearState(Object, StateName)

Clear the state of an object.

SET_UNIT:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_UNIT:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_UNIT:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_UNIT:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_UNIT:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_UNIT:E(Arguments)

Log an exception which will be traced always.

SET_UNIT:EventDispatcher()

Returns the event dispatcher

SET_UNIT:EventRemoveAll()

Remove all subscribed events

SET_UNIT:F(Arguments)

Trace a function call.

SET_UNIT:F2(Arguments)

Trace a function call level 2.

SET_UNIT:F3(Arguments)

Trace a function call level 3.

SET_UNIT:GetClassID()

Get the ClassID of the class instance.

SET_UNIT:GetClassName()

Get the ClassName of the class instance.

SET_UNIT:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_UNIT:GetEventPriority()

Get the Class Event processing Priority.

SET_UNIT:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_UNIT:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_UNIT:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_UNIT:I(Arguments)

Log an information which will be traced always.

SET_UNIT:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_UNIT:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_UNIT:IsTrace()

Enquires if tracing is on (for the class).

SET_UNIT:New()

BASE constructor.

SET_UNIT:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_UNIT:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_UNIT:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_UNIT:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_UNIT:OnEventDead(EventData)

Occurs when an object is dead.

SET_UNIT:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_UNIT:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_UNIT:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_UNIT:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_UNIT:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_UNIT:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_UNIT:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_UNIT:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_UNIT:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_UNIT:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_UNIT:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_UNIT:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_UNIT:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_UNIT:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_UNIT:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_UNIT:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_UNIT:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_UNIT:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_UNIT:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_UNIT:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_UNIT:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_UNIT:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_UNIT:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_UNIT.Scheduler

SET_UNIT:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_UNIT:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_UNIT:T(Arguments)

Trace a function logic level 1.

SET_UNIT:T2(Arguments)

Trace a function logic level 2.

SET_UNIT:T3(Arguments)

Trace a function logic level 3.

SET_UNIT:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_UNIT:TraceClass(Class)

Set tracing for a class

SET_UNIT:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_UNIT:TraceLevel(Level)

Set trace level

SET_UNIT:TraceOff()

Set trace off.

SET_UNIT:TraceOn()

Set trace on.

SET_UNIT:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_UNIT:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_UNIT._

SET_UNIT:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_UNIT:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_UNIT.__

SET_UNIT:onEvent(event)

Fields and Methods inherited from SET_ZONE Description

SET_ZONE:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_ZONE:AddZone(Zone)

Add ZONEs to SET_ZONE.

SET_ZONE:AddZonesByName(AddZoneNames)

Add ZONEs by a search name to SET_ZONE.

SET_ZONE:FilterPrefixes(Prefixes)

Builds a set of zones of defined zone prefixes.

SET_ZONE:FilterStart()

Starts the filtering.

SET_ZONE:FilterStop()

Stops the filtering for the defined collection.

SET_ZONE:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_ZONE:FindZone(ZoneName)

Finds a Zone based on the Zone Name.

SET_ZONE:ForEachZone(IteratorFunction, ...)

Iterate the SET_ZONE and call an interator function for each ZONE, providing the ZONE and optional parameters.

SET_ZONE:GetRandomZone()

Get a random zone from the set.

SET_ZONE:IsCoordinateInZone(Coordinate)

Validate if a coordinate is in one of the zones in the set.

SET_ZONE:IsIncludeObject(MZone)

SET_ZONE:New()

Creates a new SET_ZONE object, building a set of zones.

SET_ZONE:OnEventDeleteZone(EventData)

Handles the OnDead or OnCrash event for alive units set.

SET_ZONE:OnEventNewZone(EventData)

Handles the OnEventNewZone event for the Set.

SET_ZONE:RemoveZonesByName(RemoveZoneNames)

Remove ZONEs from SET_ZONE.

SET_ZONE:SetZoneProbability(ZoneName, ZoneProbability)

Set a zone probability.

Fields and Methods inherited from SET_BASE Description

SET_ZONE:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_ZONE:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_ZONE.CallScheduler

SET_ZONE:Clear()

Clear the Objects in the Set.

SET_ZONE:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_ZONE.Database

SET_ZONE.Filter

SET_ZONE:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_ZONE:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_ZONE:FilterOnce()

Filters for the defined collection.

SET_ZONE:FilterStop()

Stops the filtering for the defined collection.

SET_ZONE:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_ZONE:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_ZONE:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_ZONE:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_ZONE:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_ZONE:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_ZONE:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_ZONE:GetObjectNames()

Gets a string with all the object names.

SET_ZONE:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_ZONE:GetSet()

Gets the Set.

SET_ZONE:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_ZONE:GetSetObjects()

Gets a list of the Objects in the Set.

SET_ZONE:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_ZONE:IsIncludeObject(Object)

Decides whether to include the Object

SET_ZONE.List

SET_ZONE:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_ZONE:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_ZONE:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_ZONE:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_ZONE.Set

SET_ZONE:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_ZONE:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_ZONE:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_ZONE.SomeIteratorLimit

SET_ZONE.TimeInterval

SET_ZONE.YieldInterval

SET_ZONE:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_ZONE:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_ZONE:_FilterStart()

Starts the filtering for the defined collection.

SET_ZONE:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_ZONE.ClassID

The ID number of the class.

SET_ZONE.ClassName

The name of the class.

SET_ZONE.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_ZONE:ClearState(Object, StateName)

Clear the state of an object.

SET_ZONE:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_ZONE:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_ZONE:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_ZONE:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_ZONE:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_ZONE:E(Arguments)

Log an exception which will be traced always.

SET_ZONE:EventDispatcher()

Returns the event dispatcher

SET_ZONE:EventRemoveAll()

Remove all subscribed events

SET_ZONE:F(Arguments)

Trace a function call.

SET_ZONE:F2(Arguments)

Trace a function call level 2.

SET_ZONE:F3(Arguments)

Trace a function call level 3.

SET_ZONE:GetClassID()

Get the ClassID of the class instance.

SET_ZONE:GetClassName()

Get the ClassName of the class instance.

SET_ZONE:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_ZONE:GetEventPriority()

Get the Class Event processing Priority.

SET_ZONE:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_ZONE:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_ZONE:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_ZONE:I(Arguments)

Log an information which will be traced always.

SET_ZONE:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_ZONE:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_ZONE:IsTrace()

Enquires if tracing is on (for the class).

SET_ZONE:New()

BASE constructor.

SET_ZONE:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_ZONE:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_ZONE:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_ZONE:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_ZONE:OnEventDead(EventData)

Occurs when an object is dead.

SET_ZONE:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_ZONE:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_ZONE:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_ZONE:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_ZONE:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_ZONE:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_ZONE:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_ZONE:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_ZONE:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_ZONE:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_ZONE:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_ZONE:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_ZONE:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_ZONE:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_ZONE:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_ZONE:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_ZONE:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_ZONE:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_ZONE:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_ZONE:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_ZONE:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_ZONE:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_ZONE:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_ZONE.Scheduler

SET_ZONE:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_ZONE:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_ZONE:T(Arguments)

Trace a function logic level 1.

SET_ZONE:T2(Arguments)

Trace a function logic level 2.

SET_ZONE:T3(Arguments)

Trace a function logic level 3.

SET_ZONE:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_ZONE:TraceClass(Class)

Set tracing for a class

SET_ZONE:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_ZONE:TraceLevel(Level)

Set trace level

SET_ZONE:TraceOff()

Set trace off.

SET_ZONE:TraceOn()

Set trace on.

SET_ZONE:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_ZONE:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_ZONE._

SET_ZONE:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_ZONE:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_ZONE.__

SET_ZONE:onEvent(event)

Fields and Methods inherited from SET_ZONE_GOAL Description

SET_ZONE_GOAL:AddInDatabase(Event)

Handles the Database to check on an event (birth) that the Object was added in the Database.

SET_ZONE_GOAL:AddZone(Zone)

Add ZONEs to SET_ZONE_GOAL.

SET_ZONE_GOAL:FilterPrefixes(Prefixes)

Builds a set of zones of defined zone prefixes.

SET_ZONE_GOAL:FilterStart()

Starts the filtering.

SET_ZONE_GOAL:FilterStop()

Stops the filtering for the defined collection.

SET_ZONE_GOAL:FindInDatabase(Event)

Handles the Database to check on any event that Object exists in the Database.

SET_ZONE_GOAL:FindZone(ZoneName)

Finds a Zone based on the Zone Name.

SET_ZONE_GOAL:ForEachZone(IteratorFunction, ...)

Iterate the SET_ZONE_GOAL and call an interator function for each ZONE, providing the ZONE and optional parameters.

SET_ZONE_GOAL:GetRandomZone()

Get a random zone from the set.

SET_ZONE_GOAL:IsCoordinateInZone(Coordinate)

Validate if a coordinate is in one of the zones in the set.

SET_ZONE_GOAL:IsIncludeObject(MZone)

SET_ZONE_GOAL:New()

Creates a new SET_ZONE_GOAL object, building a set of zones.

SET_ZONE_GOAL:OnEventDeleteZoneGoal(EventData)

Handles the OnDead or OnCrash event for alive units set.

SET_ZONE_GOAL:OnEventNewZoneGoal(EventData)

Handles the OnEventNewZone event for the Set.

SET_ZONE_GOAL:RemoveZonesByName(RemoveZoneNames)

Remove ZONEs from SET_ZONE_GOAL.

SET_ZONE_GOAL:SetZoneProbability(ZoneName, ZoneProbability)

Set a zone probability.

Fields and Methods inherited from SET_BASE Description

SET_ZONE_GOAL:Add(ObjectName, Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

SET_ZONE_GOAL:AddObject(Object)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

SET_ZONE_GOAL.CallScheduler

SET_ZONE_GOAL:Clear()

Clear the Objects in the Set.

SET_ZONE_GOAL:Count()

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

SET_ZONE_GOAL.Database

SET_ZONE_GOAL.Filter

SET_ZONE_GOAL:FilterCrashes()

Starts the filtering of the Crash events for the collection.

SET_ZONE_GOAL:FilterDeads()

Starts the filtering of the Dead events for the collection.

SET_ZONE_GOAL:FilterOnce()

Filters for the defined collection.

SET_ZONE_GOAL:FilterStop()

Stops the filtering for the defined collection.

SET_ZONE_GOAL:FindNearestObjectFromPointVec2(PointVec2)

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

SET_ZONE_GOAL:Flush(MasterObject)

Flushes the current SET_BASE contents in the log ...

SET_ZONE_GOAL:ForEach(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_ZONE_GOAL:ForSome(IteratorFunction, arg, Set, Function, FunctionArguments)

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

SET_ZONE_GOAL:Get(ObjectName)

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_ZONE_GOAL:GetFirst()

Gets the first object from the Core.Set#SET_BASE and derived classes.

SET_ZONE_GOAL:GetLast()

Gets the last object from the Core.Set#SET_BASE and derived classes.

SET_ZONE_GOAL:GetObjectNames()

Gets a string with all the object names.

SET_ZONE_GOAL:GetRandom()

Gets a random object from the Core.Set#SET_BASE and derived classes.

SET_ZONE_GOAL:GetSet()

Gets the Set.

SET_ZONE_GOAL:GetSetNames()

Gets a list of the Names of the Objects in the Set.

SET_ZONE_GOAL:GetSetObjects()

Gets a list of the Objects in the Set.

SET_ZONE_GOAL:GetSomeIteratorLimit()

Get the SET iterator "limit".

SET_ZONE_GOAL:IsIncludeObject(Object)

Decides whether to include the Object

SET_ZONE_GOAL.List

SET_ZONE_GOAL:New(Database)

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

SET_ZONE_GOAL:OnAfterAdded(From, Event, To, ObjectName, Object)

Added Handler OnAfter for SET_BASE

SET_ZONE_GOAL:OnAfterRemoved(From, Event, To, ObjectName, Object)

Removed Handler OnAfter for SET_BASE

SET_ZONE_GOAL:Remove(ObjectName, NoTriggerEvent)

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

SET_ZONE_GOAL.Set

SET_ZONE_GOAL:SetDatabase(BaseSet)

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

SET_ZONE_GOAL:SetIteratorIntervals(YieldInterval, TimeInterval)

Define the SET iterator "yield interval" and the "time interval".

SET_ZONE_GOAL:SetSomeIteratorLimit(Limit)

Define the SET iterator "limit".

SET_ZONE_GOAL.SomeIteratorLimit

SET_ZONE_GOAL.TimeInterval

SET_ZONE_GOAL.YieldInterval

SET_ZONE_GOAL:_EventOnBirth(Event)

Handles the OnBirth event for the Set.

SET_ZONE_GOAL:_EventOnDeadOrCrash(Event)

Handles the OnDead or OnCrash event for alive units set.

SET_ZONE_GOAL:_FilterStart()

Starts the filtering for the defined collection.

SET_ZONE_GOAL:_Find(ObjectName)

Finds an Core.Base#BASE object based on the object Name.

Fields and Methods inherited from BASE Description

SET_ZONE_GOAL.ClassID

The ID number of the class.

SET_ZONE_GOAL.ClassName

The name of the class.

SET_ZONE_GOAL.ClassNameAndID

The name of the class concatenated with the ID number of the class.

SET_ZONE_GOAL:ClearState(Object, StateName)

Clear the state of an object.

SET_ZONE_GOAL:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)

Creation of a Birth Event.

SET_ZONE_GOAL:CreateEventCrash(EventTime, Initiator)

Creation of a Crash Event.

SET_ZONE_GOAL:CreateEventDead(EventTime, Initiator)

Creation of a Dead Event.

SET_ZONE_GOAL:CreateEventRemoveUnit(EventTime, Initiator)

Creation of a Remove Unit Event.

SET_ZONE_GOAL:CreateEventTakeoff(EventTime, Initiator)

Creation of a Takeoff Event.

SET_ZONE_GOAL:E(Arguments)

Log an exception which will be traced always.

SET_ZONE_GOAL:EventDispatcher()

Returns the event dispatcher

SET_ZONE_GOAL:EventRemoveAll()

Remove all subscribed events

SET_ZONE_GOAL:F(Arguments)

Trace a function call.

SET_ZONE_GOAL:F2(Arguments)

Trace a function call level 2.

SET_ZONE_GOAL:F3(Arguments)

Trace a function call level 3.

SET_ZONE_GOAL:GetClassID()

Get the ClassID of the class instance.

SET_ZONE_GOAL:GetClassName()

Get the ClassName of the class instance.

SET_ZONE_GOAL:GetClassNameAndID()

Get the ClassName + ClassID of the class instance.

SET_ZONE_GOAL:GetEventPriority()

Get the Class Event processing Priority.

SET_ZONE_GOAL:GetParent(Child, FromClass)

This is the worker method to retrieve the Parent class.

SET_ZONE_GOAL:GetState(Object, Key)

Get a Value given a Key from the Object.

SET_ZONE_GOAL:HandleEvent(Event, EventFunction)

Subscribe to a DCS Event.

SET_ZONE_GOAL:I(Arguments)

Log an information which will be traced always.

SET_ZONE_GOAL:Inherit(Child, Parent)

This is the worker method to inherit from a parent class.

SET_ZONE_GOAL:IsInstanceOf(ClassName)

This is the worker method to check if an object is an (sub)instance of a class.

SET_ZONE_GOAL:IsTrace()

Enquires if tracing is on (for the class).

SET_ZONE_GOAL:New()

BASE constructor.

SET_ZONE_GOAL:OnEvent(EventData)

Occurs when an object is completely destroyed.

SET_ZONE_GOAL:OnEventBaseCaptured(EventData)

Occurs when a ground unit captures either an airbase or a farp.

SET_ZONE_GOAL:OnEventBirth(EventData)

Occurs when any object is spawned into the mission.

SET_ZONE_GOAL:OnEventCrash(EventData)

Occurs when any aircraft crashes into the ground and is completely destroyed.

SET_ZONE_GOAL:OnEventDead(EventData)

Occurs when an object is dead.

SET_ZONE_GOAL:OnEventEjection(EventData)

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

SET_ZONE_GOAL:OnEventEngineShutdown(EventData)

Occurs when any aircraft shuts down its engines.

SET_ZONE_GOAL:OnEventEngineStartup(EventData)

Occurs when any aircraft starts its engines.

SET_ZONE_GOAL:OnEventHit(EventData)

Occurs whenever an object is hit by a weapon.

SET_ZONE_GOAL:OnEventHumanFailure(EventData)

Occurs when any system fails on a human controlled aircraft.

SET_ZONE_GOAL:OnEventLand(EventData)

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

SET_ZONE_GOAL:OnEventMarkAdded(EventData)

Occurs when a new mark was added.

SET_ZONE_GOAL:OnEventMarkChange(EventData)

Occurs when a mark text was changed.

SET_ZONE_GOAL:OnEventMarkRemoved(EventData)

Occurs when a mark was removed.

SET_ZONE_GOAL:OnEventMissionEnd(EventData)

Occurs when a mission ends

SET_ZONE_GOAL:OnEventMissionStart(EventData)

Occurs when a mission starts

SET_ZONE_GOAL:OnEventPilotDead(EventData)

Occurs when the pilot of an aircraft is killed.

SET_ZONE_GOAL:OnEventPlayerEnterUnit(EventData)

Occurs when any player assumes direct control of a unit.

SET_ZONE_GOAL:OnEventPlayerLeaveUnit(EventData)

Occurs when any player relieves control of a unit to the AI.

SET_ZONE_GOAL:OnEventRefueling(EventData)

Occurs when an aircraft connects with a tanker and begins taking on fuel.

SET_ZONE_GOAL:OnEventRefuelingStop(EventData)

Occurs when an aircraft is finished taking fuel.

SET_ZONE_GOAL:OnEventShootingEnd(EventData)

Occurs when any unit stops firing its weapon.

SET_ZONE_GOAL:OnEventShootingStart(EventData)

Occurs when any unit begins firing a weapon that has a high rate of fire.

SET_ZONE_GOAL:OnEventShot(EventData)

Occurs whenever any unit in a mission fires a weapon.

SET_ZONE_GOAL:OnEventTakeoff(EventData)

Occurs when an aircraft takes off from an airbase, farp, or ship.

SET_ZONE_GOAL:ScheduleOnce(Start, SchedulerFunction, ...)

Schedule a new time event.

SET_ZONE_GOAL:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)

Schedule a new time event.

SET_ZONE_GOAL:ScheduleStop(SchedulerFunction)

Stops the Schedule.

SET_ZONE_GOAL.Scheduler

SET_ZONE_GOAL:SetEventPriority(EventPriority)

Set the Class Event processing Priority.

SET_ZONE_GOAL:SetState(Object, Key, Value)

Set a state or property of the Object given a Key and a Value.

SET_ZONE_GOAL:T(Arguments)

Trace a function logic level 1.

SET_ZONE_GOAL:T2(Arguments)

Trace a function logic level 2.

SET_ZONE_GOAL:T3(Arguments)

Trace a function logic level 3.

SET_ZONE_GOAL:TraceAll(TraceAll)

Trace all methods in MOOSE

SET_ZONE_GOAL:TraceClass(Class)

Set tracing for a class

SET_ZONE_GOAL:TraceClassMethod(Class, Method)

Set tracing for a specific method of class

SET_ZONE_GOAL:TraceLevel(Level)

Set trace level

SET_ZONE_GOAL:TraceOff()

Set trace off.

SET_ZONE_GOAL:TraceOn()

Set trace on.

SET_ZONE_GOAL:TraceOnOff(TraceOnOff)

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

SET_ZONE_GOAL:UnHandleEvent(Event)

UnSubscribe to a DCS event.

SET_ZONE_GOAL._

SET_ZONE_GOAL:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function call.

SET_ZONE_GOAL:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)

Trace a function logic.

SET_ZONE_GOAL.__

SET_ZONE_GOAL:onEvent(event)

Field(s)

Function(s)

Add an AIRBASE object to SET_AIRBASE.

Defined in:

SET_AIRBASE

Parameter:

Airbase that should be added to the set.

Return value:

self

Add AIRBASEs to SET_AIRBASE.

Defined in:

SET_AIRBASE

Parameter:

#string AddAirbaseNames

A single name or an array of AIRBASE names.

Return value:

self

Handles the Database to check on an event (birth) that the Object was added in the Database.

This is required, because sometimes the DATABASE birth event gets called later than the SETBASE birth event!

Defined in:

SET_AIRBASE

Parameter:

Return values:

#string:

The name of the AIRBASE

#table:

The AIRBASE

Builds a set of airbases out of categories.

Possible current categories are plane, helicopter, ground, ship.

Defined in:

SET_AIRBASE

Parameter:

#string Categories

Can take the following values: "airdrome", "helipad", "ship".

Return value:

self

Builds a set of airbases of coalitions.

Possible current coalitions are red, blue and neutral.

Defined in:

SET_AIRBASE

Parameter:

#string Coalitions

Can take the following values: "red", "blue", "neutral".

Return value:

self

Starts the filtering.

Defined in:

SET_AIRBASE

Return value:

self

Finds a Airbase based on the Airbase Name.

Defined in:

SET_AIRBASE

Parameter:

#string AirbaseName

Return value:

The found Airbase.

Finds an Airbase in range of a coordinate.

Defined in:

SET_AIRBASE

Parameters:

#number Range

Return value:

The found Airbase.

Handles the Database to check on any event that Object exists in the Database.

This is required, because sometimes the DATABASE event gets called later than the SETBASE event or vise versa!

Defined in:

SET_AIRBASE

Parameter:

Return values:

#string:

The name of the AIRBASE

#table:

The AIRBASE

Iterate the SET_AIRBASE while identifying the nearest Wrapper.Airbase#AIRBASE from a Core.Point#POINT_VEC2.

Defined in:

SET_AIRBASE

Parameter:

A Core.Point#POINT_VEC2 object from where to evaluate the closest Wrapper.Airbase#AIRBASE.

Return value:

Iterate the SET_AIRBASE and call an interator function for each AIRBASE, providing the AIRBASE and optional parameters.

Defined in:

SET_AIRBASE

Parameters:

#function IteratorFunction

The function that will be called when there is an alive AIRBASE in the SET_AIRBASE. The function needs to accept a AIRBASE parameter.

...

Return value:

self

Finds a random Airbase in the set.

Defined in:

SET_AIRBASE

Return value:

The found Airbase.

Defined in:

SET_AIRBASE

Parameter:

Return value:

self

Creates a new SET_AIRBASE object, building a set of airbases belonging to a coalitions and categories.

Defined in:

SET_AIRBASE

Return value:

self

Usage:

-- Define a new SET_AIRBASE Object. The DatabaseSet will contain a reference to all Airbases.
DatabaseSet = SET_AIRBASE:New()

Starts the filtering.

Defined in:

SET_AIRBASE

Parameter:

Core.Event#EVENT EventData

Return value:

self

Remove AIRBASEs from SET_AIRBASE.

Defined in:

SET_AIRBASE

Parameter:

Wrapper.Airbase#AIRBASE RemoveAirbaseNames

A single name or an array of AIRBASE names.

Return value:

self

Field(s)

Function(s)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

Defined in:

Parameters:

#string ObjectName

Return value:

The added BASE Object.

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

Defined in:

Parameter:

Return value:

The added BASE Object.

Clear the Objects in the Set.

Defined in:

Return value:

self

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

#number:

Count

Starts the filtering of the Crash events for the collection.

Defined in:

Return value:

self

Starts the filtering of the Dead events for the collection.

Defined in:

Return value:

self

Filters for the defined collection.

Defined in:

Return value:

self

Stops the filtering for the defined collection.

Defined in:

Return value:

self

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

Defined in:

Parameter:

A Core.Point#POINT_VEC2 object from where to evaluate the closest object in the set.

Return value:

The closest object.

Flushes the current SET_BASE contents in the log ...

(for debugging reasons).

Defined in:

Parameter:

Core.Base#BASE MasterObject

(optional) The master object as a reference.

Return value:

#string:

A string with the names of the objects.

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

Parameters:

#function IteratorFunction

The function that will be called.

#table arg

Arguments of the IteratorFunction.

#SET_BASE Set

(Optional) The set to use. Default self:GetSet().

#function Function

(Optional) A function returning a #boolean true/false. Only if true, the IteratorFunction is called.

#table FunctionArguments

(Optional) Function arguments.

Return value:

self

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

Parameters:

#function IteratorFunction

The function that will be called.

arg

Set

Function

FunctionArguments

Return value:

self

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

Parameter:

#string ObjectName

Return value:

Gets the first object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets the last object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets a string with all the object names.

Defined in:

Return value:

#string:

A string with the names of the objects.

Gets a random object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets the Set.

Defined in:

Return value:

self

Gets a list of the Names of the Objects in the Set.

Defined in:

Return value:

self

Gets a list of the Objects in the Set.

Defined in:

Return value:

self

Get the SET iterator "limit".

Defined in:

Return value:

#number:

Defines how many objects are evaluated of the set as part of the Some iterators.

Decides whether to include the Object

Defined in:

Parameter:

#table Object

Return value:

self

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

Defined in:

Parameter:

Database

Return value:

Usage:

-- Define a new SET_BASE Object. This DBObject will contain a reference to all Group and Unit Templates defined within the ME and the DCSRTE.
DBObject = SET_BASE:New()

Added Handler OnAfter for SET_BASE

Defined in:

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removed Handler OnAfter for SET_BASE

Defined in:

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

Parameters:

#string ObjectName

NoTriggerEvent

(optional) When true, the :Remove() method will not trigger a Removed event.

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

Defined in:

Parameter:

#SET_BASE BaseSet

Return value:

Define the SET iterator "yield interval" and the "time interval".

Defined in:

Parameters:

#number YieldInterval

Sets the frequency when the iterator loop will yield after the number of objects processed. The default frequency is 10 objects processed.

#number TimeInterval

Sets the time in seconds when the main logic will resume the iterator loop. The default time is 0.001 seconds.

Return value:

self

Define the SET iterator "limit".

Defined in:

Parameter:

#number Limit

Defines how many objects are evaluated of the set as part of the Some iterators. The default is 1.

Return value:

self

Handles the OnBirth event for the Set.

Defined in:

Parameter:

Handles the OnDead or OnCrash event for alive units set.

Defined in:

Parameter:

Starts the filtering for the defined collection.

Defined in:

Return value:

self

Finds an Core.Base#BASE object based on the object Name.

Defined in:

Parameter:

#string ObjectName

Return value:

The Object found.

Field(s)

Function(s)

Clear the state of an object.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

StateName

The key that is should be cleared.

Creation of a Birth Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

#string IniUnitName

The initiating unit name.

place

subplace

Creation of a Crash Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Dead Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Remove Unit Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Takeoff Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Log an exception which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Returns the event dispatcher

Defined in:

Return value:

Remove all subscribed events

Defined in:

Return value:

Trace a function call.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 2.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 3.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Get the ClassID of the class instance.

Defined in:

Return value:

#string:

The ClassID of the class instance.

Get the ClassName of the class instance.

Defined in:

Return value:

#string:

The ClassName of the class instance.

Get the ClassName + ClassID of the class instance.

The ClassName + ClassID is formatted as '%s#%09d'.

Defined in:

Return value:

#string:

The ClassName + ClassID of the class instance.

Get the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Return value:

#number:

The Event processing Priority.

This is the worker method to retrieve the Parent class.

Note that the Parent class must be passed to call the parent class method.

self:GetParent(self):ParentMethod()


Defined in:

Parameters:

#BASE Child

This is the Child class from which the Parent class needs to be retrieved.

#BASE FromClass

(Optional) The class from which to get the parent.

Return value:

Get a Value given a Key from the Object.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

Key

The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!

Return value:

The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.

Subscribe to a DCS Event.

Defined in:

Parameters:

#function EventFunction

(optional) The function to be called when the event occurs for the unit.

Return value:

Log an information which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

This is the worker method to inherit from a parent class.

Defined in:

Parameters:

Child

is the Child class that inherits.

#BASE Parent

is the Parent class that the Child inherits from.

Return value:

Child

This is the worker method to check if an object is an (sub)instance of a class.

Examples:

  • ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false

Defined in:

Parameter:

ClassName

is the name of the class or the class itself to run the check against

Return value:

#boolean:

Enquires if tracing is on (for the class).

Defined in:

Return value:

#boolean:

BASE constructor.

This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.

function EVENT:New()
  local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
  return self
end
  

Defined in:

Return value:

Occurs when an object is completely destroyed.

initiator : The unit that is was destroyed.

Defined in:

Parameter:

The EventData structure.

Occurs when a ground unit captures either an airbase or a farp.

initiator : The unit that captured the base place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.

Defined in:

Parameter:

The EventData structure.

Occurs when any object is spawned into the mission.

initiator : The unit that was spawned

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft crashes into the ground and is completely destroyed.

initiator : The unit that has crashed

Defined in:

Parameter:

The EventData structure.

Occurs when an object is dead.

initiator : The unit that is dead.

Defined in:

Parameter:

The EventData structure.

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft shuts down its engines.

initiator : The unit that is stopping its engines.

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft starts its engines.

initiator : The unit that is starting its engines.

Defined in:

Parameter:

The EventData structure.

Occurs whenever an object is hit by a weapon.

initiator : The unit object the fired the weapon weapon: Weapon object that hit the target target: The Object that was hit.

Defined in:

Parameter:

The EventData structure.

Occurs when any system fails on a human controlled aircraft.

initiator : The unit that had the failure

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Occurs when a new mark was added.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark text was changed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark was removed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mission ends

Defined in:

Parameter:

The EventData structure.

Occurs when a mission starts

Defined in:

Parameter:

The EventData structure.

Occurs when the pilot of an aircraft is killed.

Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. initiator : The unit that the pilot has died in.

Defined in:

Parameter:

The EventData structure.

Occurs when any player assumes direct control of a unit.

initiator : The unit that is being taken control of.

Defined in:

Parameter:

The EventData structure.

Occurs when any player relieves control of a unit to the AI.

initiator : The unit that the player left.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft connects with a tanker and begins taking on fuel.

initiator : The unit that is receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft is finished taking fuel.

initiator : The unit that was receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit stops firing its weapon.

Event will always correspond with a shooting start event. initiator : The unit that was doing the shooting.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit begins firing a weapon that has a high rate of fire.

Most common with aircraft cannons (GAU-8), autocannons, and machine guns. initiator : The unit that is doing the shooting. target: The unit that is being targeted.

Defined in:

Parameter:

The EventData structure.

Occurs whenever any unit in a mission fires a weapon.

But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft takes off from an airbase, farp, or ship.

initiator : The unit that tookoff place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#number Repeat

Specifies the interval in seconds when the scheduler will call the event function.

#number RandomizeFactor

Specifies a randomization factor between 0 and 1 to randomize the Repeat.

#number Stop

Specifies the amount of seconds when the scheduler will be stopped.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Stops the Schedule.

Defined in:

Parameter:

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

Set the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Parameter:

#number EventPriority

The Event processing Priority.

Return value:

self

Set a state or property of the Object given a Key and a Value.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that will hold the Value set by the Key.

Key

The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!

Value

The value to is stored in the object.

Return value:

The Value set.

Trace a function logic level 1.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 2.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 3.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace all methods in MOOSE

Defined in:

Parameter:

#boolean TraceAll

true = trace all methods in MOOSE.

Set tracing for a class

Defined in:

Parameter:

#string Class

Set tracing for a specific method of class

Defined in:

Parameters:

#string Class

#string Method

Set trace level

Defined in:

Parameter:

#number Level

Set trace off.

Defined in:

Usage:

-- Switch the tracing Off
BASE:TraceOff()

Set trace on.

Defined in:

Usage:

-- Switch the tracing On
BASE:TraceOn()

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

So tracing must be switched on manually in your mission if you are using Moose statically. When moose is loading dynamically (for moose class development), tracing is switched on by default.

Defined in:

Parameter:

#boolean TraceOnOff

Switch the tracing on or off.

Usage:

-- Switch the tracing On
BASE:TraceOnOff( true )

-- Switch the tracing Off
BASE:TraceOnOff( false )

UnSubscribe to a DCS event.

Defined in:

Parameter:

Return value:

Trace a function call.

This function is private.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

Trace a function logic.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

TODO: Complete DCS#Event structure.
- The main event handling function... This function captures all events generated for the class. @param #BASE self @param DCS#Event event

Defined in:

Parameter:

event

Field(s)

SET_BASE.Database

Now base the new Set on the BaseSet

#table SET_BASE.List
#table SET_BASE.Set

Function(s)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

Defined in:

SET_BASE

Parameters:

#string ObjectName

Return value:

The added BASE Object.

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

Defined in:

SET_BASE

Parameter:

Return value:

The added BASE Object.

Clear the Objects in the Set.

Defined in:

SET_BASE

Return value:

self

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

Defined in:

SET_BASE

Return value:

#number:

Count

Starts the filtering of the Crash events for the collection.

Defined in:

SET_BASE

Return value:

self

Starts the filtering of the Dead events for the collection.

Defined in:

SET_BASE

Return value:

self

Filters for the defined collection.

Defined in:

SET_BASE

Return value:

self

Stops the filtering for the defined collection.

Defined in:

SET_BASE

Return value:

self

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

Defined in:

SET_BASE

Parameter:

A Core.Point#POINT_VEC2 object from where to evaluate the closest object in the set.

Return value:

The closest object.

Flushes the current SET_BASE contents in the log ...

(for debugging reasons).

Defined in:

SET_BASE

Parameter:

Core.Base#BASE MasterObject

(optional) The master object as a reference.

Return value:

#string:

A string with the names of the objects.

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

SET_BASE

Parameters:

#function IteratorFunction

The function that will be called.

#table arg

Arguments of the IteratorFunction.

#SET_BASE Set

(Optional) The set to use. Default self:GetSet().

#function Function

(Optional) A function returning a #boolean true/false. Only if true, the IteratorFunction is called.

#table FunctionArguments

(Optional) Function arguments.

Return value:

self

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

SET_BASE

Parameters:

#function IteratorFunction

The function that will be called.

arg

Set

Function

FunctionArguments

Return value:

self

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

SET_BASE

Parameter:

#string ObjectName

Return value:

Gets the first object from the Core.Set#SET_BASE and derived classes.

Defined in:

SET_BASE

Return value:

Gets the last object from the Core.Set#SET_BASE and derived classes.

Defined in:

SET_BASE

Return value:

Gets a string with all the object names.

Defined in:

SET_BASE

Return value:

#string:

A string with the names of the objects.

Gets a random object from the Core.Set#SET_BASE and derived classes.

Defined in:

SET_BASE

Return value:

Gets the Set.

Defined in:

SET_BASE

Return value:

self

Gets a list of the Names of the Objects in the Set.

Defined in:

SET_BASE

Return value:

self

Gets a list of the Objects in the Set.

Defined in:

SET_BASE

Return value:

self

Get the SET iterator "limit".

Defined in:

SET_BASE

Return value:

#number:

Defines how many objects are evaluated of the set as part of the Some iterators.

Decides whether to include the Object

Defined in:

SET_BASE

Parameter:

#table Object

Return value:

self

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

Defined in:

SET_BASE

Parameter:

Database

Return value:

Usage:

-- Define a new SET_BASE Object. This DBObject will contain a reference to all Group and Unit Templates defined within the ME and the DCSRTE.
DBObject = SET_BASE:New()

Added Handler OnAfter for SET_BASE

Defined in:

SET_BASE

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removed Handler OnAfter for SET_BASE

Defined in:

SET_BASE

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

SET_BASE

Parameters:

#string ObjectName

NoTriggerEvent

(optional) When true, the :Remove() method will not trigger a Removed event.

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

Defined in:

SET_BASE

Parameter:

#SET_BASE BaseSet

Return value:

Define the SET iterator "yield interval" and the "time interval".

Defined in:

SET_BASE

Parameters:

#number YieldInterval

Sets the frequency when the iterator loop will yield after the number of objects processed. The default frequency is 10 objects processed.

#number TimeInterval

Sets the time in seconds when the main logic will resume the iterator loop. The default time is 0.001 seconds.

Return value:

self

Define the SET iterator "limit".

Defined in:

SET_BASE

Parameter:

#number Limit

Defines how many objects are evaluated of the set as part of the Some iterators. The default is 1.

Return value:

self

Handles the OnBirth event for the Set.

Defined in:

SET_BASE

Parameter:

Handles the OnDead or OnCrash event for alive units set.

Defined in:

SET_BASE

Parameter:

Starts the filtering for the defined collection.

Defined in:

SET_BASE

Return value:

self

Finds an Core.Base#BASE object based on the object Name.

Defined in:

SET_BASE

Parameter:

#string ObjectName

Return value:

The Object found.

Field(s)

SET_BASE.Database

Now base the new Set on the BaseSet

#table SET_BASE.List
#table SET_BASE.Set

Function(s)

Clear the state of an object.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

StateName

The key that is should be cleared.

Creation of a Birth Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

#string IniUnitName

The initiating unit name.

place

subplace

Creation of a Crash Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Dead Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Remove Unit Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Takeoff Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Log an exception which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Returns the event dispatcher

Defined in:

Return value:

Remove all subscribed events

Defined in:

Return value:

Trace a function call.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 2.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 3.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Get the ClassID of the class instance.

Defined in:

Return value:

#string:

The ClassID of the class instance.

Get the ClassName of the class instance.

Defined in:

Return value:

#string:

The ClassName of the class instance.

Get the ClassName + ClassID of the class instance.

The ClassName + ClassID is formatted as '%s#%09d'.

Defined in:

Return value:

#string:

The ClassName + ClassID of the class instance.

Get the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Return value:

#number:

The Event processing Priority.

This is the worker method to retrieve the Parent class.

Note that the Parent class must be passed to call the parent class method.

self:GetParent(self):ParentMethod()


Defined in:

Parameters:

#BASE Child

This is the Child class from which the Parent class needs to be retrieved.

#BASE FromClass

(Optional) The class from which to get the parent.

Return value:

Get a Value given a Key from the Object.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

Key

The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!

Return value:

The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.

Subscribe to a DCS Event.

Defined in:

Parameters:

#function EventFunction

(optional) The function to be called when the event occurs for the unit.

Return value:

Log an information which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

This is the worker method to inherit from a parent class.

Defined in:

Parameters:

Child

is the Child class that inherits.

#BASE Parent

is the Parent class that the Child inherits from.

Return value:

Child

This is the worker method to check if an object is an (sub)instance of a class.

Examples:

  • ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false

Defined in:

Parameter:

ClassName

is the name of the class or the class itself to run the check against

Return value:

#boolean:

Enquires if tracing is on (for the class).

Defined in:

Return value:

#boolean:

BASE constructor.

This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.

function EVENT:New()
  local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
  return self
end
  

Defined in:

Return value:

Occurs when an object is completely destroyed.

initiator : The unit that is was destroyed.

Defined in:

Parameter:

The EventData structure.

Occurs when a ground unit captures either an airbase or a farp.

initiator : The unit that captured the base place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.

Defined in:

Parameter:

The EventData structure.

Occurs when any object is spawned into the mission.

initiator : The unit that was spawned

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft crashes into the ground and is completely destroyed.

initiator : The unit that has crashed

Defined in:

Parameter:

The EventData structure.

Occurs when an object is dead.

initiator : The unit that is dead.

Defined in:

Parameter:

The EventData structure.

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft shuts down its engines.

initiator : The unit that is stopping its engines.

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft starts its engines.

initiator : The unit that is starting its engines.

Defined in:

Parameter:

The EventData structure.

Occurs whenever an object is hit by a weapon.

initiator : The unit object the fired the weapon weapon: Weapon object that hit the target target: The Object that was hit.

Defined in:

Parameter:

The EventData structure.

Occurs when any system fails on a human controlled aircraft.

initiator : The unit that had the failure

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Occurs when a new mark was added.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark text was changed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark was removed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mission ends

Defined in:

Parameter:

The EventData structure.

Occurs when a mission starts

Defined in:

Parameter:

The EventData structure.

Occurs when the pilot of an aircraft is killed.

Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. initiator : The unit that the pilot has died in.

Defined in:

Parameter:

The EventData structure.

Occurs when any player assumes direct control of a unit.

initiator : The unit that is being taken control of.

Defined in:

Parameter:

The EventData structure.

Occurs when any player relieves control of a unit to the AI.

initiator : The unit that the player left.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft connects with a tanker and begins taking on fuel.

initiator : The unit that is receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft is finished taking fuel.

initiator : The unit that was receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit stops firing its weapon.

Event will always correspond with a shooting start event. initiator : The unit that was doing the shooting.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit begins firing a weapon that has a high rate of fire.

Most common with aircraft cannons (GAU-8), autocannons, and machine guns. initiator : The unit that is doing the shooting. target: The unit that is being targeted.

Defined in:

Parameter:

The EventData structure.

Occurs whenever any unit in a mission fires a weapon.

But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft takes off from an airbase, farp, or ship.

initiator : The unit that tookoff place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#number Repeat

Specifies the interval in seconds when the scheduler will call the event function.

#number RandomizeFactor

Specifies a randomization factor between 0 and 1 to randomize the Repeat.

#number Stop

Specifies the amount of seconds when the scheduler will be stopped.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Stops the Schedule.

Defined in:

Parameter:

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

Set the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Parameter:

#number EventPriority

The Event processing Priority.

Return value:

self

Set a state or property of the Object given a Key and a Value.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that will hold the Value set by the Key.

Key

The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!

Value

The value to is stored in the object.

Return value:

The Value set.

Trace a function logic level 1.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 2.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 3.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace all methods in MOOSE

Defined in:

Parameter:

#boolean TraceAll

true = trace all methods in MOOSE.

Set tracing for a class

Defined in:

Parameter:

#string Class

Set tracing for a specific method of class

Defined in:

Parameters:

#string Class

#string Method

Set trace level

Defined in:

Parameter:

#number Level

Set trace off.

Defined in:

Usage:

-- Switch the tracing Off
BASE:TraceOff()

Set trace on.

Defined in:

Usage:

-- Switch the tracing On
BASE:TraceOn()

Set trace on or off Note that when trace is off, no BASE.Debug statement is performed, increasing performance! When Moose is loaded statically, (as one file), tracing is switched off by default.

So tracing must be switched on manually in your mission if you are using Moose statically. When moose is loading dynamically (for moose class development), tracing is switched on by default.

Defined in:

Parameter:

#boolean TraceOnOff

Switch the tracing on or off.

Usage:

-- Switch the tracing On
BASE:TraceOnOff( true )

-- Switch the tracing Off
BASE:TraceOnOff( false )

UnSubscribe to a DCS event.

Defined in:

Parameter:

Return value:

Trace a function call.

This function is private.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

Trace a function logic.

Defined in:

Parameters:

Arguments

A #table or any field.

DebugInfoCurrentParam

DebugInfoFromParam

TODO: Complete DCS#Event structure.
- The main event handling function... This function captures all events generated for the class. @param #BASE self @param DCS#Event event

Defined in:

Parameter:

event

Field(s)

Function(s)

(R2.1) Add CARGO to SET_CARGO.

Defined in:

SET_CARGO

Parameter:

A single cargo.

Return value:

self

(R2.1) Add CARGOs to SET_CARGO.

Defined in:

SET_CARGO

Parameter:

#string AddCargoNames

A single name or an array of CARGO names.

Return value:

self

(R2.1) Handles the Database to check on an event (birth) that the Object was added in the Database.

This is required, because sometimes the DATABASE birth event gets called later than the SETBASE birth event!

Defined in:

SET_CARGO

Parameter:

Return values:

#string:

The name of the CARGO

#table:

The CARGO

(R2.1) Builds a set of cargos of coalitions.

Possible current coalitions are red, blue and neutral.

Defined in:

SET_CARGO

Parameter:

#string Coalitions

Can take the following values: "red", "blue", "neutral".

Return value:

self

(R2.1) Builds a set of cargos of defined countries.

Possible current countries are those known within DCS world.

Defined in:

SET_CARGO

Parameter:

#string Countries

Can take those country strings known within DCS world.

Return value:

self

(R2.1) Builds a set of cargos of defined cargo prefixes.

All the cargos starting with the given prefixes will be included within the set.

Defined in:

SET_CARGO

Parameter:

#string Prefixes

The prefix of which the cargo name starts with.

Return value:

self

(R2.1) Starts the filtering.

Defined in:

SET_CARGO

Return value:

self

Stops the filtering for the defined collection.

Defined in:

SET_CARGO

Return value:

self

(R2.1) Builds a set of cargos of defined cargo types.

Possible current types are those types known within DCS world.

Defined in:

SET_CARGO

Parameter:

#string Types

Can take those type strings known within DCS world.

Return value:

self

(R2.1) Finds a Cargo based on the Cargo Name.

Defined in:

SET_CARGO

Parameter:

#string CargoName

Return value:

The found Cargo.

(R2.1) Handles the Database to check on any event that Object exists in the Database.

This is required, because sometimes the DATABASE event gets called later than the SETBASE event or vise versa!

Defined in:

SET_CARGO

Parameter:

Return values:

#string:

The name of the CARGO

#table:

The CARGO

(R2.1) Iterate the SET_CARGO while identifying the nearest Cargo.Cargo#CARGO from a Core.Point#POINT_VEC2.

Defined in:

SET_CARGO

Parameter:

A Core.Point#POINT_VEC2 object from where to evaluate the closest Cargo.Cargo#CARGO.

Return value:

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is Deployed.

Defined in:

SET_CARGO

Return value:

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is Loaded.

Defined in:

SET_CARGO

Return value:

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is UnLoaded.

Defined in:

SET_CARGO

Return value:

Iterate the SET_CARGO while identifying the first Cargo.Cargo#CARGO that is UnLoaded and not Deployed.

Defined in:

SET_CARGO

Return value:

Defined in:

SET_CARGO

Parameter:

State

Defined in:

SET_CARGO

Parameter:

State

(R2.1) Iterate the SET_CARGO and call an interator function for each CARGO, providing the CARGO and optional parameters.

Defined in:

SET_CARGO

Parameters:

#function IteratorFunction

The function that will be called when there is an alive CARGO in the SET_CARGO. The function needs to accept a CARGO parameter.

...

Return value:

self

(R2.1)

Defined in:

SET_CARGO

Parameter:

Return value:

self

Creates a new SET_CARGO object, building a set of cargos belonging to a coalitions and categories.

Defined in:

SET_CARGO

Return value:

Usage:

-- Define a new SET_CARGO Object. The DatabaseSet will contain a reference to all Cargos.
DatabaseSet = SET_CARGO:New()

(R2.1) Handles the OnDead or OnCrash event for alive units set.

Defined in:

SET_CARGO

Parameter:

(R2.1) Handles the OnEventNewCargo event for the Set.

Defined in:

SET_CARGO

Parameter:

(R2.1) Remove CARGOs from SET_CARGO.

Defined in:

SET_CARGO

Parameter:

Wrapper.Cargo#CARGO RemoveCargoNames

A single name or an array of CARGO names.

Return value:

self

Field(s)

Function(s)

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using a given ObjectName as the index.

Defined in:

Parameters:

#string ObjectName

Return value:

The added BASE Object.

Adds a Core.Base#BASE object in the Core.Set#SET_BASE, using the Object Name as the index.

Defined in:

Parameter:

Return value:

The added BASE Object.

Clear the Objects in the Set.

Defined in:

Return value:

self

Retrieves the amount of objects in the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

#number:

Count

Starts the filtering of the Crash events for the collection.

Defined in:

Return value:

self

Starts the filtering of the Dead events for the collection.

Defined in:

Return value:

self

Filters for the defined collection.

Defined in:

Return value:

self

Stops the filtering for the defined collection.

Defined in:

Return value:

self

Iterate the SET_BASE while identifying the nearest object from a Core.Point#POINT_VEC2.

Defined in:

Parameter:

A Core.Point#POINT_VEC2 object from where to evaluate the closest object in the set.

Return value:

The closest object.

Flushes the current SET_BASE contents in the log ...

(for debugging reasons).

Defined in:

Parameter:

Core.Base#BASE MasterObject

(optional) The master object as a reference.

Return value:

#string:

A string with the names of the objects.

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

Parameters:

#function IteratorFunction

The function that will be called.

#table arg

Arguments of the IteratorFunction.

#SET_BASE Set

(Optional) The set to use. Default self:GetSet().

#function Function

(Optional) A function returning a #boolean true/false. Only if true, the IteratorFunction is called.

#table FunctionArguments

(Optional) Function arguments.

Return value:

self

Iterate the SET_BASE and derived classes and call an iterator function for the given SET_BASE, providing the Object for each element within the set and optional parameters.

Defined in:

Parameters:

#function IteratorFunction

The function that will be called.

arg

Set

Function

FunctionArguments

Return value:

self

Gets a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

Parameter:

#string ObjectName

Return value:

Gets the first object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets the last object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets a string with all the object names.

Defined in:

Return value:

#string:

A string with the names of the objects.

Gets a random object from the Core.Set#SET_BASE and derived classes.

Defined in:

Return value:

Gets the Set.

Defined in:

Return value:

self

Gets a list of the Names of the Objects in the Set.

Defined in:

Return value:

self

Gets a list of the Objects in the Set.

Defined in:

Return value:

self

Get the SET iterator "limit".

Defined in:

Return value:

#number:

Defines how many objects are evaluated of the set as part of the Some iterators.

Decides whether to include the Object

Defined in:

Parameter:

#table Object

Return value:

self

Creates a new SET_BASE object, building a set of units belonging to a coalitions, categories, countries, types or with defined prefix names.

Defined in:

Parameter:

Database

Return value:

Usage:

-- Define a new SET_BASE Object. This DBObject will contain a reference to all Group and Unit Templates defined within the ME and the DCSRTE.
DBObject = SET_BASE:New()

Added Handler OnAfter for SET_BASE

Defined in:

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removed Handler OnAfter for SET_BASE

Defined in:

Parameters:

#string From

#string Event

#string To

#string ObjectName

The name of the object.

Object

The object.

Removes a Core.Base#BASE object from the Core.Set#SET_BASE and derived classes, based on the Object Name.

Defined in:

Parameters:

#string ObjectName

NoTriggerEvent

(optional) When true, the :Remove() method will not trigger a Removed event.

Copies the Filter criteria from a given Set (for rebuilding a new Set based on an existing Set).

Defined in:

Parameter:

#SET_BASE BaseSet

Return value:

Define the SET iterator "yield interval" and the "time interval".

Defined in:

Parameters:

#number YieldInterval

Sets the frequency when the iterator loop will yield after the number of objects processed. The default frequency is 10 objects processed.

#number TimeInterval

Sets the time in seconds when the main logic will resume the iterator loop. The default time is 0.001 seconds.

Return value:

self

Define the SET iterator "limit".

Defined in:

Parameter:

#number Limit

Defines how many objects are evaluated of the set as part of the Some iterators. The default is 1.

Return value:

self

Handles the OnBirth event for the Set.

Defined in:

Parameter:

Handles the OnDead or OnCrash event for alive units set.

Defined in:

Parameter:

Starts the filtering for the defined collection.

Defined in:

Return value:

self

Finds an Core.Base#BASE object based on the object Name.

Defined in:

Parameter:

#string ObjectName

Return value:

The Object found.

Field(s)

Function(s)

Clear the state of an object.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

StateName

The key that is should be cleared.

Creation of a Birth Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

#string IniUnitName

The initiating unit name.

place

subplace

Creation of a Crash Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Dead Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Remove Unit Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Creation of a Takeoff Event.

Defined in:

Parameters:

DCS#Time EventTime

The time stamp of the event.

DCS#Object Initiator

The initiating object of the event.

Log an exception which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Returns the event dispatcher

Defined in:

Return value:

Remove all subscribed events

Defined in:

Return value:

Trace a function call.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 2.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function call level 3.

Must be at the beginning of the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Get the ClassID of the class instance.

Defined in:

Return value:

#string:

The ClassID of the class instance.

Get the ClassName of the class instance.

Defined in:

Return value:

#string:

The ClassName of the class instance.

Get the ClassName + ClassID of the class instance.

The ClassName + ClassID is formatted as '%s#%09d'.

Defined in:

Return value:

#string:

The ClassName + ClassID of the class instance.

Get the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Return value:

#number:

The Event processing Priority.

This is the worker method to retrieve the Parent class.

Note that the Parent class must be passed to call the parent class method.

self:GetParent(self):ParentMethod()


Defined in:

Parameters:

#BASE Child

This is the Child class from which the Parent class needs to be retrieved.

#BASE FromClass

(Optional) The class from which to get the parent.

Return value:

Get a Value given a Key from the Object.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that holds the Value set by the Key.

Key

The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!

Return value:

The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.

Subscribe to a DCS Event.

Defined in:

Parameters:

#function EventFunction

(optional) The function to be called when the event occurs for the unit.

Return value:

Log an information which will be traced always.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

This is the worker method to inherit from a parent class.

Defined in:

Parameters:

Child

is the Child class that inherits.

#BASE Parent

is the Parent class that the Child inherits from.

Return value:

Child

This is the worker method to check if an object is an (sub)instance of a class.

Examples:

  • ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true

  • ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false

Defined in:

Parameter:

ClassName

is the name of the class or the class itself to run the check against

Return value:

#boolean:

Enquires if tracing is on (for the class).

Defined in:

Return value:

#boolean:

BASE constructor.

This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.

function EVENT:New()
  local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
  return self
end
  

Defined in:

Return value:

Occurs when an object is completely destroyed.

initiator : The unit that is was destroyed.

Defined in:

Parameter:

The EventData structure.

Occurs when a ground unit captures either an airbase or a farp.

initiator : The unit that captured the base place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.

Defined in:

Parameter:

The EventData structure.

Occurs when any object is spawned into the mission.

initiator : The unit that was spawned

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft crashes into the ground and is completely destroyed.

initiator : The unit that has crashed

Defined in:

Parameter:

The EventData structure.

Occurs when an object is dead.

initiator : The unit that is dead.

Defined in:

Parameter:

The EventData structure.

Occurs when a pilot ejects from an aircraft initiator : The unit that has ejected

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft shuts down its engines.

initiator : The unit that is stopping its engines.

Defined in:

Parameter:

The EventData structure.

Occurs when any aircraft starts its engines.

initiator : The unit that is starting its engines.

Defined in:

Parameter:

The EventData structure.

Occurs whenever an object is hit by a weapon.

initiator : The unit object the fired the weapon weapon: Weapon object that hit the target target: The Object that was hit.

Defined in:

Parameter:

The EventData structure.

Occurs when any system fails on a human controlled aircraft.

initiator : The unit that had the failure

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft lands at an airbase, farp or ship initiator : The unit that has landed place: Object that the unit landed on.

Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Occurs when a new mark was added.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark text was changed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mark was removed.

MarkID: ID of the mark.

Defined in:

Parameter:

The EventData structure.

Occurs when a mission ends

Defined in:

Parameter:

The EventData structure.

Occurs when a mission starts

Defined in:

Parameter:

The EventData structure.

Occurs when the pilot of an aircraft is killed.

Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. initiator : The unit that the pilot has died in.

Defined in:

Parameter:

The EventData structure.

Occurs when any player assumes direct control of a unit.

initiator : The unit that is being taken control of.

Defined in:

Parameter:

The EventData structure.

Occurs when any player relieves control of a unit to the AI.

initiator : The unit that the player left.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft connects with a tanker and begins taking on fuel.

initiator : The unit that is receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft is finished taking fuel.

initiator : The unit that was receiving fuel.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit stops firing its weapon.

Event will always correspond with a shooting start event. initiator : The unit that was doing the shooting.

Defined in:

Parameter:

The EventData structure.

Occurs when any unit begins firing a weapon that has a high rate of fire.

Most common with aircraft cannons (GAU-8), autocannons, and machine guns. initiator : The unit that is doing the shooting. target: The unit that is being targeted.

Defined in:

Parameter:

The EventData structure.

Occurs whenever any unit in a mission fires a weapon.

But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.

Defined in:

Parameter:

The EventData structure.

Occurs when an aircraft takes off from an airbase, farp, or ship.

initiator : The unit that tookoff place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships

Defined in:

Parameter:

The EventData structure.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Schedule a new time event.

Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.

Defined in:

Parameters:

#number Start

Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.

#number Repeat

Specifies the interval in seconds when the scheduler will call the event function.

#number RandomizeFactor

Specifies a randomization factor between 0 and 1 to randomize the Repeat.

#number Stop

Specifies the amount of seconds when the scheduler will be stopped.

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

#table ...

Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.

Return value:

#number:

The ScheduleID of the planned schedule.

Stops the Schedule.

Defined in:

Parameter:

#function SchedulerFunction

The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.

Set the Class Event processing Priority.

The Event processing Priority is a number from 1 to 10, reflecting the order of the classes subscribed to the Event to be processed.

Defined in:

Parameter:

#number EventPriority

The Event processing Priority.

Return value:

self

Set a state or property of the Object given a Key and a Value.

Note that if the Object is destroyed, nillified or garbage collected, then the Values and Keys will also be gone.

Defined in:

Parameters:

Object

The object that will hold the Value set by the Key.

Key

The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!

Value

The value to is stored in the object.

Return value:

The Value set.

Trace a function logic level 1.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 2.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace a function logic level 3.

Can be anywhere within the function logic.

Defined in:

Parameter:

Arguments

A #table or any field.

Trace all methods in MOOSE

Defined in:

Parameter:

#boolean TraceAll

true = trace all methods in MOOSE.

Set tracing for a class

Defined in:

Parameter:

#string Class

Set tracing for a specific method of class