mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5260b2b430 | ||
|
|
0213bc7aef | ||
|
|
ca8b0899d0 | ||
|
|
a1f5c0ab9b | ||
|
|
b0e3f82d27 | ||
|
|
327ab4766b | ||
|
|
3aee8a49c1 | ||
|
|
57de0b7351 |
@@ -912,7 +912,7 @@ do -- COORDINATE
|
||||
-- The text will reflect the temperature like this:
|
||||
--
|
||||
-- - For Russian and European aircraft using the metric system - Degrees Celcius (°C)
|
||||
-- - For American aircraft we link to the imperial system - Degrees Farenheit (°F)
|
||||
-- - For American aircraft we link to the imperial system - Degrees Fahrenheit (°F)
|
||||
--
|
||||
-- A text containing a pressure will look like this:
|
||||
--
|
||||
@@ -932,7 +932,7 @@ do -- COORDINATE
|
||||
if Settings:IsMetric() then
|
||||
return string.format( " %-2.2f °C", DegreesCelcius )
|
||||
else
|
||||
return string.format( " %-2.2f °F", UTILS.CelciusToFarenheit( DegreesCelcius ) )
|
||||
return string.format( " %-2.2f °F", UTILS.CelsiusToFahrenheit( DegreesCelcius ) )
|
||||
end
|
||||
else
|
||||
return " no temperature"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2755,7 +2755,7 @@ function RANGE:_DisplayRangeWeather( _unitname )
|
||||
local tW = string.format( "%.1f m/s", Ws )
|
||||
local tP = string.format( "%.1f mmHg", P * hPa2mmHg )
|
||||
if settings:IsImperial() then
|
||||
-- tT=string.format("%d°F", UTILS.CelciusToFarenheit(T))
|
||||
-- tT=string.format("%d°F", UTILS.CelsiusToFahrenheit(T))
|
||||
tW = string.format( "%.1f knots", UTILS.MpsToKnots( Ws ) )
|
||||
tP = string.format( "%.2f inHg", P * hPa2inHg )
|
||||
end
|
||||
|
||||
@@ -255,10 +255,11 @@ CSAR.AircraftType["Mi-24P"] = 8
|
||||
CSAR.AircraftType["Mi-24V"] = 8
|
||||
CSAR.AircraftType["Bell-47"] = 2
|
||||
CSAR.AircraftType["UH-60L"] = 10
|
||||
CSAR.AircraftType["AH-64D_BLK_II"] = 2
|
||||
|
||||
--- CSAR class version.
|
||||
-- @field #string version
|
||||
CSAR.version="1.0.4c"
|
||||
CSAR.version="1.0.4d"
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
-- ToDo list
|
||||
|
||||
@@ -1017,6 +1017,7 @@ CTLD.UnitTypes = {
|
||||
["Hercules"] = {type="Hercules", crates=true, troops=true, cratelimit = 7, trooplimit = 64, length = 25, cargoweightlimit = 19000}, -- 19t cargo, 64 paratroopers.
|
||||
--Actually it's longer, but the center coord is off-center of the model.
|
||||
["UH-60L"] = {type="UH-60L", crates=true, troops=true, cratelimit = 2, trooplimit = 20, length = 16, cargoweightlimit = 3500}, -- 4t cargo, 20 (unsec) seats
|
||||
["AH-64D_BLK_II"] = {type="AH-64D_BLK_II", crates=false, troops=true, cratelimit = 0, trooplimit = 2, length = 17, cargoweightlimit = 200}, -- 2 ppl **outside** the helo
|
||||
}
|
||||
|
||||
--- CTLD class version.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -384,61 +384,81 @@ AIRBASE.TheChannel = {
|
||||
-- * AIRBASE.Syria.Beirut_Rafic_Hariri
|
||||
-- * AIRBASE.Syria.An_Nasiriyah
|
||||
-- * AIRBASE.Syria.Abu_al_Duhur
|
||||
-- * AIRBASE.Syria.At_Tanf
|
||||
-- * AIRBASE.Syria.H3
|
||||
-- * AIRBASE.Syria.H3_Northwest
|
||||
-- * AIRBASE.Syria.H3_Southwest
|
||||
-- * AIRBASE.Syria.Kharab_Ishk
|
||||
-- * AIRBASE.Syria.Raj_al_Issa_East
|
||||
-- * AIRBASE.Syria.Raj_al_Issa_West
|
||||
-- * AIRBASE.Syria.Ruwayshid
|
||||
-- * AIRBASE.Syria.Sanliurfa
|
||||
-- * AIRBASE.Syria.Tal_Siman
|
||||
--
|
||||
-- @field Syria
|
||||
AIRBASE.Syria = {
|
||||
["Kuweires"] = "Kuweires",
|
||||
["Marj_Ruhayyil"] = "Marj Ruhayyil",
|
||||
["Kiryat_Shmona"] = "Kiryat Shmona",
|
||||
["Marj_as_Sultan_North"] = "Marj as Sultan North",
|
||||
["Eyn_Shemer"] = "Eyn Shemer",
|
||||
["Incirlik"] = "Incirlik",
|
||||
["Damascus"] = "Damascus",
|
||||
["Bassel_Al_Assad"] = "Bassel Al-Assad",
|
||||
["Rosh_Pina"] = "Rosh Pina",
|
||||
["Aleppo"] = "Aleppo",
|
||||
["Al_Qusayr"] = "Al Qusayr",
|
||||
["Wujah_Al_Hajar"] = "Wujah Al Hajar",
|
||||
["Al_Dumayr"] = "Al-Dumayr",
|
||||
["Gazipasa"] = "Gazipasa",
|
||||
["Ru_Convoy_4"] = "Ru Convoy-4",
|
||||
["Hatay"] = "Hatay",
|
||||
["Nicosia"] = "Nicosia",
|
||||
["Pinarbashi"] = "Pinarbashi",
|
||||
["Paphos"] = "Paphos",
|
||||
["Kingsfield"] = "Kingsfield",
|
||||
["Thalah"] = "Tha'lah",
|
||||
["Haifa"] = "Haifa",
|
||||
["Khalkhalah"] = "Khalkhalah",
|
||||
["Megiddo"] = "Megiddo",
|
||||
["Lakatamia"] = "Lakatamia",
|
||||
["Rayak"] = "Rayak",
|
||||
["Larnaca"] = "Larnaca",
|
||||
["Mezzeh"] = "Mezzeh",
|
||||
["Gecitkale"] = "Gecitkale",
|
||||
["Akrotiri"] = "Akrotiri",
|
||||
["Naqoura"] = "Naqoura",
|
||||
["Gaziantep"] = "Gaziantep",
|
||||
["Sayqal"] = "Sayqal",
|
||||
["Tiyas"] = "Tiyas",
|
||||
["Shayrat"] = "Shayrat",
|
||||
["Taftanaz"] = "Taftanaz",
|
||||
["H4"] = "H4",
|
||||
["King_Hussein_Air_College"] = "King Hussein Air College",
|
||||
["Rene_Mouawad"] = "Rene Mouawad",
|
||||
["Jirah"] = "Jirah",
|
||||
["Ramat_David"] = "Ramat David",
|
||||
["Qabr_as_Sitt"] = "Qabr as Sitt",
|
||||
["Minakh"] = "Minakh",
|
||||
["Adana_Sakirpasa"] = "Adana Sakirpasa",
|
||||
["Palmyra"] = "Palmyra",
|
||||
["Hama"] = "Hama",
|
||||
["Ercan"] = "Ercan",
|
||||
["Marj_as_Sultan_South"] = "Marj as Sultan South",
|
||||
["Tabqa"] = "Tabqa",
|
||||
["Beirut_Rafic_Hariri"] = "Beirut-Rafic Hariri",
|
||||
["An_Nasiriyah"] = "An Nasiriyah",
|
||||
["Abu_al_Duhur"] = "Abu al-Duhur",
|
||||
--@field Syria
|
||||
AIRBASE.Syria={
|
||||
["Kuweires"]="Kuweires",
|
||||
["Marj_Ruhayyil"]="Marj Ruhayyil",
|
||||
["Kiryat_Shmona"]="Kiryat Shmona",
|
||||
["Marj_as_Sultan_North"]="Marj as Sultan North",
|
||||
["Eyn_Shemer"]="Eyn Shemer",
|
||||
["Incirlik"]="Incirlik",
|
||||
["Damascus"]="Damascus",
|
||||
["Bassel_Al_Assad"]="Bassel Al-Assad",
|
||||
["Rosh_Pina"]="Rosh Pina",
|
||||
["Aleppo"]="Aleppo",
|
||||
["Al_Qusayr"]="Al Qusayr",
|
||||
["Wujah_Al_Hajar"]="Wujah Al Hajar",
|
||||
["Al_Dumayr"]="Al-Dumayr",
|
||||
["Gazipasa"]="Gazipasa",
|
||||
["Ru_Convoy_4"]="Ru Convoy-4",
|
||||
["Hatay"]="Hatay",
|
||||
["Nicosia"]="Nicosia",
|
||||
["Pinarbashi"]="Pinarbashi",
|
||||
["Paphos"]="Paphos",
|
||||
["Kingsfield"]="Kingsfield",
|
||||
["Thalah"]="Tha'lah",
|
||||
["Haifa"]="Haifa",
|
||||
["Khalkhalah"]="Khalkhalah",
|
||||
["Megiddo"]="Megiddo",
|
||||
["Lakatamia"]="Lakatamia",
|
||||
["Rayak"]="Rayak",
|
||||
["Larnaca"]="Larnaca",
|
||||
["Mezzeh"]="Mezzeh",
|
||||
["Gecitkale"]="Gecitkale",
|
||||
["Akrotiri"]="Akrotiri",
|
||||
["Naqoura"]="Naqoura",
|
||||
["Gaziantep"]="Gaziantep",
|
||||
["Sayqal"]="Sayqal",
|
||||
["Tiyas"]="Tiyas",
|
||||
["Shayrat"]="Shayrat",
|
||||
["Taftanaz"]="Taftanaz",
|
||||
["H4"]="H4",
|
||||
["King_Hussein_Air_College"]="King Hussein Air College",
|
||||
["Rene_Mouawad"]="Rene Mouawad",
|
||||
["Jirah"]="Jirah",
|
||||
["Ramat_David"]="Ramat David",
|
||||
["Qabr_as_Sitt"]="Qabr as Sitt",
|
||||
["Minakh"]="Minakh",
|
||||
["Adana_Sakirpasa"]="Adana Sakirpasa",
|
||||
["Palmyra"]="Palmyra",
|
||||
["Hama"]="Hama",
|
||||
["Ercan"]="Ercan",
|
||||
["Marj_as_Sultan_South"]="Marj as Sultan South",
|
||||
["Tabqa"]="Tabqa",
|
||||
["Beirut_Rafic_Hariri"]="Beirut-Rafic Hariri",
|
||||
["An_Nasiriyah"]="An Nasiriyah",
|
||||
["Abu_al_Duhur"]="Abu al-Duhur",
|
||||
["At_Tanf"]="At Tanf",
|
||||
["H3"]="H3",
|
||||
["H3_Northwest"]="H3 Northwest",
|
||||
["H3_Southwest"]="H3 Southwest",
|
||||
["Kharab_Ishk"]="Kharab Ishk",
|
||||
["Raj_al_Issa_East"]="Raj al Issa East",
|
||||
["Raj_al_Issa_West"]="Raj al Issa West",
|
||||
["Ruwayshid"]="Ruwayshid",
|
||||
["Sanliurfa"]="Sanliurfa",
|
||||
["Tal_Siman"]="Tal Siman",
|
||||
}
|
||||
|
||||
--- Airbases of the Mariana Islands map:
|
||||
|
||||
@@ -3770,3 +3770,44 @@ function POSITIONABLE:IsSubmarine()
|
||||
|
||||
return nil
|
||||
end
|
||||
|
||||
--- Sets the controlled group to go at the specified speed in meters per second.
|
||||
-- @param #CONTROLLABLE self
|
||||
-- @param #number Speed Speed in meters per second.
|
||||
-- @param #boolean Keep (Optional) When set to true, will maintain the speed on passing waypoints. If not present or false, the controlled group will return to the speed as defined by their route.
|
||||
-- @return #CONTROLLABLE self
|
||||
function CONTROLLABLE:SetSpeed(Speed, Keep)
|
||||
self:F2( { self.ControllableName } )
|
||||
-- Set default if not specified.
|
||||
local speed = Speed or 5
|
||||
local DCSControllable = self:GetDCSObject()
|
||||
if DCSControllable then
|
||||
local Controller = self:_GetController()
|
||||
if Controller then
|
||||
Controller:setSpeed(speed, Keep)
|
||||
end
|
||||
end
|
||||
return self
|
||||
end
|
||||
|
||||
--- [AIR] Sets the controlled aircraft group to fly at the specified altitude in meters.
|
||||
-- @param #CONTROLLABLE self
|
||||
-- @param #number Altitude Altitude in meters.
|
||||
-- @param #boolean Keep (Optional) When set to true, will maintain the altitude on passing waypoints. If not present or false, the controlled group will return to the altitude as defined by their route.
|
||||
-- @param #string AltType (Optional) Specifies the altitude type used. If nil, the altitude type of the current waypoint will be used. Accepted values are "BARO" and "RADIO".
|
||||
-- @return #CONTROLLABLE self
|
||||
function CONTROLLABLE:SetAltitude(Altitude, Keep, AltType)
|
||||
self:F2( { self.ControllableName } )
|
||||
-- Set default if not specified.
|
||||
local altitude = Altitude or 1000
|
||||
local DCSControllable = self:GetDCSObject()
|
||||
if DCSControllable then
|
||||
local Controller = self:_GetController()
|
||||
if Controller then
|
||||
if self:IsAir() then
|
||||
Controller:setAltitude(altitude, Keep, AltType)
|
||||
end
|
||||
end
|
||||
end
|
||||
return self
|
||||
end
|
||||
@@ -10,8 +10,11 @@
|
||||
--
|
||||
-- @module Wrapper.Static
|
||||
-- @image Wrapper_Static.JPG
|
||||
|
||||
|
||||
--- @type STATIC
|
||||
-- @extends Wrapper.Positionable#POSITIONABLE
|
||||
|
||||
--- Wrapper class to handle Static objects.
|
||||
--
|
||||
-- Note that Statics are almost the same as Units, but they don't have a controller.
|
||||
@@ -37,10 +40,13 @@
|
||||
--
|
||||
-- * @{#STATIC.FindByName}(): Find a STATIC instance from the _DATABASE object using a DCS Static name.
|
||||
--
|
||||
-- IMPORTANT: ONE SHOULD NEVER SANITIZE these STATIC OBJECT REFERENCES! (make the STATIC object references nil).
|
||||
-- IMPORTANT: ONE SHOULD NEVER SANATIZE these STATIC OBJECT REFERENCES! (make the STATIC object references nil).
|
||||
--
|
||||
-- @field #STATIC
|
||||
STATIC = { ClassName = "STATIC" }
|
||||
STATIC = {
|
||||
ClassName = "STATIC",
|
||||
}
|
||||
|
||||
|
||||
--- Register a static object.
|
||||
-- @param #STATIC self
|
||||
@@ -52,6 +58,7 @@ function STATIC:Register( StaticName )
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Finds a STATIC from the _DATABASE using a DCSStatic object.
|
||||
-- @param #STATIC self
|
||||
-- @param DCS#StaticObject DCSStatic An existing DCS Static object reference.
|
||||
@@ -90,9 +97,8 @@ end
|
||||
|
||||
--- Destroys the STATIC.
|
||||
-- @param #STATIC self
|
||||
-- @param #boolean GenerateEvent (Optional) true to generate a crash or dead event, false to not generate any event. `nil` (default) creates a remove event.
|
||||
-- @param #boolean GenerateEvent (Optional) true if you want to generate a crash or dead event for the static.
|
||||
-- @return #nil The DCS StaticObject is not existing or alive.
|
||||
--
|
||||
-- @usage
|
||||
-- -- Air static example: destroy the static Helicopter and generate a S_EVENT_CRASH.
|
||||
-- Helicopter = STATIC:FindByName( "Helicopter" )
|
||||
@@ -111,7 +117,7 @@ end
|
||||
-- @usage
|
||||
-- -- Destroy without event generation example.
|
||||
-- Ship = STATIC:FindByName( "Boat" )
|
||||
-- Ship:Destroy( false ) -- Don't generate any event upon destruction.
|
||||
-- Ship:Destroy( false ) -- Don't generate an event upon destruction.
|
||||
--
|
||||
function STATIC:Destroy( GenerateEvent )
|
||||
self:F2( self.ObjectName )
|
||||
@@ -142,6 +148,7 @@ function STATIC:Destroy( GenerateEvent )
|
||||
return nil
|
||||
end
|
||||
|
||||
|
||||
--- Get DCS object of static of static.
|
||||
-- @param #STATIC self
|
||||
-- @return DCS static object
|
||||
@@ -173,6 +180,7 @@ function STATIC:GetUnits()
|
||||
return nil
|
||||
end
|
||||
|
||||
|
||||
--- Get threat level of static.
|
||||
-- @param #STATIC self
|
||||
-- @return #number Threat level 1.
|
||||
@@ -186,15 +194,15 @@ end
|
||||
-- @param Core.Point#COORDINATE Coordinate The coordinate where to spawn the new Static.
|
||||
-- @param #number Heading The heading of the static respawn in degrees. Default is 0 deg.
|
||||
-- @param #number Delay Delay in seconds before the static is spawned.
|
||||
function STATIC:SpawnAt( Coordinate, Heading, Delay )
|
||||
function STATIC:SpawnAt(Coordinate, Heading, Delay)
|
||||
|
||||
Heading = Heading or 0
|
||||
Heading=Heading or 0
|
||||
|
||||
if Delay and Delay > 0 then
|
||||
SCHEDULER:New( nil, self.SpawnAt, { self, Coordinate, Heading }, Delay )
|
||||
if Delay and Delay>0 then
|
||||
SCHEDULER:New(nil, self.SpawnAt, {self, Coordinate, Heading}, Delay)
|
||||
else
|
||||
|
||||
local SpawnStatic = SPAWNSTATIC:NewFromStatic( self.StaticName )
|
||||
local SpawnStatic=SPAWNSTATIC:NewFromStatic(self.StaticName)
|
||||
|
||||
SpawnStatic:SpawnFromPointVec2( Coordinate, Heading, self.StaticName )
|
||||
|
||||
@@ -203,45 +211,48 @@ function STATIC:SpawnAt( Coordinate, Heading, Delay )
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Respawn the @{Wrapper.Unit} at the same location with the same properties.
|
||||
-- This is useful to respawn a cargo after it has been destroyed.
|
||||
-- @param #STATIC self
|
||||
-- @param DCS#country.id CountryID (Optional) The country ID used for spawning the new static. Default is same as currently.
|
||||
-- @param #number Delay (Optional) Delay in seconds before static is respawned. Default now.
|
||||
function STATIC:ReSpawn( CountryID, Delay )
|
||||
function STATIC:ReSpawn(CountryID, Delay)
|
||||
|
||||
if Delay and Delay > 0 then
|
||||
SCHEDULER:New( nil, self.ReSpawn, { self, CountryID }, Delay )
|
||||
if Delay and Delay>0 then
|
||||
SCHEDULER:New(nil, self.ReSpawn, {self, CountryID}, Delay)
|
||||
else
|
||||
|
||||
CountryID = CountryID or self:GetCountry()
|
||||
CountryID=CountryID or self:GetCountry()
|
||||
|
||||
local SpawnStatic = SPAWNSTATIC:NewFromStatic( self.StaticName, CountryID )
|
||||
local SpawnStatic=SPAWNSTATIC:NewFromStatic(self.StaticName, CountryID)
|
||||
|
||||
SpawnStatic:Spawn( nil, self.StaticName )
|
||||
SpawnStatic:Spawn(nil, self.StaticName)
|
||||
|
||||
end
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Respawn the @{Wrapper.Unit} at a defined Coordinate with an optional heading.
|
||||
-- @param #STATIC self
|
||||
-- @param Core.Point#COORDINATE Coordinate The coordinate where to spawn the new Static.
|
||||
-- @param #number Heading (Optional) The heading of the static respawn in degrees. Default is the current heading.
|
||||
-- @param #number Delay (Optional) Delay in seconds before static is respawned. Default is now.
|
||||
function STATIC:ReSpawnAt( Coordinate, Heading, Delay )
|
||||
-- @param #number Heading (Optional) The heading of the static respawn in degrees. Default the current heading.
|
||||
-- @param #number Delay (Optional) Delay in seconds before static is respawned. Default now.
|
||||
function STATIC:ReSpawnAt(Coordinate, Heading, Delay)
|
||||
|
||||
-- Heading=Heading or 0
|
||||
--Heading=Heading or 0
|
||||
|
||||
if Delay and Delay > 0 then
|
||||
SCHEDULER:New( nil, self.ReSpawnAt, { self, Coordinate, Heading }, Delay )
|
||||
if Delay and Delay>0 then
|
||||
SCHEDULER:New(nil, self.ReSpawnAt, {self, Coordinate, Heading}, Delay)
|
||||
else
|
||||
local SpawnStatic = SPAWNSTATIC:NewFromStatic( self.StaticName, self:GetCountry() )
|
||||
|
||||
SpawnStatic:SpawnFromCoordinate( Coordinate, Heading, self.StaticName )
|
||||
local SpawnStatic=SPAWNSTATIC:NewFromStatic(self.StaticName, self:GetCountry())
|
||||
|
||||
SpawnStatic:SpawnFromCoordinate(Coordinate, Heading, self.StaticName)
|
||||
|
||||
end
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user