Inform state changes

This commit is contained in:
FlightControl
2016-07-10 14:44:55 +02:00
parent 8a4b40303a
commit 153ff7bd58
12 changed files with 54 additions and 13 deletions

View File

@@ -6,6 +6,7 @@
-- @field Unit#UNIT ProcessUnit
-- @field Task#TASK Task
-- @field StateMachine#STATEMACHINE_TASK Fsm
-- @field #string ProcessName
-- @extends Base#BASE
PROCESS = {
ClassName = "TASK",
@@ -16,14 +17,17 @@ PROCESS = {
--- Instantiates a new TASK Base. Should never be used. Interface Class.
-- @param #PROCESS self
-- @param #string ProcessName
-- @param Task#TASK_BASE Task
-- @param Unit#UNIT ProcessUnit
-- @return #PROCESS self
function PROCESS:New( Task, ProcessUnit )
function PROCESS:New( ProcessName, Task, ProcessUnit )
local self = BASE:Inherit( self, BASE:New() )
self:F()
self.ProcessUnit = ProcessUnit
self.Task = Task
self.ProcessName = ProcessName
self.AllowEvents = true
@@ -66,13 +70,15 @@ end
--- StateMachine callback function for a PROCESS
-- @param #PROCESS self
-- @param StateMachine#STATEMACHINE_TASK Fsm
-- @param StateMachine#STATEMACHINE_PROCESS Fsm
-- @param #string Event
-- @param #string From
-- @param #string To
function PROCESS:OnStateChange( Fsm, Event, From, To )
self:E( { Event, From, To, self.ProcessUnit.UnitName } )
MESSAGE:New( "Process " .. self.ProcessName .. " : " .. Event .. " changed to state " .. To, 15 ):ToAll()
if self.Scores[To] then
local Scoring = self.Task:GetScoring()