From bffb3e7778b68b1adc6fd3e2367db3c19a428ad5 Mon Sep 17 00:00:00 2001 From: Frank Date: Thu, 15 Jun 2023 19:12:26 +0200 Subject: [PATCH] OPS UNIT and POSITIONABLE - Removed pcall for GetVec3 and GetAmmo CHIEF - Deploy resources if zone is empty and owned by itself --- Moose Development/Moose/Ops/Chief.lua | 4 ++- .../Moose/Wrapper/Positionable.lua | 25 ++++++++++--------- Moose Development/Moose/Wrapper/Unit.lua | 22 ++++++++-------- 3 files changed, 27 insertions(+), 24 deletions(-) diff --git a/Moose Development/Moose/Ops/Chief.lua b/Moose Development/Moose/Ops/Chief.lua index 91e32af71..0272ec659 100644 --- a/Moose Development/Moose/Ops/Chief.lua +++ b/Moose Development/Moose/Ops/Chief.lua @@ -2579,7 +2579,9 @@ function CHIEF:CheckOpsZoneQueue() local zoneName=stratzone.opszone.zone:GetName() -- Check coalition and importance. - if ownercoalition~=self.coalition and (stratzone.importance==nil or stratzone.importance<=vip) and (not stratzone.opszone:IsStopped()) then + if (ownercoalition~=self.coalition or (ownercoalition==self.coalition and stratzone.opszone:IsEmpty())) + and (stratzone.importance==nil or stratzone.importance<=vip) + and (not stratzone.opszone:IsStopped()) then -- Debug info. self:T(self.lid..string.format("Zone %s [%s] is owned by coalition %d", zoneName, stratzone.opszone:GetState(), ownercoalition)) diff --git a/Moose Development/Moose/Wrapper/Positionable.lua b/Moose Development/Moose/Wrapper/Positionable.lua index 669cbac56..a1e47f766 100644 --- a/Moose Development/Moose/Wrapper/Positionable.lua +++ b/Moose Development/Moose/Wrapper/Positionable.lua @@ -239,18 +239,19 @@ end function POSITIONABLE:GetVec3() local DCSPositionable = self:GetDCSObject() if DCSPositionable then - local status, vec3 = pcall( - function() - local vec3 = DCSPositionable:getPoint() - return vec3 - end - ) - --local vec3 = DCSPositionable:getPoint() - if status then - return vec3 - else - self:E( { "Cannot get Vec3 from DCS Object", Positionable = self, Alive = self:IsAlive() } ) - end +-- local status, vec3 = pcall( +-- function() +-- local vec3 = DCSPositionable:getPoint() +-- return vec3 +-- end +-- ) + local vec3 = DCSPositionable:getPoint() + return vec3 +-- if status then +-- return vec3 +-- else +-- self:E( { "Cannot get Vec3 from DCS Object", Positionable = self, Alive = self:IsAlive() } ) +-- end end -- ERROR! self:E( { "Cannot get the Positionable DCS Object for GetVec3", Positionable = self, Alive = self:IsAlive() } ) diff --git a/Moose Development/Moose/Wrapper/Unit.lua b/Moose Development/Moose/Wrapper/Unit.lua index 3566e25b7..cdc5d63d6 100644 --- a/Moose Development/Moose/Wrapper/Unit.lua +++ b/Moose Development/Moose/Wrapper/Unit.lua @@ -703,17 +703,17 @@ function UNIT:GetAmmo() self:F2( self.UnitName ) local DCSUnit = self:GetDCSObject() if DCSUnit then - local status, unitammo = pcall( - function() - local UnitAmmo = DCSUnit:getAmmo() - return UnitAmmo - end - ) - if status then - return unitammo - end - --local UnitAmmo = DCSUnit:getAmmo() - --return UnitAmmo +-- local status, unitammo = pcall( +-- function() +-- local UnitAmmo = DCSUnit:getAmmo() +-- return UnitAmmo +-- end +-- ) +-- if status then +-- return unitammo +-- end + local UnitAmmo = DCSUnit:getAmmo() + return UnitAmmo end return nil end