mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Fixed #592
This commit is contained in:
parent
536934390c
commit
b5c53baf67
@ -882,7 +882,7 @@ function MISSION:ReportOverview( ReportGroup, TaskStatus )
|
|||||||
|
|
||||||
-- Determine how many tasks are remaining.
|
-- Determine how many tasks are remaining.
|
||||||
local TasksRemaining = 0
|
local TasksRemaining = 0
|
||||||
for TaskID, Task in pairs( self:GetTasks() ) do
|
for TaskID, Task in UTILS.spairs( self:GetTasks(), function( t, a, b ) return t[a]:ReportOrder( ReportGroup ) < t[b]:ReportOrder( ReportGroup ) end ) do
|
||||||
local Task = Task -- Tasking.Task#TASK
|
local Task = Task -- Tasking.Task#TASK
|
||||||
if Task:Is( TaskStatus ) then
|
if Task:Is( TaskStatus ) then
|
||||||
Report:Add( " - " .. Task:ReportOverview( ReportGroup ) )
|
Report:Add( " - " .. Task:ReportOverview( ReportGroup ) )
|
||||||
|
|||||||
@ -330,14 +330,24 @@ do -- TASK_A2A_INTERCEPT
|
|||||||
|
|
||||||
local TargetCoordinate = TargetSetUnit:GetFirst():GetCoordinate()
|
local TargetCoordinate = TargetSetUnit:GetFirst():GetCoordinate()
|
||||||
self:SetInfo( "Coordinates", TargetCoordinate, 10 )
|
self:SetInfo( "Coordinates", TargetCoordinate, 10 )
|
||||||
|
|
||||||
self:SetInfo( "Threat", "[" .. string.rep( "■", TargetSetUnit:CalculateThreatLevelA2G() ) .. "]", 11 )
|
self:SetInfo( "Threat", "[" .. string.rep( "■", TargetSetUnit:CalculateThreatLevelA2G() ) .. "]", 11 )
|
||||||
local DetectedItemsCount = TargetSetUnit:Count()
|
local DetectedItemsCount = TargetSetUnit:Count()
|
||||||
local DetectedItemsTypes = TargetSetUnit:GetTypeNames()
|
local DetectedItemsTypes = TargetSetUnit:GetTypeNames()
|
||||||
self:SetInfo( "Targets", string.format( "%d of %s", DetectedItemsCount, DetectedItemsTypes ), 0 )
|
self:SetInfo( "Targets", string.format( "%d of %s", DetectedItemsCount, DetectedItemsTypes ), 0 )
|
||||||
|
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- @param #TASK_A2A_INTERCEPT self
|
||||||
|
-- @param Wrapper.Group#GROUP ReportGroup
|
||||||
|
function TASK_A2A_INTERCEPT:ReportOrder( ReportGroup )
|
||||||
|
self:F( { TaskInfo = self.TaskInfo } )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--- @param #TASK_A2A_INTERCEPT self
|
--- @param #TASK_A2A_INTERCEPT self
|
||||||
@ -462,6 +472,13 @@ do -- TASK_A2A_SWEEP
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TASK_A2A_SWEEP:ReportOrder( ReportGroup )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
--- @param #TASK_A2A_SWEEP self
|
--- @param #TASK_A2A_SWEEP self
|
||||||
function TASK_A2A_SWEEP:onafterGoal( TaskUnit, From, Event, To )
|
function TASK_A2A_SWEEP:onafterGoal( TaskUnit, From, Event, To )
|
||||||
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
||||||
@ -581,6 +598,13 @@ do -- TASK_A2A_ENGAGE
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TASK_A2A_ENGAGE:ReportOrder( ReportGroup )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
--- @param #TASK_A2A_ENGAGE self
|
--- @param #TASK_A2A_ENGAGE self
|
||||||
function TASK_A2A_ENGAGE:onafterGoal( TaskUnit, From, Event, To )
|
function TASK_A2A_ENGAGE:onafterGoal( TaskUnit, From, Event, To )
|
||||||
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
||||||
|
|||||||
@ -329,7 +329,15 @@ do -- TASK_A2G_SEAD
|
|||||||
|
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TASK_A2G_SEAD:ReportOrder( ReportGroup )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--- @param #TASK_A2G_SEAD self
|
--- @param #TASK_A2G_SEAD self
|
||||||
function TASK_A2G_SEAD:onafterGoal( TaskUnit, From, Event, To )
|
function TASK_A2G_SEAD:onafterGoal( TaskUnit, From, Event, To )
|
||||||
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
||||||
@ -341,7 +349,7 @@ do -- TASK_A2G_SEAD
|
|||||||
self:__Goal( -10 )
|
self:__Goal( -10 )
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when a target in scope of the A2A attack, has been destroyed .
|
--- Set a score when a target in scope of the A2G attack, has been destroyed .
|
||||||
-- @param #TASK_A2G_SEAD self
|
-- @param #TASK_A2G_SEAD self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points to be granted when task process has been achieved.
|
-- @param #number Score The score in points to be granted when task process has been achieved.
|
||||||
@ -357,7 +365,7 @@ do -- TASK_A2G_SEAD
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when all the targets in scope of the A2A attack, have been destroyed.
|
--- Set a score when all the targets in scope of the A2G attack, have been destroyed.
|
||||||
-- @param #TASK_A2G_SEAD self
|
-- @param #TASK_A2G_SEAD self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points.
|
-- @param #number Score The score in points.
|
||||||
@ -373,7 +381,7 @@ do -- TASK_A2G_SEAD
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a penalty when the A2A attack has failed.
|
--- Set a penalty when the A2G attack has failed.
|
||||||
-- @param #TASK_A2G_SEAD self
|
-- @param #TASK_A2G_SEAD self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Penalty The penalty in points, must be a negative value!
|
-- @param #number Penalty The penalty in points, must be a negative value!
|
||||||
@ -443,6 +451,15 @@ do -- TASK_A2G_BAI
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function TASK_A2G_BAI:ReportOrder( ReportGroup )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--- @param #TASK_A2G_BAI self
|
--- @param #TASK_A2G_BAI self
|
||||||
function TASK_A2G_BAI:onafterGoal( TaskUnit, From, Event, To )
|
function TASK_A2G_BAI:onafterGoal( TaskUnit, From, Event, To )
|
||||||
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
||||||
@ -454,7 +471,7 @@ do -- TASK_A2G_BAI
|
|||||||
self:__Goal( -10 )
|
self:__Goal( -10 )
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when a target in scope of the A2A attack, has been destroyed .
|
--- Set a score when a target in scope of the A2G attack, has been destroyed .
|
||||||
-- @param #TASK_A2G_BAI self
|
-- @param #TASK_A2G_BAI self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points to be granted when task process has been achieved.
|
-- @param #number Score The score in points to be granted when task process has been achieved.
|
||||||
@ -470,7 +487,7 @@ do -- TASK_A2G_BAI
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when all the targets in scope of the A2A attack, have been destroyed.
|
--- Set a score when all the targets in scope of the A2G attack, have been destroyed.
|
||||||
-- @param #TASK_A2G_BAI self
|
-- @param #TASK_A2G_BAI self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points.
|
-- @param #number Score The score in points.
|
||||||
@ -486,7 +503,7 @@ do -- TASK_A2G_BAI
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a penalty when the A2A attack has failed.
|
--- Set a penalty when the A2G attack has failed.
|
||||||
-- @param #TASK_A2G_BAI self
|
-- @param #TASK_A2G_BAI self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Penalty The penalty in points, must be a negative value!
|
-- @param #number Penalty The penalty in points, must be a negative value!
|
||||||
@ -556,6 +573,14 @@ do -- TASK_A2G_CAS
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TASK_A2G_CAS:ReportOrder( ReportGroup )
|
||||||
|
local Coordinate = self.TaskInfo.Coordinates.TaskInfoText
|
||||||
|
local Distance = ReportGroup:GetCoordinate():Get2DDistance( Coordinate )
|
||||||
|
|
||||||
|
return Distance
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--- @param #TASK_A2G_CAS self
|
--- @param #TASK_A2G_CAS self
|
||||||
function TASK_A2G_CAS:onafterGoal( TaskUnit, From, Event, To )
|
function TASK_A2G_CAS:onafterGoal( TaskUnit, From, Event, To )
|
||||||
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
local TargetSetUnit = self.TargetSetUnit -- Core.Set#SET_UNIT
|
||||||
@ -567,7 +592,7 @@ do -- TASK_A2G_CAS
|
|||||||
self:__Goal( -10 )
|
self:__Goal( -10 )
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when a target in scope of the A2A attack, has been destroyed .
|
--- Set a score when a target in scope of the A2G attack, has been destroyed .
|
||||||
-- @param #TASK_A2G_CAS self
|
-- @param #TASK_A2G_CAS self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points to be granted when task process has been achieved.
|
-- @param #number Score The score in points to be granted when task process has been achieved.
|
||||||
@ -583,7 +608,7 @@ do -- TASK_A2G_CAS
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a score when all the targets in scope of the A2A attack, have been destroyed.
|
--- Set a score when all the targets in scope of the A2G attack, have been destroyed.
|
||||||
-- @param #TASK_A2G_CAS self
|
-- @param #TASK_A2G_CAS self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Score The score in points.
|
-- @param #number Score The score in points.
|
||||||
@ -599,7 +624,7 @@ do -- TASK_A2G_CAS
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Set a penalty when the A2A attack has failed.
|
--- Set a penalty when the A2G attack has failed.
|
||||||
-- @param #TASK_A2G_CAS self
|
-- @param #TASK_A2G_CAS self
|
||||||
-- @param #string PlayerName The name of the player.
|
-- @param #string PlayerName The name of the player.
|
||||||
-- @param #number Penalty The penalty in points, must be a negative value!
|
-- @param #number Penalty The penalty in points, must be a negative value!
|
||||||
|
|||||||
@ -251,7 +251,9 @@ do -- TASK_CARGO
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
if NotInDeployZones then
|
if NotInDeployZones then
|
||||||
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Board cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuBoardCargo, self, Cargo ):SetTime(MenuTime)
|
if not TaskUnit:InAir() then
|
||||||
|
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Board cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuBoardCargo, self, Cargo ):SetTime(MenuTime)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Route to Pickup cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuRouteToPickup, self, Cargo ):SetTime(MenuTime)
|
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Route to Pickup cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuRouteToPickup, self, Cargo ):SetTime(MenuTime)
|
||||||
@ -260,9 +262,9 @@ do -- TASK_CARGO
|
|||||||
end
|
end
|
||||||
|
|
||||||
if Cargo:IsLoaded() then
|
if Cargo:IsLoaded() then
|
||||||
|
if not TaskUnit:InAir() then
|
||||||
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Unboard cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuUnBoardCargo, self, Cargo ):SetTime(MenuTime)
|
MENU_GROUP_COMMAND:New( TaskUnit:GetGroup(), "Unboard cargo " .. Cargo.Name, TaskUnit.Menu, self.MenuUnBoardCargo, self, Cargo ):SetTime(MenuTime)
|
||||||
|
end
|
||||||
-- Deployzones are optional zones that can be selected to request routing information.
|
-- Deployzones are optional zones that can be selected to request routing information.
|
||||||
for DeployZoneName, DeployZone in pairs( Task.DeployZones ) do
|
for DeployZoneName, DeployZone in pairs( Task.DeployZones ) do
|
||||||
if not Cargo:IsInZone( DeployZone ) then
|
if not Cargo:IsInZone( DeployZone ) then
|
||||||
@ -607,6 +609,7 @@ do -- TASK_CARGO
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
--- Set a limit on the amount of cargo items that can be loaded into the Carriers.
|
--- Set a limit on the amount of cargo items that can be loaded into the Carriers.
|
||||||
-- @param #TASK_CARGO self
|
-- @param #TASK_CARGO self
|
||||||
-- @param CargoLimit Specifies a number of cargo items that can be loaded in the helicopter.
|
-- @param CargoLimit Specifies a number of cargo items that can be loaded in the helicopter.
|
||||||
@ -922,6 +925,12 @@ do -- TASK_CARGO_TRANSPORT
|
|||||||
|
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TASK_CARGO_TRANSPORT:ReportOrder( ReportGroup )
|
||||||
|
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
-- @param #TASK_CARGO_TRANSPORT self
|
-- @param #TASK_CARGO_TRANSPORT self
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user