mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
#UNIT #CTLD
* Stabilize that sometimes a unit coordinate cannot be found
This commit is contained in:
commit
f7e64bc9b5
@ -22,7 +22,7 @@
|
||||
-- @module Ops.CTLD
|
||||
-- @image OPS_CTLD.jpg
|
||||
|
||||
-- Last Update Apr 2023
|
||||
-- Last Update June 2023
|
||||
|
||||
do
|
||||
|
||||
@ -1221,7 +1221,7 @@ CTLD.UnitTypes = {
|
||||
|
||||
--- CTLD class version.
|
||||
-- @field #string version
|
||||
CTLD.version="1.0.37"
|
||||
CTLD.version="1.0.38"
|
||||
|
||||
--- Instantiate a new CTLD.
|
||||
-- @param #CTLD self
|
||||
@ -4308,6 +4308,9 @@ end
|
||||
local uspeed = Unit:GetVelocityMPS()
|
||||
local uheight = Unit:GetHeight()
|
||||
local ucoord = Unit:GetCoordinate()
|
||||
if not ucoord then
|
||||
return false
|
||||
end
|
||||
local gheight = ucoord:GetLandHeight()
|
||||
local aheight = uheight - gheight -- height above ground
|
||||
local maxh = self.maximumHoverHeight -- 15
|
||||
@ -4334,6 +4337,9 @@ end
|
||||
local uspeed = Unit:GetVelocityMPS()
|
||||
local uheight = Unit:GetHeight()
|
||||
local ucoord = Unit:GetCoordinate()
|
||||
if not ucoord then
|
||||
return false
|
||||
end
|
||||
local gheight = ucoord:GetLandHeight()
|
||||
local aheight = uheight - gheight -- height above ground
|
||||
local minh = self.HercMinAngels-- 1500m
|
||||
@ -4419,6 +4425,9 @@ end
|
||||
end
|
||||
local uheight = Unit:GetHeight()
|
||||
local ucoord = Unit:GetCoordinate()
|
||||
if not ucoord then
|
||||
return false
|
||||
end
|
||||
local gheight = ucoord:GetLandHeight()
|
||||
local aheight = uheight - gheight -- height above ground
|
||||
if aheight >= minheight then
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
-- @field #string ClassName Name of the class.
|
||||
-- @field #string UnitName Name of the unit.
|
||||
-- @field #string GroupName Name of the group the unit belongs to.
|
||||
-- @field #table DCSUnit The DCS Unit object from the API.
|
||||
-- @extends Wrapper.Controllable#CONTROLLABLE
|
||||
|
||||
--- For each DCS Unit object alive within a running mission, a UNIT wrapper object (instance) will be created within the global _DATABASE object (an instance of @{Core.Database#DATABASE}).
|
||||
@ -92,6 +93,7 @@ UNIT = {
|
||||
ClassName="UNIT",
|
||||
UnitName=nil,
|
||||
GroupName=nil,
|
||||
DCSUnit = nil,
|
||||
}
|
||||
|
||||
|
||||
@ -124,6 +126,7 @@ function UNIT:Register( UnitName )
|
||||
if group then
|
||||
self.GroupName=group:getName()
|
||||
end
|
||||
self.DCSUnit = unit
|
||||
end
|
||||
|
||||
-- Set event prio.
|
||||
@ -176,6 +179,10 @@ function UNIT:GetDCSObject()
|
||||
return DCSUnit
|
||||
end
|
||||
|
||||
if self.DCSUnit then
|
||||
return self.DCSUnit
|
||||
end
|
||||
|
||||
return nil
|
||||
end
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user