mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Updates
This commit is contained in:
@@ -597,10 +597,10 @@ FSM_SET = {
|
||||
-- @param #table FSMT Finite State Machine Table
|
||||
-- @param Set_SET_BASE FSMSet (optional) The Set object that the FSM_SET governs.
|
||||
-- @return #FSM_SET
|
||||
function FSM_SET:New( FSMT, FSMSet )
|
||||
function FSM_SET:New( FSMSet )
|
||||
|
||||
-- Inherits from BASE
|
||||
local self = BASE:Inherit( self, FSM:New( FSMT ) ) -- Fsm.Fsm#FSM_SET
|
||||
local self = BASE:Inherit( self, FSM:New() ) -- Fsm.Fsm#FSM_SET
|
||||
|
||||
if FSMSet then
|
||||
self:Set( FSMSet )
|
||||
|
||||
@@ -177,20 +177,16 @@ PATROLZONE = {
|
||||
-- PatrolArea = PATROLZONE:New( PatrolZone, 3000, 6000, 600, 900 )
|
||||
function PATROLZONE:New( PatrolZone, PatrolFloorAltitude, PatrolCeilingAltitude, PatrolMinSpeed, PatrolMaxSpeed )
|
||||
|
||||
local FSMT = {
|
||||
initial = 'None',
|
||||
events = {
|
||||
{ name = 'Start', from = '*', to = 'Route' },
|
||||
{ name = 'Route', from = '*', to = 'Route' },
|
||||
{ name = 'Patrol', from = { 'Patrol', 'Route' }, to = 'Patrol' },
|
||||
{ name = 'RTB', from = 'Patrol', to = 'RTB' },
|
||||
{ name = 'End', from = '*', to = 'End' },
|
||||
{ name = 'Dead', from = '*', to = 'End' },
|
||||
},
|
||||
}
|
||||
|
||||
-- Inherits from BASE
|
||||
local self = BASE:Inherit( self, FSM_CONTROLLABLE:New( FSMT ) )
|
||||
local self = BASE:Inherit( self, FSM_CONTROLLABLE:New() ) -- Fsm.Fsm#FSM_CONTROLLABLE
|
||||
|
||||
self:SetStartState( "None" )
|
||||
self:AddTransition( "*", "Start", "Route" )
|
||||
self:AddTransition( "*", "Route", "Route" )
|
||||
self:AddTransition( { "Patrol", "Route" }, "Patrol", "Patrol" )
|
||||
self:AddTransition( "Patrol", "RTB", "RTB" )
|
||||
self:AddTransition( "*", "End", "End" )
|
||||
self:AddTransition( "*", "Dead", "End" )
|
||||
|
||||
self.PatrolZone = PatrolZone
|
||||
self.PatrolFloorAltitude = PatrolFloorAltitude
|
||||
|
||||
@@ -89,22 +89,20 @@ AIBALANCER = {
|
||||
-- @usage
|
||||
-- -- Define a new AIBALANCER Object.
|
||||
function AIBALANCER:New( SetClient, SpawnAI )
|
||||
|
||||
local FSMT = {
|
||||
initial = 'None',
|
||||
events = {
|
||||
{ name = 'Start', from = '*', to = 'Monitoring' },
|
||||
{ name = 'Monitor', from = '*', to = 'Monitoring' },
|
||||
{ name = 'Spawn', from = '*', to = 'Spawning' },
|
||||
{ name = 'Destroy', from = '*', to = 'Destroying' },
|
||||
{ name = 'Return', from = '*', to = 'Returning' },
|
||||
{ name = 'End', from = '*', to = 'End' },
|
||||
{ name = 'Dead', from = '*', to = 'End' },
|
||||
},
|
||||
}
|
||||
|
||||
-- Inherits from BASE
|
||||
local self = BASE:Inherit( self, FSM_SET:New( FSMT, SET_GROUP:New() ) )
|
||||
local self = BASE:Inherit( self, FSM_SET:New( SET_GROUP:New() ) ) -- Fsm.Fsm#FSM_SET
|
||||
|
||||
self:SetStartState( "None" )
|
||||
self:AddTransition( "*", "Start", "Monitoring" )
|
||||
self:AddTransition( "*", "Monitor", "Monitoring" )
|
||||
self:AddTransition( "*", "Spawn", "Spawning" )
|
||||
self:AddTransition( "*", "Destroy", "Destroying" )
|
||||
self:AddTransition( "*", "Return", "Returning" )
|
||||
self:AddTransition( "*", "End", "End" )
|
||||
self:AddTransition( "*", "Dead", "End" )
|
||||
|
||||
|
||||
|
||||
self.SetClient = SetClient
|
||||
self.SpawnAI = SpawnAI
|
||||
|
||||
Reference in New Issue
Block a user