mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Merge pull request #2196 from FlightControl-Master/FF/MasterDevel
DATABASE (fix for SPAWNSTATIC)
This commit is contained in:
commit
ddeca49916
@ -34,11 +34,12 @@ local _TraceClassMethod = {}
|
|||||||
|
|
||||||
local _ClassID = 0
|
local _ClassID = 0
|
||||||
|
|
||||||
---
|
--- Base class of everything
|
||||||
-- @type BASE
|
-- @type BASE
|
||||||
-- @field ClassName The name of the class.
|
-- @field #string ClassName The name of the class.
|
||||||
-- @field ClassID The ID number of the class.
|
-- @field #number ClassID The ID number of the class.
|
||||||
-- @field ClassNameAndID The name of the class concatenated with the ID number of the class.
|
-- @field #string ClassNameAndID The name of the class concatenated with the ID number of the class.
|
||||||
|
-- @field Core.Scheduler#SCHEDULER Scheduler The scheduler object.
|
||||||
|
|
||||||
--- BASE class
|
--- BASE class
|
||||||
--
|
--
|
||||||
@ -210,14 +211,6 @@ BASE._ = {
|
|||||||
Schedules = {}, --- Contains the Schedulers Active
|
Schedules = {}, --- Contains the Schedulers Active
|
||||||
}
|
}
|
||||||
|
|
||||||
--- The Formation Class
|
|
||||||
-- @type FORMATION
|
|
||||||
-- @field Cone A cone formation.
|
|
||||||
FORMATION = {
|
|
||||||
Cone = "Cone",
|
|
||||||
Vee = "Vee",
|
|
||||||
}
|
|
||||||
|
|
||||||
--- BASE constructor.
|
--- BASE constructor.
|
||||||
--
|
--
|
||||||
-- This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
|
-- This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
|
||||||
|
|||||||
@ -211,10 +211,9 @@ function DATABASE:AddStatic( DCSStaticName )
|
|||||||
|
|
||||||
if not self.STATICS[DCSStaticName] then
|
if not self.STATICS[DCSStaticName] then
|
||||||
self.STATICS[DCSStaticName] = STATIC:Register( DCSStaticName )
|
self.STATICS[DCSStaticName] = STATIC:Register( DCSStaticName )
|
||||||
return self.STATICS[DCSStaticName]
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return nil
|
return self.STATICS[DCSStaticName]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@ -224,12 +223,11 @@ function DATABASE:DeleteStatic( DCSStaticName )
|
|||||||
self.STATICS[DCSStaticName] = nil
|
self.STATICS[DCSStaticName] = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Finds a STATIC based on the StaticName.
|
--- Finds a STATIC based on the Static Name.
|
||||||
-- @param #DATABASE self
|
-- @param #DATABASE self
|
||||||
-- @param #string StaticName
|
-- @param #string StaticName Name of the static object.
|
||||||
-- @return Wrapper.Static#STATIC The found STATIC.
|
-- @return Wrapper.Static#STATIC The found STATIC.
|
||||||
function DATABASE:FindStatic( StaticName )
|
function DATABASE:FindStatic( StaticName )
|
||||||
|
|
||||||
local StaticFound = self.STATICS[StaticName]
|
local StaticFound = self.STATICS[StaticName]
|
||||||
return StaticFound
|
return StaticFound
|
||||||
end
|
end
|
||||||
@ -241,9 +239,8 @@ end
|
|||||||
function DATABASE:AddDynamicCargo( Name )
|
function DATABASE:AddDynamicCargo( Name )
|
||||||
if not self.DYNAMICCARGO[Name] then
|
if not self.DYNAMICCARGO[Name] then
|
||||||
self.DYNAMICCARGO[Name] = DYNAMICCARGO:Register(Name)
|
self.DYNAMICCARGO[Name] = DYNAMICCARGO:Register(Name)
|
||||||
return self.DYNAMICCARGO[Name]
|
|
||||||
end
|
end
|
||||||
return nil
|
return self.DYNAMICCARGO[Name]
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Finds a DYNAMICCARGO based on the Dynamic Cargo Name.
|
--- Finds a DYNAMICCARGO based on the Dynamic Cargo Name.
|
||||||
|
|||||||
@ -2987,7 +2987,7 @@ function RANGE:_DisplayBombTargets( _unitname )
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
self:_DisplayMessageToGroup( _unit, _text, 120, true, true, _multiplayer )
|
self:_DisplayMessageToGroup( _unit, _text, 150, true, true, _multiplayer )
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -3453,10 +3453,10 @@ function RANGE:_AddF10Commands( _unitName )
|
|||||||
-- Range menu
|
-- Range menu
|
||||||
local _rangePath = MENU_GROUP:New( group, self.rangename, _rootMenu )
|
local _rangePath = MENU_GROUP:New( group, self.rangename, _rootMenu )
|
||||||
|
|
||||||
local _statsPath = MENU_GROUP:New( group, "Statistics", _rangePath )
|
|
||||||
local _markPath = MENU_GROUP:New( group, "Mark Targets", _rangePath )
|
|
||||||
local _settingsPath = MENU_GROUP:New( group, "My Settings", _rangePath )
|
|
||||||
local _infoPath = MENU_GROUP:New( group, "Range Info", _rangePath )
|
local _infoPath = MENU_GROUP:New( group, "Range Info", _rangePath )
|
||||||
|
local _markPath = MENU_GROUP:New( group, "Mark Targets", _rangePath )
|
||||||
|
local _statsPath = MENU_GROUP:New( group, "Statistics", _rangePath )
|
||||||
|
local _settingsPath = MENU_GROUP:New( group, "My Settings", _rangePath )
|
||||||
|
|
||||||
-- F10/On the Range/<Range Name>/My Settings/
|
-- F10/On the Range/<Range Name>/My Settings/
|
||||||
local _mysmokePath = MENU_GROUP:New( group, "Smoke Color", _settingsPath )
|
local _mysmokePath = MENU_GROUP:New( group, "Smoke Color", _settingsPath )
|
||||||
|
|||||||
@ -631,83 +631,83 @@ ATIS.ICAOPhraseology = {
|
|||||||
-- @field #ATIS.Soundfile TACANChannel
|
-- @field #ATIS.Soundfile TACANChannel
|
||||||
-- @field #ATIS.Soundfile VORFrequency
|
-- @field #ATIS.Soundfile VORFrequency
|
||||||
ATIS.Sound = {
|
ATIS.Sound = {
|
||||||
ActiveRunway = { filename = "ActiveRunway.ogg", duration = 0.99 },
|
ActiveRunway = { filename = "ActiveRunway.ogg", duration = 0.85 },
|
||||||
ActiveRunwayDeparture = { filename = "ActiveRunwayDeparture.ogg", duration = 0.99 },
|
ActiveRunwayDeparture = { filename = "ActiveRunwayDeparture.ogg", duration = 1.50 },
|
||||||
ActiveRunwayArrival = { filename = "ActiveRunwayArrival.ogg", duration = 0.99 },
|
ActiveRunwayArrival = { filename = "ActiveRunwayArrival.ogg", duration = 1.38 },
|
||||||
AdviceOnInitial = { filename = "AdviceOnInitial.ogg", duration = 3.00 },
|
AdviceOnInitial = { filename = "AdviceOnInitial.ogg", duration = 2.98 },
|
||||||
Airport = { filename = "Airport.ogg", duration = 0.66 },
|
Airport = { filename = "Airport.ogg", duration = 0.55 },
|
||||||
Altimeter = { filename = "Altimeter.ogg", duration = 0.68 },
|
Altimeter = { filename = "Altimeter.ogg", duration = 0.91 },
|
||||||
At = { filename = "At.ogg", duration = 0.41 },
|
At = { filename = "At.ogg", duration = 0.32 },
|
||||||
CloudBase = { filename = "CloudBase.ogg", duration = 0.82 },
|
CloudBase = { filename = "CloudBase.ogg", duration = 0.69 },
|
||||||
CloudCeiling = { filename = "CloudCeiling.ogg", duration = 0.61 },
|
CloudCeiling = { filename = "CloudCeiling.ogg", duration = 0.53 },
|
||||||
CloudsBroken = { filename = "CloudsBroken.ogg", duration = 1.07 },
|
CloudsBroken = { filename = "CloudsBroken.ogg", duration = 0.81 },
|
||||||
CloudsFew = { filename = "CloudsFew.ogg", duration = 0.99 },
|
CloudsFew = { filename = "CloudsFew.ogg", duration = 0.74 },
|
||||||
CloudsNo = { filename = "CloudsNo.ogg", duration = 1.01 },
|
CloudsNo = { filename = "CloudsNo.ogg", duration = 0.69},
|
||||||
CloudsNotAvailable = { filename = "CloudsNotAvailable.ogg", duration = 2.35 },
|
CloudsNotAvailable = { filename = "CloudsNotAvailable.ogg", duration = 2.64 },
|
||||||
CloudsOvercast = { filename = "CloudsOvercast.ogg", duration = 0.83 },
|
CloudsOvercast = { filename = "CloudsOvercast.ogg", duration = 0.82 },
|
||||||
CloudsScattered = { filename = "CloudsScattered.ogg", duration = 1.18 },
|
CloudsScattered = { filename = "CloudsScattered.ogg", duration = 0.89 },
|
||||||
Decimal = { filename = "Decimal.ogg", duration = 0.54 },
|
Decimal = { filename = "Decimal.ogg", duration = 0.71 },
|
||||||
DegreesCelsius = { filename = "DegreesCelsius.ogg", duration = 1.27 },
|
DegreesCelsius = { filename = "DegreesCelsius.ogg", duration = 1.08 },
|
||||||
DegreesFahrenheit = { filename = "DegreesFahrenheit.ogg", duration = 1.23 },
|
DegreesFahrenheit = { filename = "DegreesFahrenheit.ogg", duration = 1.07 },
|
||||||
DewPoint = { filename = "DewPoint.ogg", duration = 0.65 },
|
DewPoint = { filename = "DewPoint.ogg", duration = 0.59 },
|
||||||
Dust = { filename = "Dust.ogg", duration = 0.54 },
|
Dust = { filename = "Dust.ogg", duration = 0.37 },
|
||||||
Elevation = { filename = "Elevation.ogg", duration = 0.78 },
|
Elevation = { filename = "Elevation.ogg", duration = 0.92 },
|
||||||
EndOfInformation = { filename = "EndOfInformation.ogg", duration = 1.15 },
|
EndOfInformation = { filename = "EndOfInformation.ogg", duration = 1.24 },
|
||||||
Feet = { filename = "Feet.ogg", duration = 0.45 },
|
Feet = { filename = "Feet.ogg", duration = 0.34 },
|
||||||
Fog = { filename = "Fog.ogg", duration = 0.47 },
|
Fog = { filename = "Fog.ogg", duration = 0.41 },
|
||||||
Gusting = { filename = "Gusting.ogg", duration = 0.55 },
|
Gusting = { filename = "Gusting.ogg", duration = 0.58 },
|
||||||
HectoPascal = { filename = "HectoPascal.ogg", duration = 1.15 },
|
HectoPascal = { filename = "HectoPascal.ogg", duration = 0.92 },
|
||||||
Hundred = { filename = "Hundred.ogg", duration = 0.47 },
|
Hundred = { filename = "Hundred.ogg", duration = 0.53 },
|
||||||
InchesOfMercury = { filename = "InchesOfMercury.ogg", duration = 1.16 },
|
|
||||||
Information = { filename = "Information.ogg", duration = 0.85 },
|
|
||||||
Kilometers = { filename = "Kilometers.ogg", duration = 0.78 },
|
|
||||||
Knots = { filename = "Knots.ogg", duration = 0.59 },
|
|
||||||
Left = { filename = "Left.ogg", duration = 0.54 },
|
|
||||||
MegaHertz = { filename = "MegaHertz.ogg", duration = 0.87 },
|
|
||||||
Meters = { filename = "Meters.ogg", duration = 0.59 },
|
|
||||||
MetersPerSecond = { filename = "MetersPerSecond.ogg", duration = 1.14 },
|
|
||||||
Miles = { filename = "Miles.ogg", duration = 0.60 },
|
|
||||||
MillimetersOfMercury = { filename = "MillimetersOfMercury.ogg", duration = 1.53 },
|
|
||||||
Minus = { filename = "Minus.ogg", duration = 0.64 },
|
|
||||||
N0 = { filename = "N-0.ogg", duration = 0.55 },
|
|
||||||
N1 = { filename = "N-1.ogg", duration = 0.41 },
|
|
||||||
N2 = { filename = "N-2.ogg", duration = 0.37 },
|
|
||||||
N3 = { filename = "N-3.ogg", duration = 0.41 },
|
|
||||||
N4 = { filename = "N-4.ogg", duration = 0.37 },
|
|
||||||
N5 = { filename = "N-5.ogg", duration = 0.43 },
|
|
||||||
N6 = { filename = "N-6.ogg", duration = 0.55 },
|
|
||||||
N7 = { filename = "N-7.ogg", duration = 0.43 },
|
|
||||||
N8 = { filename = "N-8.ogg", duration = 0.38 },
|
|
||||||
N9 = { filename = "N-9.ogg", duration = 0.55 },
|
|
||||||
NauticalMiles = { filename = "NauticalMiles.ogg", duration = 1.04 },
|
|
||||||
None = { filename = "None.ogg", duration = 0.43 },
|
|
||||||
QFE = { filename = "QFE.ogg", duration = 0.63 },
|
|
||||||
QNH = { filename = "QNH.ogg", duration = 0.71 },
|
|
||||||
Rain = { filename = "Rain.ogg", duration = 0.41 },
|
|
||||||
Right = { filename = "Right.ogg", duration = 0.44 },
|
|
||||||
Snow = { filename = "Snow.ogg", duration = 0.48 },
|
|
||||||
SnowStorm = { filename = "SnowStorm.ogg", duration = 0.82 },
|
|
||||||
StatuteMiles = { filename = "StatuteMiles.ogg", duration = 1.15 },
|
|
||||||
SunriseAt = { filename = "SunriseAt.ogg", duration = 0.92 },
|
|
||||||
SunsetAt = { filename = "SunsetAt.ogg", duration = 0.95 },
|
|
||||||
Temperature = { filename = "Temperature.ogg", duration = 0.64 },
|
|
||||||
Thousand = { filename = "Thousand.ogg", duration = 0.55 },
|
|
||||||
ThunderStorm = { filename = "ThunderStorm.ogg", duration = 0.81 },
|
|
||||||
TimeLocal = { filename = "TimeLocal.ogg", duration = 0.90 },
|
|
||||||
TimeZulu = { filename = "TimeZulu.ogg", duration = 0.86 },
|
|
||||||
TowerFrequency = { filename = "TowerFrequency.ogg", duration = 1.19 },
|
|
||||||
Visibilty = { filename = "Visibility.ogg", duration = 0.79 },
|
|
||||||
WeatherPhenomena = { filename = "WeatherPhenomena.ogg", duration = 1.07 },
|
|
||||||
WindFrom = { filename = "WindFrom.ogg", duration = 0.60 },
|
|
||||||
ILSFrequency = { filename = "ILSFrequency.ogg", duration = 1.30 },
|
ILSFrequency = { filename = "ILSFrequency.ogg", duration = 1.30 },
|
||||||
InnerNDBFrequency = { filename = "InnerNDBFrequency.ogg", duration = 1.56 },
|
InchesOfMercury = { filename = "InchesOfMercury.ogg", duration = 1.26 },
|
||||||
OuterNDBFrequency = { filename = "OuterNDBFrequency.ogg", duration = 1.59 },
|
Information = { filename = "Information.ogg", duration = 0.99 },
|
||||||
RunwayLength = { filename = "RunwayLength.ogg", duration = 0.91 },
|
InnerNDBFrequency = { filename = "InnerNDBFrequency.ogg", duration = 1.69 },
|
||||||
VORFrequency = { filename = "VORFrequency.ogg", duration = 1.38 },
|
Kilometers = { filename = "Kilometers.ogg", duration = 0.93 },
|
||||||
TACANChannel = { filename = "TACANChannel.ogg", duration = 0.88 },
|
Knots = { filename = "Knots.ogg", duration = 0.46 },
|
||||||
PRMGChannel = { filename = "PRMGChannel.ogg", duration = 1.18 },
|
Left = { filename = "Left.ogg", duration = 0.41 },
|
||||||
RSBNChannel = { filename = "RSBNChannel.ogg", duration = 1.14 },
|
MegaHertz = { filename = "MegaHertz.ogg", duration = 0.83 },
|
||||||
Zulu = { filename = "Zulu.ogg", duration = 0.62 },
|
Meters = { filename = "Meters.ogg", duration = 0.55 },
|
||||||
|
MetersPerSecond = { filename = "MetersPerSecond.ogg", duration = 1.03 },
|
||||||
|
Miles = { filename = "Miles.ogg", duration = 0.44 },
|
||||||
|
MillimetersOfMercury = { filename = "MillimetersOfMercury.ogg", duration = 1.59 },
|
||||||
|
Minus = { filename = "Minus.ogg", duration = 0.55 },
|
||||||
|
N0 = { filename = "N-0.ogg", duration = 0.52 },
|
||||||
|
N1 = { filename = "N-1.ogg", duration = 0.35 },
|
||||||
|
N2 = { filename = "N-2.ogg", duration = 0.41 },
|
||||||
|
N3 = { filename = "N-3.ogg", duration = 0.34 },
|
||||||
|
N4 = { filename = "N-4.ogg", duration = 0.37 },
|
||||||
|
N5 = { filename = "N-5.ogg", duration = 0.40 },
|
||||||
|
N6 = { filename = "N-6.ogg", duration = 0.46 },
|
||||||
|
N7 = { filename = "N-7.ogg", duration = 0.52 },
|
||||||
|
N8 = { filename = "N-8.ogg", duration = 0.36 },
|
||||||
|
N9 = { filename = "N-9.ogg", duration = 0.1 },
|
||||||
|
NauticalMiles = { filename = "NauticalMiles.ogg", duration = 0.93 },
|
||||||
|
None = { filename = "None.ogg", duration = 0.33 },
|
||||||
|
OuterNDBFrequency = { filename = "OuterNDBFrequency.ogg", duration = 1.70 },
|
||||||
|
PRMGChannel = { filename = "PRMGChannel.ogg", duration = 1.27 },
|
||||||
|
QFE = { filename = "QFE.ogg", duration = 0.90 },
|
||||||
|
QNH = { filename = "QNH.ogg", duration = 0.94 },
|
||||||
|
Rain = { filename = "Rain.ogg", duration = 0.35 },
|
||||||
|
Right = { filename = "Right.ogg", duration = 0.31 },
|
||||||
|
RSBNChannel = { filename = "RSBNChannel.ogg", duration = 1.26 },
|
||||||
|
RunwayLength = { filename = "RunwayLength.ogg", duration = 0.81 },
|
||||||
|
Snow = { filename = "Snow.ogg", duration = 0.40 },
|
||||||
|
SnowStorm = { filename = "SnowStorm.ogg", duration = 0.73 },
|
||||||
|
StatuteMiles = { filename = "StatuteMiles.ogg", duration = 0.90 },
|
||||||
|
SunriseAt = { filename = "SunriseAt.ogg", duration = 0.82 },
|
||||||
|
SunsetAt = { filename = "SunsetAt.ogg", duration = 0.87 },
|
||||||
|
TACANChannel = { filename = "TACANChannel.ogg", duration = 0.81 },
|
||||||
|
Temperature = { filename = "Temperature.ogg", duration = 0.70 },
|
||||||
|
Thousand = { filename = "Thousand.ogg", duration = 0.58 },
|
||||||
|
ThunderStorm = { filename = "ThunderStorm.ogg", duration = 0.79 },
|
||||||
|
TimeLocal = { filename = "TimeLocal.ogg", duration = 0.83 },
|
||||||
|
TimeZulu = { filename = "TimeZulu.ogg", duration = 0.83 },
|
||||||
|
TowerFrequency = { filename = "TowerFrequency.ogg", duration = 1.05 },
|
||||||
|
Visibilty = { filename = "Visibility.ogg", duration = 1.16 },
|
||||||
|
VORFrequency = { filename = "VORFrequency.ogg", duration = 1.28 },
|
||||||
|
WeatherPhenomena = { filename = "WeatherPhenomena.ogg", duration = 1.09 },
|
||||||
|
WindFrom = { filename = "WindFrom.ogg", duration = 0.63 },
|
||||||
|
Zulu = { filename = "Zulu.ogg", duration = 0.51 },
|
||||||
}
|
}
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -966,7 +966,7 @@ _ATIS = {}
|
|||||||
|
|
||||||
--- ATIS class version.
|
--- ATIS class version.
|
||||||
-- @field #string version
|
-- @field #string version
|
||||||
ATIS.version = "1.0.0"
|
ATIS.version = "1.0.1"
|
||||||
|
|
||||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
-- TODO list
|
-- TODO list
|
||||||
@ -2092,34 +2092,32 @@ function ATIS:onafterBroadcast( From, Event, To )
|
|||||||
---------------
|
---------------
|
||||||
|
|
||||||
-- Get mission weather info. Most of this is static.
|
-- Get mission weather info. Most of this is static.
|
||||||
local clouds, visibility, turbulence, fog, dust, static = self:GetMissionWeather()
|
local clouds, visibility, turbulence, dustdens, static = self:GetMissionWeather()
|
||||||
|
|
||||||
-- Check that fog is actually "thick" enough to reach the airport. If an airport is in the mountains, fog might not affect it as it is measured from sea level.
|
local dust=false
|
||||||
if fog and fog.thickness < height + 25 then
|
local fog=false
|
||||||
fog = nil
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Dust only up to 1500 ft = 457 m ASL.
|
|
||||||
if dust and height + 25 > UTILS.FeetToMeters( 1500 ) then
|
|
||||||
dust = nil
|
|
||||||
end
|
|
||||||
|
|
||||||
------------------
|
------------------
|
||||||
--- Visibility ---
|
--- Visibility ---
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
-- Get min visibility.
|
if dustdens then
|
||||||
local visibilitymin = visibility
|
|
||||||
|
|
||||||
if fog then
|
-- Dust only up to 1500 ft = 457 m ASL.
|
||||||
if fog.visibility < visibilitymin then
|
if UTILS.FeetToMeters( 1500 )> height+25 then
|
||||||
visibilitymin = fog.visibility
|
dust=true
|
||||||
end
|
visibility=math.min(visibility, dustdens)
|
||||||
end
|
end
|
||||||
|
|
||||||
if dust then
|
else -- As of DCS 2.9.10.3948 (December 2024), fog and dust are mutually exclusive!
|
||||||
if dust < visibilitymin then
|
|
||||||
visibilitymin = dust
|
-- Get current fog visibility and thickness
|
||||||
|
local fvis=world.weather.getFogVisibilityDistance()
|
||||||
|
local fheight=world.weather.getFogThickness()
|
||||||
|
|
||||||
|
if fvis>0 and fheight>height+25 then
|
||||||
|
fog=true
|
||||||
|
visibility=math.min(visibility, fvis)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -2127,7 +2125,7 @@ function ATIS:onafterBroadcast( From, Event, To )
|
|||||||
|
|
||||||
if self.metric then
|
if self.metric then
|
||||||
-- Visibility in km.
|
-- Visibility in km.
|
||||||
local reportedviz = UTILS.Round( visibilitymin / 1000 )
|
local reportedviz = UTILS.Round( visibility / 1000 )
|
||||||
-- max reported visibility 9999 m
|
-- max reported visibility 9999 m
|
||||||
if reportedviz > 10 then
|
if reportedviz > 10 then
|
||||||
reportedviz = 10
|
reportedviz = 10
|
||||||
@ -2135,7 +2133,7 @@ function ATIS:onafterBroadcast( From, Event, To )
|
|||||||
VISIBILITY = string.format( "%d", reportedviz )
|
VISIBILITY = string.format( "%d", reportedviz )
|
||||||
else
|
else
|
||||||
-- max reported visibility 10 NM
|
-- max reported visibility 10 NM
|
||||||
local reportedviz = UTILS.Round( UTILS.MetersToSM( visibilitymin ) )
|
local reportedviz = UTILS.Round( UTILS.MetersToSM( visibility ) )
|
||||||
if reportedviz > 10 then
|
if reportedviz > 10 then
|
||||||
reportedviz = 10
|
reportedviz = 10
|
||||||
end
|
end
|
||||||
@ -3362,28 +3360,13 @@ function ATIS:GetMissionWeather()
|
|||||||
dust = weather.dust_density
|
dust = weather.dust_density
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Fog
|
|
||||||
--[[
|
|
||||||
["enable_fog"] = false,
|
|
||||||
["fog"] =
|
|
||||||
{
|
|
||||||
["thickness"] = 0,
|
|
||||||
["visibility"] = 25,
|
|
||||||
}, -- end of ["fog"]
|
|
||||||
]]
|
|
||||||
local fog = nil
|
|
||||||
if weather.enable_fog == true then
|
|
||||||
fog = weather.fog
|
|
||||||
end
|
|
||||||
|
|
||||||
self:T( "FF weather:" )
|
self:T( "FF weather:" )
|
||||||
self:T( { clouds = clouds } )
|
self:T( { clouds = clouds } )
|
||||||
self:T( { visibility = visibility } )
|
self:T( { visibility = visibility } )
|
||||||
self:T( { turbulence = turbulence } )
|
self:T( { turbulence = turbulence } )
|
||||||
self:T( { fog = fog } )
|
|
||||||
self:T( { dust = dust } )
|
self:T( { dust = dust } )
|
||||||
self:T( { static = static } )
|
self:T( { static = static } )
|
||||||
return clouds, visibility, turbulence, fog, dust, static
|
return clouds, visibility, turbulence, dust, static
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Get thousands of a number.
|
--- Get thousands of a number.
|
||||||
|
|||||||
@ -869,6 +869,7 @@ AIRBASE.Afghanistan = {
|
|||||||
-- * `AIRBASE.Iraq.Qayyarah_Airfield_West` Qayyarah Airfield West
|
-- * `AIRBASE.Iraq.Qayyarah_Airfield_West` Qayyarah Airfield West
|
||||||
-- * `AIRBASE.Iraq.K1_Base` K1 Base
|
-- * `AIRBASE.Iraq.K1_Base` K1 Base
|
||||||
--
|
--
|
||||||
|
-- @field Iraq
|
||||||
AIRBASE.Iraq = {
|
AIRBASE.Iraq = {
|
||||||
["Baghdad_International_Airport"] = "Baghdad International Airport",
|
["Baghdad_International_Airport"] = "Baghdad International Airport",
|
||||||
["Sulaimaniyah_International_Airport"] = "Sulaimaniyah International Airport",
|
["Sulaimaniyah_International_Airport"] = "Sulaimaniyah International Airport",
|
||||||
|
|||||||
@ -61,6 +61,8 @@ function STATIC:Register( StaticName )
|
|||||||
if DCSStatic then
|
if DCSStatic then
|
||||||
local Life0 = DCSStatic:getLife() or 1
|
local Life0 = DCSStatic:getLife() or 1
|
||||||
self.Life0 = Life0
|
self.Life0 = Life0
|
||||||
|
else
|
||||||
|
self:E(string.format("Static object %s does not exist!", tostring(self.StaticName)))
|
||||||
end
|
end
|
||||||
|
|
||||||
return self
|
return self
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user