diff --git a/Moose Development/Moose/Core/Base.lua b/Moose Development/Moose/Core/Base.lua index 3bd050937..cb9bb0449 100644 --- a/Moose Development/Moose/Core/Base.lua +++ b/Moose Development/Moose/Core/Base.lua @@ -932,7 +932,7 @@ do -- Scheduling end -- NOTE: MasterObject (first parameter) should(!) be nil as it will be the first argument passed to the SchedulerFunction!s - local ScheduleID = self.Scheduler:Schedule( + local ScheduleID = self.Scheduler:Schedule( self, SchedulerFunction, { ... }, @@ -953,7 +953,7 @@ do -- Scheduling -- @param #string SchedulerID (Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped. function BASE:ScheduleStop( SchedulerID ) self:F3( { "ScheduleStop:" } ) - + if self.Scheduler then --_SCHEDULEDISPATCHER:Stop( self.Scheduler, self._.Schedules[SchedulerFunction] ) _SCHEDULEDISPATCHER:Stop(self.Scheduler, SchedulerID) diff --git a/Moose Development/Moose/Core/ScheduleDispatcher.lua b/Moose Development/Moose/Core/ScheduleDispatcher.lua index c28891239..4149103e3 100644 --- a/Moose Development/Moose/Core/ScheduleDispatcher.lua +++ b/Moose Development/Moose/Core/ScheduleDispatcher.lua @@ -109,9 +109,11 @@ function SCHEDULEDISPATCHER:AddSchedule( Scheduler, ScheduleFunction, ScheduleAr self.ObjectSchedulers = self.ObjectSchedulers or setmetatable( {}, { __mode = "v" } ) if Scheduler.MasterObject then + --env.info("FF Object Scheduler") self.ObjectSchedulers[CallID] = Scheduler self:F3( { CallID = CallID, ObjectScheduler = tostring(self.ObjectSchedulers[CallID]), MasterObject = tostring(Scheduler.MasterObject) } ) else + --env.info("FF Persistent Scheduler") self.PersistentSchedulers[CallID] = Scheduler self:F3( { CallID = CallID, PersistentScheduler = self.PersistentSchedulers[CallID] } ) end @@ -219,7 +221,8 @@ function SCHEDULEDISPATCHER:AddSchedule( Scheduler, ScheduleFunction, ScheduleAr if ShowTrace then SchedulerObject:T( Prefix .. Name .. ":" .. Line .. " (" .. Source .. ")" ) end - return ScheduleFunction( SchedulerObject, unpack( ScheduleArguments ) ) + return ScheduleFunction( unpack( ScheduleArguments ) ) + --return ScheduleFunction( SchedulerObject, unpack( ScheduleArguments ) ) end Status, Result = xpcall( Timer, ErrorHandler ) else diff --git a/Moose Development/Moose/Tasking/CommandCenter.lua b/Moose Development/Moose/Tasking/CommandCenter.lua index 7de7f5b00..8df64d063 100644 --- a/Moose Development/Moose/Tasking/CommandCenter.lua +++ b/Moose Development/Moose/Tasking/CommandCenter.lua @@ -560,9 +560,11 @@ function COMMANDCENTER:SetAutoAssignTasks( AutoAssign ) self.AutoAssignTasks = AutoAssign or false if self.AutoAssignTasks == true then - self:ScheduleRepeat( 10, 30, 0, nil, self.AssignTasks, self ) + self.autoAssignTasksScheduleID=self:ScheduleRepeat( 10, 30, 0, nil, self.AssignTasks, self ) else - self:ScheduleStop( self.AssignTasks ) + self:ScheduleStop() + -- FF this is not the schedule ID + --self:ScheduleStop( self.AssignTasks ) end end