mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Restructuring
This commit is contained in:
parent
e46d7be91b
commit
5486a12c77
@ -944,7 +944,7 @@ function SET_GROUP:ForEachGroupCompletelyInZone( ZoneObject, IteratorFunction, .
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Group#GROUP GroupObject
|
-- @param Wrapper.Group#GROUP GroupObject
|
||||||
function( ZoneObject, GroupObject )
|
function( ZoneObject, GroupObject )
|
||||||
if GroupObject:IsCompletelyInZone( ZoneObject ) then
|
if GroupObject:IsCompletelyInZone( ZoneObject ) then
|
||||||
@ -966,7 +966,7 @@ function SET_GROUP:ForEachGroupPartlyInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Group#GROUP GroupObject
|
-- @param Wrapper.Group#GROUP GroupObject
|
||||||
function( ZoneObject, GroupObject )
|
function( ZoneObject, GroupObject )
|
||||||
if GroupObject:IsPartlyInZone( ZoneObject ) then
|
if GroupObject:IsPartlyInZone( ZoneObject ) then
|
||||||
@ -988,7 +988,7 @@ function SET_GROUP:ForEachGroupNotInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Group#GROUP GroupObject
|
-- @param Wrapper.Group#GROUP GroupObject
|
||||||
function( ZoneObject, GroupObject )
|
function( ZoneObject, GroupObject )
|
||||||
if GroupObject:IsNotInZone( ZoneObject ) then
|
if GroupObject:IsNotInZone( ZoneObject ) then
|
||||||
@ -1370,7 +1370,7 @@ function SET_UNIT:ForEachUnitCompletelyInZone( ZoneObject, IteratorFunction, ...
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Unit#UNIT UnitObject
|
-- @param Wrapper.Unit#UNIT UnitObject
|
||||||
function( ZoneObject, UnitObject )
|
function( ZoneObject, UnitObject )
|
||||||
if UnitObject:IsCompletelyInZone( ZoneObject ) then
|
if UnitObject:IsCompletelyInZone( ZoneObject ) then
|
||||||
@ -1392,7 +1392,7 @@ function SET_UNIT:ForEachUnitNotInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Unit#UNIT UnitObject
|
-- @param Wrapper.Unit#UNIT UnitObject
|
||||||
function( ZoneObject, UnitObject )
|
function( ZoneObject, UnitObject )
|
||||||
if UnitObject:IsNotInZone( ZoneObject ) then
|
if UnitObject:IsNotInZone( ZoneObject ) then
|
||||||
@ -1919,7 +1919,7 @@ function SET_CLIENT:ForEachClientInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Client#CLIENT ClientObject
|
-- @param Wrapper.Client#CLIENT ClientObject
|
||||||
function( ZoneObject, ClientObject )
|
function( ZoneObject, ClientObject )
|
||||||
if ClientObject:IsInZone( ZoneObject ) then
|
if ClientObject:IsInZone( ZoneObject ) then
|
||||||
@ -1941,7 +1941,7 @@ function SET_CLIENT:ForEachClientNotInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
self:F2( arg )
|
self:F2( arg )
|
||||||
|
|
||||||
self:ForEach( IteratorFunction, arg, self.Set,
|
self:ForEach( IteratorFunction, arg, self.Set,
|
||||||
--- @param Zone#ZONE_BASE ZoneObject
|
--- @param Core.Zone#ZONE_BASE ZoneObject
|
||||||
-- @param Wrapper.Client#CLIENT ClientObject
|
-- @param Wrapper.Client#CLIENT ClientObject
|
||||||
function( ZoneObject, ClientObject )
|
function( ZoneObject, ClientObject )
|
||||||
if ClientObject:IsNotInZone( ZoneObject ) then
|
if ClientObject:IsNotInZone( ZoneObject ) then
|
||||||
|
|||||||
@ -79,7 +79,7 @@ end
|
|||||||
|
|
||||||
|
|
||||||
--- Set the default @{Process} template with key ProcessName providing the ProcessClass and the process object when it is assigned to a @{Controllable} by the task.
|
--- Set the default @{Process} template with key ProcessName providing the ProcessClass and the process object when it is assigned to a @{Controllable} by the task.
|
||||||
-- @return Process#PROCESS
|
-- @return Fsm.Fsm#FSM_PROCESS
|
||||||
function FSM:AddProcess( From, Event, Process, ReturnEvents )
|
function FSM:AddProcess( From, Event, Process, ReturnEvents )
|
||||||
|
|
||||||
local sub = {}
|
local sub = {}
|
||||||
@ -349,7 +349,7 @@ end
|
|||||||
--- STATEMACHINE_CONTROLLABLE class
|
--- STATEMACHINE_CONTROLLABLE class
|
||||||
-- @type STATEMACHINE_CONTROLLABLE
|
-- @type STATEMACHINE_CONTROLLABLE
|
||||||
-- @field Wrapper.Controllable#CONTROLLABLE Controllable
|
-- @field Wrapper.Controllable#CONTROLLABLE Controllable
|
||||||
-- @extends Core.StateMachine#FSM
|
-- @extends Fsm.Fsm#FSM
|
||||||
STATEMACHINE_CONTROLLABLE = {
|
STATEMACHINE_CONTROLLABLE = {
|
||||||
ClassName = "STATEMACHINE_CONTROLLABLE",
|
ClassName = "STATEMACHINE_CONTROLLABLE",
|
||||||
}
|
}
|
||||||
@ -408,9 +408,8 @@ end
|
|||||||
|
|
||||||
--- FSM_PROCESS class
|
--- FSM_PROCESS class
|
||||||
-- @type FSM_PROCESS
|
-- @type FSM_PROCESS
|
||||||
-- @field Process#PROCESS Process
|
|
||||||
-- @field Tasking.Task#TASK_BASE Task
|
-- @field Tasking.Task#TASK_BASE Task
|
||||||
-- @extends Core.StateMachine#STATEMACHINE_CONTROLLABLE
|
-- @extends Fsm.Fsm#STATEMACHINE_CONTROLLABLE
|
||||||
FSM_PROCESS = {
|
FSM_PROCESS = {
|
||||||
ClassName = "FSM_PROCESS",
|
ClassName = "FSM_PROCESS",
|
||||||
}
|
}
|
||||||
@ -554,7 +553,7 @@ end
|
|||||||
--- FSM_TASK class
|
--- FSM_TASK class
|
||||||
-- @type FSM_TASK
|
-- @type FSM_TASK
|
||||||
-- @field Tasking.Task#TASK_BASE Task
|
-- @field Tasking.Task#TASK_BASE Task
|
||||||
-- @extends Core.StateMachine#FSM
|
-- @extends Fsm.Fsm#FSM
|
||||||
FSM_TASK = {
|
FSM_TASK = {
|
||||||
ClassName = "FSM_TASK",
|
ClassName = "FSM_TASK",
|
||||||
}
|
}
|
||||||
@ -567,7 +566,7 @@ FSM_TASK = {
|
|||||||
-- @return #FSM_TASK
|
-- @return #FSM_TASK
|
||||||
function FSM_TASK:New( FSMT )
|
function FSM_TASK:New( FSMT )
|
||||||
|
|
||||||
local self = BASE:Inherit( self, STATEMACHINE_CONTROLLABLE:New( FSMT ) ) -- Core.StateMachine#FSM_TASK
|
local self = BASE:Inherit( self, STATEMACHINE_CONTROLLABLE:New( FSMT ) ) -- Fsm.Fsm#FSM_TASK
|
||||||
|
|
||||||
self["onstatechange"] = self.OnStateChange
|
self["onstatechange"] = self.OnStateChange
|
||||||
|
|
||||||
@ -675,7 +674,7 @@ function FSM_TEMPLATE:GetTransitions()
|
|||||||
end
|
end
|
||||||
|
|
||||||
--- Set the default @{Process} template with key ProcessName providing the ProcessClass and the process object when it is assigned to a @{Controllable} by the task.
|
--- Set the default @{Process} template with key ProcessName providing the ProcessClass and the process object when it is assigned to a @{Controllable} by the task.
|
||||||
-- @return Process#PROCESS
|
-- @return Fsm.Fsm#FSM_TEMPLATE The FSM Process Template.
|
||||||
function FSM_TEMPLATE:AddProcess( From, Event, ProcessTemplate, ReturnEvents )
|
function FSM_TEMPLATE:AddProcess( From, Event, ProcessTemplate, ReturnEvents )
|
||||||
|
|
||||||
self:E( { ProcessTemplate = ProcessTemplate } )
|
self:E( { ProcessTemplate = ProcessTemplate } )
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
--
|
--
|
||||||
-- ===
|
-- ===
|
||||||
--
|
--
|
||||||
-- # @{#FSMT_ACCOUNT} FSM class, extends @{Process#PROCESS}
|
-- # @{#FSMT_ACCOUNT} FSM class, extends @{Fsm.Fsm#FSM_TEMPLATE}
|
||||||
--
|
--
|
||||||
-- ## FSMT_ACCOUNT state machine:
|
-- ## FSMT_ACCOUNT state machine:
|
||||||
--
|
--
|
||||||
@ -77,7 +77,7 @@ do -- FSMT_ACCOUNT
|
|||||||
--- FSMT_ACCOUNT class
|
--- FSMT_ACCOUNT class
|
||||||
-- @type FSMT_ACCOUNT
|
-- @type FSMT_ACCOUNT
|
||||||
-- @field Set#SET_UNIT TargetSetUnit
|
-- @field Set#SET_UNIT TargetSetUnit
|
||||||
-- @extends Core.StateMachine#FSM_TEMPLATE
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
FSMT_ACCOUNT = {
|
FSMT_ACCOUNT = {
|
||||||
ClassName = "FSMT_ACCOUNT",
|
ClassName = "FSMT_ACCOUNT",
|
||||||
TargetSetUnit = nil,
|
TargetSetUnit = nil,
|
||||||
@ -89,7 +89,7 @@ do -- FSMT_ACCOUNT
|
|||||||
function FSMT_ACCOUNT:New()
|
function FSMT_ACCOUNT:New()
|
||||||
|
|
||||||
-- Inherits from BASE
|
-- Inherits from BASE
|
||||||
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ACCOUNT" ) ) -- Core.StateMachine#FSM_TEMPLATE
|
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ACCOUNT" ) ) -- Fsm.Fsm#FSM_TEMPLATE
|
||||||
|
|
||||||
self:AddTransition( "Assigned", "Start", "Waiting")
|
self:AddTransition( "Assigned", "Start", "Waiting")
|
||||||
self:AddTransition( "*", "Wait", "Waiting")
|
self:AddTransition( "*", "Wait", "Waiting")
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
--
|
--
|
||||||
-- ===
|
-- ===
|
||||||
--
|
--
|
||||||
-- # @{#FSMT_ASSIGN} FSM class, extends @{Process#PROCESS}
|
-- # @{#FSMT_ASSIGN} FSM template class, extends @{Fsm.Fsm#FSM_TEMPLATE}
|
||||||
--
|
--
|
||||||
-- ## FSMT_ASSIGN state machine:
|
-- ## FSMT_ASSIGN state machine:
|
||||||
--
|
--
|
||||||
@ -86,8 +86,8 @@ do -- FSMT_ASSIGN
|
|||||||
-- @type FSMT_ASSIGN
|
-- @type FSMT_ASSIGN
|
||||||
-- @field Tasking.Task#TASK_BASE Task
|
-- @field Tasking.Task#TASK_BASE Task
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends Core.StateMachine#FSM_TEMPLATE
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
FSMT_ASSIGN = {
|
FSMT_ASSIGN = {
|
||||||
ClassName = "FSMT_ASSIGN",
|
ClassName = "FSMT_ASSIGN",
|
||||||
}
|
}
|
||||||
@ -99,7 +99,7 @@ do -- FSMT_ASSIGN
|
|||||||
function FSMT_ASSIGN:New()
|
function FSMT_ASSIGN:New()
|
||||||
|
|
||||||
-- Inherits from BASE
|
-- Inherits from BASE
|
||||||
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ASSIGN" ) ) -- Core.StateMachine#FSM_TEMPLATE
|
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ASSIGN" ) ) -- Fsm.Fsm#FSM_TEMPLATE
|
||||||
|
|
||||||
self:AddTransition( "UnAssigned", "Start", "Waiting" )
|
self:AddTransition( "UnAssigned", "Start", "Waiting" )
|
||||||
self:AddTransition( "Waiting", "Assign", "Assigned" )
|
self:AddTransition( "Waiting", "Assign", "Assigned" )
|
||||||
@ -125,8 +125,8 @@ do -- FSMT_ASSIGN_ACCEPT
|
|||||||
-- @type FSMT_ASSIGN_ACCEPT
|
-- @type FSMT_ASSIGN_ACCEPT
|
||||||
-- @field Tasking.Task#TASK_BASE Task
|
-- @field Tasking.Task#TASK_BASE Task
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends Fsm.Process#PROCESS
|
-- @extends #FSMT_ASSIGN
|
||||||
FSMT_ASSIGN_ACCEPT = {
|
FSMT_ASSIGN_ACCEPT = {
|
||||||
ClassName = "FSMT_ASSIGN_ACCEPT",
|
ClassName = "FSMT_ASSIGN_ACCEPT",
|
||||||
}
|
}
|
||||||
@ -185,7 +185,7 @@ do -- FSMT_ASSIGN_MENU_ACCEPT
|
|||||||
-- @type FSMT_ASSIGN_MENU_ACCEPT
|
-- @type FSMT_ASSIGN_MENU_ACCEPT
|
||||||
-- @field Tasking.Task#TASK_BASE Task
|
-- @field Tasking.Task#TASK_BASE Task
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends #FSMT_ASSIGN
|
-- @extends #FSMT_ASSIGN
|
||||||
FSMT_ASSIGN_MENU_ACCEPT = {
|
FSMT_ASSIGN_MENU_ACCEPT = {
|
||||||
ClassName = "FSMT_ASSIGN_MENU_ACCEPT",
|
ClassName = "FSMT_ASSIGN_MENU_ACCEPT",
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
--
|
--
|
||||||
-- ===
|
-- ===
|
||||||
--
|
--
|
||||||
-- # @{#FSMT_ROUTE} FSM class, extends @{Process#PROCESS}
|
-- # @{#FSMT_ROUTE} FSM class, extends @{Fsm.Fsm#FSM_TEMPLATE}
|
||||||
--
|
--
|
||||||
-- ## FSMT_ROUTE state machine:
|
-- ## FSMT_ROUTE state machine:
|
||||||
--
|
--
|
||||||
@ -81,8 +81,8 @@ do -- FSMT_ROUTE
|
|||||||
-- @type FSMT_ROUTE
|
-- @type FSMT_ROUTE
|
||||||
-- @field Tasking.Task#TASK TASK
|
-- @field Tasking.Task#TASK TASK
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends Core.StateMachine#FSM_TEMPLATE
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
FSMT_ROUTE = {
|
FSMT_ROUTE = {
|
||||||
ClassName = "FSMT_ROUTE",
|
ClassName = "FSMT_ROUTE",
|
||||||
}
|
}
|
||||||
@ -94,7 +94,7 @@ do -- FSMT_ROUTE
|
|||||||
function FSMT_ROUTE:New()
|
function FSMT_ROUTE:New()
|
||||||
|
|
||||||
-- Inherits from BASE
|
-- Inherits from BASE
|
||||||
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ROUTE" ) ) -- Core.StateMachine#FSM_TEMPLATE
|
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_ROUTE" ) ) -- Fsm.Fsm#FSM_TEMPLATE
|
||||||
|
|
||||||
self:AddTransition( "None", "Start", "Routing" )
|
self:AddTransition( "None", "Start", "Routing" )
|
||||||
self:AddTransition( "*", "Report", "Reporting" )
|
self:AddTransition( "*", "Report", "Reporting" )
|
||||||
@ -182,7 +182,7 @@ do -- FSMT_ROUTE_ZONE
|
|||||||
-- @type FSMT_ROUTE_ZONE
|
-- @type FSMT_ROUTE_ZONE
|
||||||
-- @field Tasking.Task#TASK TASK
|
-- @field Tasking.Task#TASK TASK
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends #FSMT_ROUTE
|
-- @extends #FSMT_ROUTE
|
||||||
FSMT_ROUTE_ZONE = {
|
FSMT_ROUTE_ZONE = {
|
||||||
ClassName = "FSMT_ROUTE_ZONE",
|
ClassName = "FSMT_ROUTE_ZONE",
|
||||||
@ -191,7 +191,7 @@ do -- FSMT_ROUTE_ZONE
|
|||||||
|
|
||||||
--- Creates a new routing state machine. The task will route a controllable to a ZONE until the controllable is within that ZONE.
|
--- Creates a new routing state machine. The task will route a controllable to a ZONE until the controllable is within that ZONE.
|
||||||
-- @param #FSMT_ROUTE_ZONE self
|
-- @param #FSMT_ROUTE_ZONE self
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
function FSMT_ROUTE_ZONE:New( TargetZone )
|
function FSMT_ROUTE_ZONE:New( TargetZone )
|
||||||
local self = BASE:Inherit( self, FSMT_ROUTE:New() ) -- #FSMT_ROUTE_ZONE
|
local self = BASE:Inherit( self, FSMT_ROUTE:New() ) -- #FSMT_ROUTE_ZONE
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
--
|
--
|
||||||
-- ===
|
-- ===
|
||||||
--
|
--
|
||||||
-- # @{#FSMT_SMOKE} FSM class, extends @{Process#PROCESS}
|
-- # @{#FSMT_SMOKE} FSM class, extends @{Fsm.Fsm#FSM_TEMPLATE}
|
||||||
--
|
--
|
||||||
-- ## FSMT_SMOKE state machine:
|
-- ## FSMT_SMOKE state machine:
|
||||||
--
|
--
|
||||||
@ -70,7 +70,7 @@ do -- FSMT_SMOKE
|
|||||||
|
|
||||||
--- FSMT_SMOKE class
|
--- FSMT_SMOKE class
|
||||||
-- @type FSMT_SMOKE
|
-- @type FSMT_SMOKE
|
||||||
-- @extends Core.StateMachine#FSM_TEMPLATE
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
FSMT_SMOKE = {
|
FSMT_SMOKE = {
|
||||||
ClassName = "FSMT_SMOKE",
|
ClassName = "FSMT_SMOKE",
|
||||||
}
|
}
|
||||||
@ -81,7 +81,7 @@ do -- FSMT_SMOKE
|
|||||||
function FSMT_SMOKE:New()
|
function FSMT_SMOKE:New()
|
||||||
|
|
||||||
-- Inherits from BASE
|
-- Inherits from BASE
|
||||||
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_SMOKE" ) ) -- Core.StateMachine#FSM_TEMPLATE
|
local self = BASE:Inherit( self, FSM_TEMPLATE:New( "FSMT_SMOKE" ) ) -- Fsm.Fsm#FSM_TEMPLATE
|
||||||
|
|
||||||
self:AddTransition( "None", "Start", "AwaitSmoke" )
|
self:AddTransition( "None", "Start", "AwaitSmoke" )
|
||||||
self:AddTransition( "AwaitSmoke", "Next", "Smoking" )
|
self:AddTransition( "AwaitSmoke", "Next", "Smoking" )
|
||||||
@ -133,7 +133,7 @@ do -- FSMT_SMOKE_TARGETS_ZONE
|
|||||||
--- FSMT_SMOKE_TARGETS_ZONE class
|
--- FSMT_SMOKE_TARGETS_ZONE class
|
||||||
-- @type FSMT_SMOKE_TARGETS_ZONE
|
-- @type FSMT_SMOKE_TARGETS_ZONE
|
||||||
-- @field Set#SET_UNIT TargetSetUnit
|
-- @field Set#SET_UNIT TargetSetUnit
|
||||||
-- @field Zone#ZONE_BASE TargetZone
|
-- @field Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @extends #FSMT_SMOKE
|
-- @extends #FSMT_SMOKE
|
||||||
FSMT_SMOKE_TARGETS_ZONE = {
|
FSMT_SMOKE_TARGETS_ZONE = {
|
||||||
ClassName = "FSMT_SMOKE_TARGETS_ZONE",
|
ClassName = "FSMT_SMOKE_TARGETS_ZONE",
|
||||||
@ -149,7 +149,7 @@ do -- FSMT_SMOKE_TARGETS_ZONE
|
|||||||
--- Creates a new target smoking state machine. The process will request from the menu if it accepts the task, if not, the unit is removed from the simulator.
|
--- Creates a new target smoking state machine. The process will request from the menu if it accepts the task, if not, the unit is removed from the simulator.
|
||||||
-- @param #FSMT_SMOKE_TARGETS_ZONE self
|
-- @param #FSMT_SMOKE_TARGETS_ZONE self
|
||||||
-- @param Set#SET_UNIT TargetSetUnit
|
-- @param Set#SET_UNIT TargetSetUnit
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
function FSMT_SMOKE_TARGETS_ZONE:New( TargetSetUnit, TargetZone )
|
function FSMT_SMOKE_TARGETS_ZONE:New( TargetSetUnit, TargetZone )
|
||||||
local self = BASE:Inherit( self, FSMT_SMOKE:New() ) -- #FSMT_SMOKE
|
local self = BASE:Inherit( self, FSMT_SMOKE:New() ) -- #FSMT_SMOKE
|
||||||
|
|
||||||
@ -161,7 +161,7 @@ do -- FSMT_SMOKE_TARGETS_ZONE
|
|||||||
--- Creates a new target smoking state machine. The process will request from the menu if it accepts the task, if not, the unit is removed from the simulator.
|
--- Creates a new target smoking state machine. The process will request from the menu if it accepts the task, if not, the unit is removed from the simulator.
|
||||||
-- @param #FSMT_SMOKE_TARGETS_ZONE self
|
-- @param #FSMT_SMOKE_TARGETS_ZONE self
|
||||||
-- @param Set#SET_UNIT TargetSetUnit
|
-- @param Set#SET_UNIT TargetSetUnit
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @return #FSMT_SMOKE_TARGETS_ZONE self
|
-- @return #FSMT_SMOKE_TARGETS_ZONE self
|
||||||
function FSMT_SMOKE_TARGETS_ZONE:Init( TargetSetUnit, TargetZone )
|
function FSMT_SMOKE_TARGETS_ZONE:Init( TargetSetUnit, TargetZone )
|
||||||
|
|
||||||
|
|||||||
@ -236,7 +236,7 @@ end
|
|||||||
function _NewPatrolRoute( AIControllable )
|
function _NewPatrolRoute( AIControllable )
|
||||||
|
|
||||||
AIControllable:T( "NewPatrolRoute" )
|
AIControllable:T( "NewPatrolRoute" )
|
||||||
local PatrolZone = AIControllable:GetState( AIControllable, "PatrolZone" ) -- PatrolZone#PATROLZONE
|
local PatrolZone = AIControllable:GetState( AIControllable, "PatrolZone" ) -- PatrolCore.Zone#PATROLZONE
|
||||||
PatrolZone:__Route( 1 )
|
PatrolZone:__Route( 1 )
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
-- @field Wrapper.Group#GROUP ProcessGroup
|
-- @field Wrapper.Group#GROUP ProcessGroup
|
||||||
-- @field Core.Menu#MENU_GROUP MissionMenu
|
-- @field Core.Menu#MENU_GROUP MissionMenu
|
||||||
-- @field #string ProcessName
|
-- @field #string ProcessName
|
||||||
-- @extends Core.StateMachine#STATEMACHINE_CONTROLLABLE
|
-- @extends Fsm.Fsm#STATEMACHINE_CONTROLLABLE
|
||||||
PROCESS = {
|
PROCESS = {
|
||||||
ClassName = "PROCESS",
|
ClassName = "PROCESS",
|
||||||
NextEvent = nil,
|
NextEvent = nil,
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
-- @type PROCESS_JTAC
|
-- @type PROCESS_JTAC
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Core.Set#SET_UNIT TargetSetUnit
|
-- @field Core.Set#SET_UNIT TargetSetUnit
|
||||||
-- @extends Process#PROCESS
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
PROCESS_JTAC = {
|
PROCESS_JTAC = {
|
||||||
ClassName = "PROCESS_JTAC",
|
ClassName = "PROCESS_JTAC",
|
||||||
Fsm = {},
|
Fsm = {},
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
-- @type PROCESS_PICKUP
|
-- @type PROCESS_PICKUP
|
||||||
-- @field Wrapper.Unit#UNIT ProcessUnit
|
-- @field Wrapper.Unit#UNIT ProcessUnit
|
||||||
-- @field Core.Set#SET_UNIT TargetSetUnit
|
-- @field Core.Set#SET_UNIT TargetSetUnit
|
||||||
-- @extends Process#PROCESS
|
-- @extends Fsm.Fsm#FSM_TEMPLATE
|
||||||
PROCESS_PICKUP = {
|
PROCESS_PICKUP = {
|
||||||
ClassName = "PROCESS_PICKUP",
|
ClassName = "PROCESS_PICKUP",
|
||||||
Fsm = {},
|
Fsm = {},
|
||||||
|
|||||||
@ -222,7 +222,7 @@ function AIBALANCER:onenterMonitoring( SetGroup )
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
--- @param Zone#ZONE_RADIUS RangeZone
|
--- @param Core.Zone#ZONE_RADIUS RangeZone
|
||||||
-- @param Wrapper.Group#GROUP AIGroup
|
-- @param Wrapper.Group#GROUP AIGroup
|
||||||
function( RangeZone, AIGroup, PlayerInRange )
|
function( RangeZone, AIGroup, PlayerInRange )
|
||||||
if PlayerInRange.Value == false then
|
if PlayerInRange.Value == false then
|
||||||
|
|||||||
@ -1290,7 +1290,7 @@ function SPAWN:_RandomizeZones( SpawnIndex )
|
|||||||
self:F( { self.SpawnTemplatePrefix, SpawnIndex, self.SpawnRandomizeZones } )
|
self:F( { self.SpawnTemplatePrefix, SpawnIndex, self.SpawnRandomizeZones } )
|
||||||
|
|
||||||
if self.SpawnRandomizeZones then
|
if self.SpawnRandomizeZones then
|
||||||
local SpawnZone = nil -- Zone#ZONE_BASE
|
local SpawnZone = nil -- Core.Zone#ZONE_BASE
|
||||||
while not SpawnZone do
|
while not SpawnZone do
|
||||||
self:T( { SpawnZoneTableCount = #self.SpawnZoneTable, self.SpawnZoneTable } )
|
self:T( { SpawnZoneTableCount = #self.SpawnZoneTable, self.SpawnZoneTable } )
|
||||||
local ZoneID = math.random( #self.SpawnZoneTable )
|
local ZoneID = math.random( #self.SpawnZoneTable )
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
-- @field #MISSION.Clients _Clients
|
-- @field #MISSION.Clients _Clients
|
||||||
-- @field Core.Menu#MENU_COALITION MissionMenu
|
-- @field Core.Menu#MENU_COALITION MissionMenu
|
||||||
-- @field #string MissionBriefing
|
-- @field #string MissionBriefing
|
||||||
-- @extends Core.StateMachine#FSM
|
-- @extends Fsm.Fsm#FSM
|
||||||
MISSION = {
|
MISSION = {
|
||||||
ClassName = "MISSION",
|
ClassName = "MISSION",
|
||||||
Name = "",
|
Name = "",
|
||||||
@ -40,7 +40,7 @@ MISSION = {
|
|||||||
-- @return #MISSION self
|
-- @return #MISSION self
|
||||||
function MISSION:New( CommandCenter, MissionName, MissionPriority, MissionBriefing, MissionCoalition )
|
function MISSION:New( CommandCenter, MissionName, MissionPriority, MissionBriefing, MissionCoalition )
|
||||||
|
|
||||||
local self = BASE:Inherit( self, FSM:New() ) -- Core.StateMachine#FSM
|
local self = BASE:Inherit( self, FSM:New() ) -- Fsm.Fsm#FSM
|
||||||
|
|
||||||
self:SetStartState( "Idle" )
|
self:SetStartState( "Idle" )
|
||||||
|
|
||||||
|
|||||||
@ -54,8 +54,8 @@
|
|||||||
-- @field Core.Scheduler#SCHEDULER TaskScheduler
|
-- @field Core.Scheduler#SCHEDULER TaskScheduler
|
||||||
-- @field Tasking.Mission#MISSION Mission
|
-- @field Tasking.Mission#MISSION Mission
|
||||||
-- @field Core.Set#SET_GROUP SetGroup The Set of Groups assigned to the Task
|
-- @field Core.Set#SET_GROUP SetGroup The Set of Groups assigned to the Task
|
||||||
-- @field Core.StateMachine#FSM_TEMPLATE FsmTemplate
|
-- @field Fsm.Fsm#FSM_TEMPLATE FsmTemplate
|
||||||
-- @extends Core.StateMachine#FSM_TASK
|
-- @extends Fsm.Fsm#FSM_TASK
|
||||||
TASK_BASE = {
|
TASK_BASE = {
|
||||||
ClassName = "TASK_BASE",
|
ClassName = "TASK_BASE",
|
||||||
TaskScheduler = nil,
|
TaskScheduler = nil,
|
||||||
@ -77,7 +77,7 @@ TASK_BASE = {
|
|||||||
-- @return #TASK_BASE self
|
-- @return #TASK_BASE self
|
||||||
function TASK_BASE:New( Mission, SetGroupAssign, TaskName, TaskType )
|
function TASK_BASE:New( Mission, SetGroupAssign, TaskName, TaskType )
|
||||||
|
|
||||||
local self = BASE:Inherit( self, FSM_TASK:New() ) -- Core.StateMachine#FSM_TASK
|
local self = BASE:Inherit( self, FSM_TASK:New() ) -- Fsm.Fsm#FSM_TASK
|
||||||
|
|
||||||
self:SetStartState( "Planned" )
|
self:SetStartState( "Planned" )
|
||||||
self:AddTransition( "Planned", "Assign", "Assigned" )
|
self:AddTransition( "Planned", "Assign", "Assigned" )
|
||||||
@ -185,7 +185,7 @@ function TASK_BASE:AssignToUnit( TaskUnit )
|
|||||||
self:F( TaskUnit:GetName() )
|
self:F( TaskUnit:GetName() )
|
||||||
|
|
||||||
-- Assign a new FsmUnit to TaskUnit.
|
-- Assign a new FsmUnit to TaskUnit.
|
||||||
local FsmUnit = self:SetStateMachine( TaskUnit, FSM_PROCESS:New( self:GetFsmTemplate(), TaskUnit, self ) ) -- Core.StateMachine#FSM_PROCESS
|
local FsmUnit = self:SetStateMachine( TaskUnit, FSM_PROCESS:New( self:GetFsmTemplate(), TaskUnit, self ) ) -- Fsm.Fsm#FSM_PROCESS
|
||||||
self:E({"Address FsmUnit", tostring( FsmUnit ) } )
|
self:E({"Address FsmUnit", tostring( FsmUnit ) } )
|
||||||
|
|
||||||
-- Set the events
|
-- Set the events
|
||||||
@ -392,7 +392,7 @@ end
|
|||||||
--- Get the default or currently assigned @{Process} template with key ProcessName.
|
--- Get the default or currently assigned @{Process} template with key ProcessName.
|
||||||
-- @param #TASK_BASE self
|
-- @param #TASK_BASE self
|
||||||
-- @param #string ProcessName
|
-- @param #string ProcessName
|
||||||
-- @return Process#PROCESS
|
-- @return Fsm.Fsm#FSM_TEMPLATE
|
||||||
function TASK_BASE:GetProcessTemplate( ProcessName )
|
function TASK_BASE:GetProcessTemplate( ProcessName )
|
||||||
|
|
||||||
local ProcessTemplate = self.ProcessClasses[ProcessName]
|
local ProcessTemplate = self.ProcessClasses[ProcessName]
|
||||||
@ -402,6 +402,7 @@ end
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- TODO: Obscolete?
|
||||||
--- Fail processes from @{Task} with key @{Unit}
|
--- Fail processes from @{Task} with key @{Unit}
|
||||||
-- @param #TASK_BASE self
|
-- @param #TASK_BASE self
|
||||||
-- @param #string TaskUnitName
|
-- @param #string TaskUnitName
|
||||||
@ -409,7 +410,7 @@ end
|
|||||||
function TASK_BASE:FailProcesses( TaskUnitName )
|
function TASK_BASE:FailProcesses( TaskUnitName )
|
||||||
|
|
||||||
for ProcessID, ProcessData in pairs( self.Processes[TaskUnitName] ) do
|
for ProcessID, ProcessData in pairs( self.Processes[TaskUnitName] ) do
|
||||||
local Process = ProcessData -- Process#PROCESS
|
local Process = ProcessData
|
||||||
Process.Fsm:Fail()
|
Process.Fsm:Fail()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -35,7 +35,7 @@ do -- TASK_A2G
|
|||||||
-- @param #string TaskName The name of the Task.
|
-- @param #string TaskName The name of the Task.
|
||||||
-- @param #string TaskType BAI or CAS
|
-- @param #string TaskType BAI or CAS
|
||||||
-- @param Set#SET_UNIT UnitSetTargets
|
-- @param Set#SET_UNIT UnitSetTargets
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @return #TASK_A2G self
|
-- @return #TASK_A2G self
|
||||||
function TASK_A2G:New( Mission, SetGroup, TaskName, TaskType, TargetSetUnit, TargetZone, FACUnit )
|
function TASK_A2G:New( Mission, SetGroup, TaskName, TaskType, TargetSetUnit, TargetZone, FACUnit )
|
||||||
local self = BASE:Inherit( self, TASK_BASE:New( Mission, SetGroup, TaskName, TaskType ) )
|
local self = BASE:Inherit( self, TASK_BASE:New( Mission, SetGroup, TaskName, TaskType ) )
|
||||||
|
|||||||
@ -212,7 +212,7 @@ function AIBALANCER:_ClientAliveMonitorScheduler()
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
--- @param Zone#ZONE_RADIUS RangeZone
|
--- @param Core.Zone#ZONE_RADIUS RangeZone
|
||||||
-- @param Wrapper.Group#GROUP AIGroup
|
-- @param Wrapper.Group#GROUP AIGroup
|
||||||
function( RangeZone, AIGroup, PlayerInRange )
|
function( RangeZone, AIGroup, PlayerInRange )
|
||||||
local AIGroupTemplate = AIGroup:GetTemplate()
|
local AIGroupTemplate = AIGroup:GetTemplate()
|
||||||
|
|||||||
@ -35,7 +35,7 @@ do -- TASK_PICKUP
|
|||||||
-- @param #string TaskName The name of the Task.
|
-- @param #string TaskName The name of the Task.
|
||||||
-- @param #string TaskType BAI or CAS
|
-- @param #string TaskType BAI or CAS
|
||||||
-- @param Set#SET_UNIT UnitSetTargets
|
-- @param Set#SET_UNIT UnitSetTargets
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @return #TASK_PICKUP self
|
-- @return #TASK_PICKUP self
|
||||||
function TASK_PICKUP:New( Mission, AssignedSetGroup, TaskName, TaskType )
|
function TASK_PICKUP:New( Mission, AssignedSetGroup, TaskName, TaskType )
|
||||||
local self = BASE:Inherit( self, TASK_BASE:New( Mission, AssignedSetGroup, TaskName, TaskType, "PICKUP" ) )
|
local self = BASE:Inherit( self, TASK_BASE:New( Mission, AssignedSetGroup, TaskName, TaskType, "PICKUP" ) )
|
||||||
|
|||||||
@ -36,7 +36,7 @@ do -- TASK_SEAD
|
|||||||
-- @param Set#SET_GROUP SetGroup The set of groups for which the Task can be assigned.
|
-- @param Set#SET_GROUP SetGroup The set of groups for which the Task can be assigned.
|
||||||
-- @param #string TaskName The name of the Task.
|
-- @param #string TaskName The name of the Task.
|
||||||
-- @param Set#SET_UNIT UnitSetTargets
|
-- @param Set#SET_UNIT UnitSetTargets
|
||||||
-- @param Zone#ZONE_BASE TargetZone
|
-- @param Core.Zone#ZONE_BASE TargetZone
|
||||||
-- @return #TASK_SEAD self
|
-- @return #TASK_SEAD self
|
||||||
function TASK_SEAD:New( Mission, SetGroup, TaskName, TargetSetUnit, TargetZone )
|
function TASK_SEAD:New( Mission, SetGroup, TaskName, TargetSetUnit, TargetZone )
|
||||||
local self = BASE:Inherit( self, TASK_BASE:New( Mission, SetGroup, TaskName, "SEAD" ) ) -- Tasking.Task_SEAD#TASK_SEAD
|
local self = BASE:Inherit( self, TASK_BASE:New( Mission, SetGroup, TaskName, "SEAD" ) ) -- Tasking.Task_SEAD#TASK_SEAD
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user