Merge pull request #484 from FlightControl-Master/TASKING

Improvements... Fixes
This commit is contained in:
Sven Van de Velde
2017-04-26 22:36:38 +02:00
committed by GitHub
3 changed files with 18 additions and 8 deletions

View File

@@ -780,7 +780,9 @@ do
self = MenuGroup._Menus[Path] self = MenuGroup._Menus[Path]
else else
self = BASE:Inherit( self, MENU_BASE:New( MenuText, ParentMenu ) ) self = BASE:Inherit( self, MENU_BASE:New( MenuText, ParentMenu ) )
if MenuGroup:IsAlive() then
MenuGroup._Menus[Path] = self MenuGroup._Menus[Path] = self
end
self.MenuGroup = MenuGroup self.MenuGroup = MenuGroup
self.Path = Path self.Path = Path
@@ -883,7 +885,10 @@ do
self:T( { "Re-using Group Command Menu:", MenuGroup:GetName(), MenuText } ) self:T( { "Re-using Group Command Menu:", MenuGroup:GetName(), MenuText } )
else else
self = BASE:Inherit( self, MENU_COMMAND_BASE:New( MenuText, ParentMenu, CommandMenuFunction, arg ) ) self = BASE:Inherit( self, MENU_COMMAND_BASE:New( MenuText, ParentMenu, CommandMenuFunction, arg ) )
if MenuGroup:IsAlive() then
MenuGroup._Menus[Path] = self MenuGroup._Menus[Path] = self
end
self.Path = Path self.Path = Path
self.MenuGroup = MenuGroup self.MenuGroup = MenuGroup

View File

@@ -283,7 +283,6 @@ function TASK:AbortUnit( PlayerUnit )
if #PlayerGroup:GetUnits() == 1 then if #PlayerGroup:GetUnits() == 1 then
self:UnAssignFromGroup( PlayerGroup ) self:UnAssignFromGroup( PlayerGroup )
PlayerGroup:SetState( PlayerGroup, "Assigned", nil ) PlayerGroup:SetState( PlayerGroup, "Assigned", nil )
self:RemoveMenuForGroup( PlayerGroup )
end end
self:Abort() self:Abort()
self:PlayerAborted( PlayerUnit ) self:PlayerAborted( PlayerUnit )
@@ -322,7 +321,6 @@ function TASK:CrashUnit( PlayerUnit )
self:E( { TaskGroup = PlayerGroup:GetName(), GetUnits = PlayerGroup:GetUnits() } ) self:E( { TaskGroup = PlayerGroup:GetName(), GetUnits = PlayerGroup:GetUnits() } )
if #PlayerGroup:GetUnits() == 1 then if #PlayerGroup:GetUnits() == 1 then
PlayerGroup:SetState( PlayerGroup, "Assigned", nil ) PlayerGroup:SetState( PlayerGroup, "Assigned", nil )
self:RemoveMenuForGroup( PlayerGroup )
end end
self:PlayerCrashed( PlayerUnit ) self:PlayerCrashed( PlayerUnit )
end end
@@ -357,17 +355,18 @@ end
-- @param Wrapper.Group#GROUP TaskGroup -- @param Wrapper.Group#GROUP TaskGroup
-- @return #TASK -- @return #TASK
function TASK:AssignToGroup( TaskGroup ) function TASK:AssignToGroup( TaskGroup )
self:F2( TaskGroup:GetName() ) self:F( TaskGroup:GetName() )
local TaskGroupName = TaskGroup:GetName() local TaskGroupName = TaskGroup:GetName()
TaskGroup:SetState( TaskGroup, "Assigned", self ) TaskGroup:SetState( TaskGroup, "Assigned", self )
self:E("Task is assigned to " .. TaskGroup:GetName() )
local Mission = self:GetMission() local Mission = self:GetMission()
local MissionMenu = Mission:GetMenu( TaskGroup ) local MissionMenu = Mission:GetMenu( TaskGroup )
MissionMenu:RemoveSubMenus() MissionMenu:RemoveSubMenus()
--self:RemoveMenuForGroup( TaskGroup )
self:SetAssignedMenuForGroup( TaskGroup ) self:SetAssignedMenuForGroup( TaskGroup )
local TaskUnits = TaskGroup:GetUnits() local TaskUnits = TaskGroup:GetUnits()
@@ -482,6 +481,8 @@ function TASK:UnAssignFromGroup( TaskGroup )
TaskGroup:SetState( TaskGroup, "Assigned", nil ) TaskGroup:SetState( TaskGroup, "Assigned", nil )
self:E("Task is unassigned from " .. TaskGroup:GetName() )
self:RemoveAssignedMenuForGroup( TaskGroup ) self:RemoveAssignedMenuForGroup( TaskGroup )
local TaskUnits = TaskGroup:GetUnits() local TaskUnits = TaskGroup:GetUnits()

View File

@@ -93,8 +93,6 @@ do -- TASK_A2G
self.TargetSetUnit = TargetSetUnit self.TargetSetUnit = TargetSetUnit
self.TaskType = TaskType self.TaskType = TaskType
Mission:AddTask( self )
local Fsm = self:GetUnitProcess() local Fsm = self:GetUnitProcess()
@@ -374,6 +372,8 @@ do -- TASK_SEAD
local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "SEAD" ) ) -- #TASK_SEAD local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "SEAD" ) ) -- #TASK_SEAD
self:F() self:F()
Mission:AddTask( self )
return self return self
end end
@@ -403,6 +403,8 @@ do -- TASK_BAI
local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "BAI" ) ) -- #TASK_BAI local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "BAI" ) ) -- #TASK_BAI
self:F() self:F()
Mission:AddTask( self )
return self return self
end end
@@ -432,6 +434,8 @@ do -- TASK_CAS
local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "CAS" ) ) -- #TASK_CAS local self = BASE:Inherit( self, TASK_A2G:New( Mission, SetGroup, TaskName, TargetSetUnit, "CAS" ) ) -- #TASK_CAS
self:F() self:F()
Mission:AddTask( self )
return self return self
end end