From 9112d6cc6eb3522d1406491a8773d9bbed0d6ed2 Mon Sep 17 00:00:00 2001 From: Wingthor Date: Sat, 20 May 2017 16:36:12 +0200 Subject: [PATCH 1/6] Added posibilty to SetSmokeColor on Cargo Someting is wrong with the setter, when calling it, it seems to be nil. Need som advice --- .../Moose/Tasking/Task_CARGO.lua | 46 ++++++++++++++++++- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index 22a331949..30f41cab0 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -327,6 +327,37 @@ do -- TASK_CARGO self:__RouteToDeploy( 1.0, DeployZone ) end + --- ¤TASL_CARGP + --@return SmokeCole + function TASK_CARGO:GetSmokeColor () + return self.SmokeColor + end + + ---#TASK_CARGO + --@param Color Might be Blue, Red or Green + function TASK_CARGO:SetSmokeColor(Color) + -- Makes sure Coloe is set + if Color == nil then + Color = "SmokeRed()" -- Make sure a default color is exist + else + local ValidColors = {"Red", "Blue", "Green"} + for index,value in ipairs (ValidColors) do + if value == Color then + self.SmokeColor = value + break + end + -- Color is invalid, set it green as signal + self.SmokeColor = "SmokeGreen()" + end + end + self.SmokeColor = Color + end + + --- + --#TASK_CAROG_TRANSPORT self + --#Wrapper.Unit#UNIT + + --- Route to Cargo -- @param #FSM_PROCESS self -- @param Wrapper.Unit#UNIT TaskUnit @@ -353,10 +384,16 @@ do -- TASK_CARGO -- @param Tasking.Task_Cargo#TASK_CARGO Task function Fsm:onafterArriveAtPickup( TaskUnit, Task ) self:E( { TaskUnit = TaskUnit, Task = Task and Task:GetClassNameAndID() } ) - if self.Cargo:IsAlive() then if TaskUnit:IsAir() then - self.Cargo.CargoObject:GetUnit(1):SmokeRed() + local ColorToUse = TASK_CARGO:GetSmokeColor() + if ColorToUse == "Green" then + self.Cargo.CargoObject:GetUnit(1):SmokeGreen() + elseif ColorToUse == "Blue" then + self.Cargo.CargoObject:GetUnit(1):SmokeBlue() + else + self.Cargo.CargoObject:GetUnit(1):SmokeRed() + end self:__Land( -0.1, "Pickup" ) else self:__SelectAction( -0.1 ) @@ -911,6 +948,11 @@ do -- TASK_CARGO_TRANSPORT return CargoDeployed end + + --- + + + end From 824431ae94a07e2382101984cb3b2c54e032c30d Mon Sep 17 00:00:00 2001 From: Wingthor Date: Sat, 20 May 2017 17:09:14 +0200 Subject: [PATCH 2/6] Found a few error in my code, still does not work --- Moose Development/Moose/Tasking/Task_CARGO.lua | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index 30f41cab0..dc33aac5e 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -338,7 +338,7 @@ do -- TASK_CARGO function TASK_CARGO:SetSmokeColor(Color) -- Makes sure Coloe is set if Color == nil then - Color = "SmokeRed()" -- Make sure a default color is exist + Color = "Red" -- Make sure a default color is exist else local ValidColors = {"Red", "Blue", "Green"} for index,value in ipairs (ValidColors) do @@ -347,7 +347,8 @@ do -- TASK_CARGO break end -- Color is invalid, set it green as signal - self.SmokeColor = "SmokeGreen()" + self.SmokeColor = "Green" + BASE:E("Invalid color is set using GREEN") end end self.SmokeColor = Color From 473735dcd7e2d30889dc8d5251e0822024c5147c Mon Sep 17 00:00:00 2001 From: Wingthor Date: Mon, 22 May 2017 14:37:21 +0200 Subject: [PATCH 3/6] Changed the code to support Moose Color Enumeration --- .../Moose/Tasking/Task_CARGO.lua | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index dc33aac5e..5851cb145 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -327,31 +327,24 @@ do -- TASK_CARGO self:__RouteToDeploy( 1.0, DeployZone ) end - --- ¤TASL_CARGP - --@return SmokeCole + --- ¤TASK_CARGO + --@return SmokeColor function TASK_CARGO:GetSmokeColor () return self.SmokeColor end ---#TASK_CARGO --@param Color Might be Blue, Red or Green - function TASK_CARGO:SetSmokeColor(Color) + function TASK_CARGO:SetSmokeColor(SmokeColor) -- Makes sure Coloe is set - if Color == nil then - Color = "Red" -- Make sure a default color is exist - else - local ValidColors = {"Red", "Blue", "Green"} - for index,value in ipairs (ValidColors) do - if value == Color then - self.SmokeColor = value - break - end - -- Color is invalid, set it green as signal - self.SmokeColor = "Green" - BASE:E("Invalid color is set using GREEN") + if SmokeColor == nil then + self:F2(SmokeColor) + self.SmokeColor = SMOKECOLOR.Red -- Make sure a default color is exist + elseif type(SmokeColor) == "number" then + if SmokeColor > 0 and SmokeColor <=5 then -- Make sure number is within ragne, assuming first enum is one + self.SmokeColor = SMOKECOLOR.SmokeColor end end - self.SmokeColor = Color end --- From 6378cbc0eedf4a1d13a08a9e46ddb4b297412265 Mon Sep 17 00:00:00 2001 From: Wingthor Date: Tue, 23 May 2017 01:24:39 +0200 Subject: [PATCH 4/6] Changed the structure Change the structure, took away the nil value error when calling the setter. How ever color is not set proper, or turns out false --- .../Moose/Tasking/Task_CARGO.lua | 49 +++++++++++-------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index 5851cb145..1dd9fa924 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -174,6 +174,7 @@ do -- TASK_CARGO self.SetCargo = SetCargo self.TaskType = TaskType + self.SmokeColor = SMOKECOLOR.Red self.DeployZones = {} -- setmetatable( {}, { __mode = "v" } ) -- weak table on value @@ -327,25 +328,7 @@ do -- TASK_CARGO self:__RouteToDeploy( 1.0, DeployZone ) end - --- ¤TASK_CARGO - --@return SmokeColor - function TASK_CARGO:GetSmokeColor () - return self.SmokeColor - end - ---#TASK_CARGO - --@param Color Might be Blue, Red or Green - function TASK_CARGO:SetSmokeColor(SmokeColor) - -- Makes sure Coloe is set - if SmokeColor == nil then - self:F2(SmokeColor) - self.SmokeColor = SMOKECOLOR.Red -- Make sure a default color is exist - elseif type(SmokeColor) == "number" then - if SmokeColor > 0 and SmokeColor <=5 then -- Make sure number is within ragne, assuming first enum is one - self.SmokeColor = SMOKECOLOR.SmokeColor - end - end - end --- --#TASK_CAROG_TRANSPORT self @@ -381,12 +364,16 @@ do -- TASK_CARGO if self.Cargo:IsAlive() then if TaskUnit:IsAir() then local ColorToUse = TASK_CARGO:GetSmokeColor() - if ColorToUse == "Green" then + if ColorToUse == SMOKECOLOR.Green then self.Cargo.CargoObject:GetUnit(1):SmokeGreen() - elseif ColorToUse == "Blue" then + elseif ColorToUse == SMOKECOLOR.Blue then self.Cargo.CargoObject:GetUnit(1):SmokeBlue() + elseif ColorToUse == SMOKECOLOR.Orange then + self.Cargo.CargoObject:GetUnit(1):SmokeOrange() + elseif ColorToUse == SMOKECOLOR.White then + self.Cargo.CargoObject:GetUnit(1):SmokeWhite() else - self.Cargo.CargoObject:GetUnit(1):SmokeRed() + self.Cargo.CargoObject:GetUnit(1):SmokeRed() end self:__Land( -0.1, "Pickup" ) else @@ -637,6 +624,26 @@ do -- TASK_CARGO end + --- + -- #TASK_CARGO + --@return SmokeColor + function TASK_CARGO:GetSmokeColor() + return self.SmokeColor + end + + --@param Color Might be SMOKECOLOR.Blue, SMOKECOLOR.Red SMOKECOLOR.Orange, SMOKECOLOR.White or SMOKECOLOR.Green + function TASK_CARGO:SetSmokeColor(SmokeColor) + -- Makes sure Coloe is set + if SmokeColor == nil then + self.SmokeColor = SMOKECOLOR.Red -- Make sure a default color is exist + elseif type(SmokeColor) == "number" then + self:F2(SmokeColor) + if SmokeColor > 0 and SmokeColor <=5 then -- Make sure number is within ragne, assuming first enum is one + self.SmokeColor = SMOKECOLOR.SmokeColor + end + end + end + --- @param #TASK_CARGO self function TASK_CARGO:GetPlannedMenuText() return self:GetStateString() .. " - " .. self:GetTaskName() .. " ( " .. self.TargetSetUnit:GetUnitTypesText() .. " )" From 3c71af48eedfebfac28d193fc3a88dd51440f299 Mon Sep 17 00:00:00 2001 From: Wingthor Date: Thu, 25 May 2017 10:02:53 +0200 Subject: [PATCH 5/6] Added A space to test syncing --- Moose Development/Moose/Tasking/Task_CARGO.lua | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index 1dd9fa924..cb984e09e 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -355,6 +355,7 @@ do -- TASK_CARGO end + --- -- @param #FSM_PROCESS self -- @param Wrapper.Unit#UNIT TaskUnit @@ -624,18 +625,13 @@ do -- TASK_CARGO end - --- - -- #TASK_CARGO - --@return SmokeColor - function TASK_CARGO:GetSmokeColor() - return self.SmokeColor - end - --@param Color Might be SMOKECOLOR.Blue, SMOKECOLOR.Red SMOKECOLOR.Orange, SMOKECOLOR.White or SMOKECOLOR.Green + ---@param Color Might be SMOKECOLOR.Blue, SMOKECOLOR.Red SMOKECOLOR.Orange, SMOKECOLOR.White or SMOKECOLOR.Green function TASK_CARGO:SetSmokeColor(SmokeColor) -- Makes sure Coloe is set if SmokeColor == nil then self.SmokeColor = SMOKECOLOR.Red -- Make sure a default color is exist + elseif type(SmokeColor) == "number" then self:F2(SmokeColor) if SmokeColor > 0 and SmokeColor <=5 then -- Make sure number is within ragne, assuming first enum is one @@ -643,6 +639,11 @@ do -- TASK_CARGO end end end + + --@return SmokeColor + function TASK_CARGO:GetSmokeColor() + return self.SmokeColor + end --- @param #TASK_CARGO self function TASK_CARGO:GetPlannedMenuText() From 10f12e4ead624f50940724215d3789630c9434ef Mon Sep 17 00:00:00 2001 From: Wingthor Date: Thu, 25 May 2017 10:28:04 +0200 Subject: [PATCH 6/6] Changed algo for starting smoke process --- Moose Development/Moose/Tasking/Task_CARGO.lua | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/Moose Development/Moose/Tasking/Task_CARGO.lua b/Moose Development/Moose/Tasking/Task_CARGO.lua index cb984e09e..90e883532 100644 --- a/Moose Development/Moose/Tasking/Task_CARGO.lua +++ b/Moose Development/Moose/Tasking/Task_CARGO.lua @@ -364,17 +364,7 @@ do -- TASK_CARGO self:E( { TaskUnit = TaskUnit, Task = Task and Task:GetClassNameAndID() } ) if self.Cargo:IsAlive() then if TaskUnit:IsAir() then - local ColorToUse = TASK_CARGO:GetSmokeColor() - if ColorToUse == SMOKECOLOR.Green then - self.Cargo.CargoObject:GetUnit(1):SmokeGreen() - elseif ColorToUse == SMOKECOLOR.Blue then - self.Cargo.CargoObject:GetUnit(1):SmokeBlue() - elseif ColorToUse == SMOKECOLOR.Orange then - self.Cargo.CargoObject:GetUnit(1):SmokeOrange() - elseif ColorToUse == SMOKECOLOR.White then - self.Cargo.CargoObject:GetUnit(1):SmokeWhite() - else - self.Cargo.CargoObject:GetUnit(1):SmokeRed() + TaskUnit:Smoke(TASK_CARGO:GetSmokeColor(),15) end self:__Land( -0.1, "Pickup" ) else