mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Optimized CARGO
- Smoke position upon arrival at pickup zone - Solved problem with deploy, deploy function was not called. - Added Smoke to CARGO - Moved Smoke to POSITIONABLE
This commit is contained in:
parent
5bbe5fca60
commit
1e6035b282
@ -374,6 +374,85 @@ function CARGO:Spawn( PointVec2 )
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Signal a flare at the position of the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
-- @param Utilities.Utils#FLARECOLOR FlareColor
|
||||||
|
function CARGO:Flare( FlareColor )
|
||||||
|
if self:IsUnLoaded() then
|
||||||
|
trigger.action.signalFlare( self.CargoObject:GetVec3(), FlareColor , 0 )
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a white flare at the position of the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:FlareWhite()
|
||||||
|
self:Flare( trigger.flareColor.White )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a yellow flare at the position of the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:FlareYellow()
|
||||||
|
self:Flare( trigger.flareColor.Yellow )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a green flare at the position of the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:FlareGreen()
|
||||||
|
self:Flare( trigger.flareColor.Green )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a red flare at the position of the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:FlareRed()
|
||||||
|
self:Flare( trigger.flareColor.Red )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:Smoke( SmokeColor, Range )
|
||||||
|
self:F2()
|
||||||
|
if self:IsUnLoaded() then
|
||||||
|
if Range then
|
||||||
|
trigger.action.smoke( self.CargoObject:GetRandomVec3( Range ), SmokeColor )
|
||||||
|
else
|
||||||
|
trigger.action.smoke( self.CargoObject:GetVec3(), SmokeColor )
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO Green.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:SmokeGreen()
|
||||||
|
self:Smoke( trigger.smokeColor.Green, Range )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO Red.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:SmokeRed()
|
||||||
|
self:Smoke( trigger.smokeColor.Red, Range )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO White.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:SmokeWhite()
|
||||||
|
self:Smoke( trigger.smokeColor.White, Range )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO Orange.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:SmokeOrange()
|
||||||
|
self:Smoke( trigger.smokeColor.Orange, Range )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the CARGO Blue.
|
||||||
|
-- @param #CARGO self
|
||||||
|
function CARGO:SmokeBlue()
|
||||||
|
self:Smoke( trigger.smokeColor.Blue, Range )
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--- Check if Cargo is the given @{Zone}.
|
--- Check if Cargo is the given @{Zone}.
|
||||||
@ -1162,6 +1241,10 @@ function CARGO_GROUP:onenterUnBoarding( From, Event, To, ToPointVec2, NearRadius
|
|||||||
local Timer = 1
|
local Timer = 1
|
||||||
|
|
||||||
if From == "Loaded" then
|
if From == "Loaded" then
|
||||||
|
|
||||||
|
if self.CargoObject then
|
||||||
|
self.CargoObject:Destroy()
|
||||||
|
end
|
||||||
|
|
||||||
-- For each Cargo object within the CARGO_GROUP, route each object to the CargoLoadPointVec2
|
-- For each Cargo object within the CARGO_GROUP, route each object to the CargoLoadPointVec2
|
||||||
self.CargoSet:ForEach(
|
self.CargoSet:ForEach(
|
||||||
|
|||||||
@ -342,7 +342,7 @@ do -- TASK_CARGO
|
|||||||
function Fsm:onafterArriveAtPickup( TaskUnit, Task )
|
function Fsm:onafterArriveAtPickup( TaskUnit, Task )
|
||||||
self:E( { TaskUnit = TaskUnit, Task = Task and Task:GetClassNameAndID() } )
|
self:E( { TaskUnit = TaskUnit, Task = Task and Task:GetClassNameAndID() } )
|
||||||
if self.Cargo:IsAlive() then
|
if self.Cargo:IsAlive() then
|
||||||
TaskUnit:Smoke( Task:GetSmokeColor(), 15 )
|
self.Cargo:Smoke( Task:GetSmokeColor(), 15 )
|
||||||
if TaskUnit:IsAir() then
|
if TaskUnit:IsAir() then
|
||||||
Task:GetMission():GetCommandCenter():MessageToGroup( "Land", TaskUnit:GetGroup() )
|
Task:GetMission():GetCommandCenter():MessageToGroup( "Land", TaskUnit:GetGroup() )
|
||||||
self:__Land( -0.1, "Pickup" )
|
self:__Land( -0.1, "Pickup" )
|
||||||
@ -592,6 +592,7 @@ do -- TASK_CARGO
|
|||||||
|
|
||||||
-- TODO:I need to find a more decent solution for this.
|
-- TODO:I need to find a more decent solution for this.
|
||||||
Task:E( { CargoDeployed = Task.CargoDeployed and "true" or "false" } )
|
Task:E( { CargoDeployed = Task.CargoDeployed and "true" or "false" } )
|
||||||
|
Task:E( { CargoIsAlive = self.Cargo:IsAlive() and "true" or "false" } )
|
||||||
if self.Cargo:IsAlive() then
|
if self.Cargo:IsAlive() then
|
||||||
if Task.CargoDeployed then
|
if Task.CargoDeployed then
|
||||||
Task:CargoDeployed( TaskUnit, self.Cargo, self.DeployZone )
|
Task:CargoDeployed( TaskUnit, self.Cargo, self.DeployZone )
|
||||||
|
|||||||
@ -1186,4 +1186,96 @@ do -- Players
|
|||||||
return PlayerNames
|
return PlayerNames
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--do -- Smoke
|
||||||
|
--
|
||||||
|
----- Signal a flare at the position of the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
---- @param Utilities.Utils#FLARECOLOR FlareColor
|
||||||
|
--function GROUP:Flare( FlareColor )
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.signalFlare( self:GetVec3(), FlareColor , 0 )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Signal a white flare at the position of the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:FlareWhite()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.White , 0 )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Signal a yellow flare at the position of the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:FlareYellow()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Yellow , 0 )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Signal a green flare at the position of the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:FlareGreen()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Green , 0 )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Signal a red flare at the position of the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:FlareRed()
|
||||||
|
-- self:F2()
|
||||||
|
-- local Vec3 = self:GetVec3()
|
||||||
|
-- if Vec3 then
|
||||||
|
-- trigger.action.signalFlare( Vec3, trigger.flareColor.Red, 0 )
|
||||||
|
-- end
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:Smoke( SmokeColor, Range )
|
||||||
|
-- self:F2()
|
||||||
|
-- if Range then
|
||||||
|
-- trigger.action.smoke( self:GetRandomVec3( Range ), SmokeColor )
|
||||||
|
-- else
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), SmokeColor )
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP Green.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:SmokeGreen()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Green )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP Red.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:SmokeRed()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Red )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP White.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:SmokeWhite()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), trigger.smokeColor.White )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP Orange.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:SmokeOrange()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Orange )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
----- Smoke the GROUP Blue.
|
||||||
|
---- @param #GROUP self
|
||||||
|
--function GROUP:SmokeBlue()
|
||||||
|
-- self:F2()
|
||||||
|
-- trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Blue )
|
||||||
|
--end
|
||||||
|
--
|
||||||
|
--
|
||||||
|
--
|
||||||
|
--end
|
||||||
@ -724,3 +724,91 @@ function POSITIONABLE:CargoItemCount()
|
|||||||
end
|
end
|
||||||
return ItemCount
|
return ItemCount
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Signal a flare at the position of the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
-- @param Utilities.Utils#FLARECOLOR FlareColor
|
||||||
|
function POSITIONABLE:Flare( FlareColor )
|
||||||
|
self:F2()
|
||||||
|
trigger.action.signalFlare( self:GetVec3(), FlareColor , 0 )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a white flare at the position of the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:FlareWhite()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.White , 0 )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a yellow flare at the position of the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:FlareYellow()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Yellow , 0 )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a green flare at the position of the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:FlareGreen()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Green , 0 )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Signal a red flare at the position of the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:FlareRed()
|
||||||
|
self:F2()
|
||||||
|
local Vec3 = self:GetVec3()
|
||||||
|
if Vec3 then
|
||||||
|
trigger.action.signalFlare( Vec3, trigger.flareColor.Red, 0 )
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:Smoke( SmokeColor, Range )
|
||||||
|
self:F2()
|
||||||
|
if Range then
|
||||||
|
trigger.action.smoke( self:GetRandomVec3( Range ), SmokeColor )
|
||||||
|
else
|
||||||
|
trigger.action.smoke( self:GetVec3(), SmokeColor )
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE Green.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:SmokeGreen()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Green )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE Red.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:SmokeRed()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Red )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE White.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:SmokeWhite()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.White )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE Orange.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:SmokeOrange()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Orange )
|
||||||
|
end
|
||||||
|
|
||||||
|
--- Smoke the POSITIONABLE Blue.
|
||||||
|
-- @param #POSITIONABLE self
|
||||||
|
function POSITIONABLE:SmokeBlue()
|
||||||
|
self:F2()
|
||||||
|
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Blue )
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -788,92 +788,6 @@ end
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
--- Signal a flare at the position of the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
-- @param Utilities.Utils#FLARECOLOR FlareColor
|
|
||||||
function UNIT:Flare( FlareColor )
|
|
||||||
self:F2()
|
|
||||||
trigger.action.signalFlare( self:GetVec3(), FlareColor , 0 )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Signal a white flare at the position of the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:FlareWhite()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.White , 0 )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Signal a yellow flare at the position of the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:FlareYellow()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Yellow , 0 )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Signal a green flare at the position of the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:FlareGreen()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.signalFlare( self:GetVec3(), trigger.flareColor.Green , 0 )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Signal a red flare at the position of the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:FlareRed()
|
|
||||||
self:F2()
|
|
||||||
local Vec3 = self:GetVec3()
|
|
||||||
if Vec3 then
|
|
||||||
trigger.action.signalFlare( Vec3, trigger.flareColor.Red, 0 )
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:Smoke( SmokeColor, Range )
|
|
||||||
self:F2()
|
|
||||||
if Range then
|
|
||||||
trigger.action.smoke( self:GetRandomVec3( Range ), SmokeColor )
|
|
||||||
else
|
|
||||||
trigger.action.smoke( self:GetVec3(), SmokeColor )
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT Green.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:SmokeGreen()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Green )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT Red.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:SmokeRed()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Red )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT White.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:SmokeWhite()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.White )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT Orange.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:SmokeOrange()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Orange )
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Smoke the UNIT Blue.
|
|
||||||
-- @param #UNIT self
|
|
||||||
function UNIT:SmokeBlue()
|
|
||||||
self:F2()
|
|
||||||
trigger.action.smoke( self:GetVec3(), trigger.smokeColor.Blue )
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Is methods
|
-- Is methods
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user