From 47778c6fe79fcf3bff1d95708186c4bbf903f317 Mon Sep 17 00:00:00 2001 From: 131stGutts Date: Sun, 13 Jan 2019 16:27:58 +0100 Subject: [PATCH] Set the time frequency of alert with PersianGulf Add new functions "Start" for ATC_GROUND_CAUCASUS, ATC_GROUND_NEVADA, ATC_GROUND_NORMANDY, ATC_GROUND_PERSIANGULF which accept none or one parameter for setting the SCHEDULER frequency. If none defined, value set before (0.05) is used. The SCHEDULER is not anymore in "New" functions of ATC_GROUND_XXX but in "Start" Usages: atcGroundCaucasus=ATC_GROUND_CAUCASUS:New() atcGroundCausasus:Start() or atcGroundCaucasus=ATC_GROUND_CAUCASUS:New() atcGroundCausasus:Start(0.5) Relative to PullRequest #1094, #1096, #1098 Include grammar issues fix from ticket #753 --- .../Moose/Functional/ATC_Ground.lua | 52 ++++++++++++++----- Moose Development/Moose/Wrapper/Airbase.lua | 17 ++++++ 2 files changed, 57 insertions(+), 12 deletions(-) diff --git a/Moose Development/Moose/Functional/ATC_Ground.lua b/Moose Development/Moose/Functional/ATC_Ground.lua index 7c25b6f1a..ba407eb37 100644 --- a/Moose Development/Moose/Functional/ATC_Ground.lua +++ b/Moose Development/Moose/Functional/ATC_Ground.lua @@ -275,7 +275,7 @@ function ATC_GROUND:_AirbaseMonitor() self:E( Taxi ) if Taxi == false then local Velocity = VELOCITY:New( AirbaseMeta.KickSpeed or self.KickSpeed ) - Client:Message( "Welcome at " .. AirbaseID .. ". The maximum taxiing speed is " .. + Client:Message( "Welcome to " .. AirbaseID .. ". The maximum taxiing speed is " .. Velocity:ToString() , 20, "ATC" ) Client:SetState( self, "Taxi", true ) end @@ -299,7 +299,7 @@ function ATC_GROUND:_AirbaseMonitor() end if Speeding == true then MESSAGE:New( "Penalty! Player " .. Client:GetPlayerName() .. - " is kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() + " has been kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() Client:Destroy() Client:SetState( self, "Speeding", false ) Client:SetState( self, "Warnings", 0 ) @@ -331,7 +331,7 @@ function ATC_GROUND:_AirbaseMonitor() Velocity:ToString(), 5, "ATC" ) Client:SetState( self, "Warnings", SpeedingWarnings + 1 ) else - MESSAGE:New( "Penalty! Player " .. Client:GetPlayerName() .. " is kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() + MESSAGE:New( "Penalty! Player " .. Client:GetPlayerName() .. " has been kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() --- @param Wrapper.Client#CLIENT Client Client:Destroy() Client:SetState( self, "Speeding", false ) @@ -363,7 +363,7 @@ function ATC_GROUND:_AirbaseMonitor() Client:Message( "Warning " .. OffRunwayWarnings .. "/3! Airbase traffic rule violation! Get back on the taxi immediately!", 5, "ATC" ) Client:SetState( self, "OffRunwayWarnings", OffRunwayWarnings + 1 ) else - MESSAGE:New( "Penalty! Player " .. Client:GetPlayerName() .. " is kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() + MESSAGE:New( "Penalty! Player " .. Client:GetPlayerName() .. " has been kicked, due to a severe airbase traffic rule violation ...", 10, "ATC" ):ToAll() --- @param Wrapper.Client#CLIENT Client Client:Destroy() Client:SetState( self, "IsOffRunway", false ) @@ -788,8 +788,6 @@ function ATC_GROUND_CAUCASUS:New( AirbaseNames ) -- Inherits from BASE local self = BASE:Inherit( self, ATC_GROUND:New( self.Airbases, AirbaseNames ) ) - self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, 0.05 ) - self:SetKickSpeedKmph( 50 ) self:SetMaximumKickSpeedKmph( 150 ) @@ -1002,6 +1000,15 @@ function ATC_GROUND_CAUCASUS:New( AirbaseNames ) end +--- Start SCHEDULER for ATC_GROUND_CAUCASUS object. +-- @param #ATC_GROUND_CAUCASUS self +-- @param RepeatScanSeconds Time in second for defining occurency of alerts. +-- @return nothing +function ATC_GROUND_CAUCASUS:Start( RepeatScanSeconds ) + RepeatScanSeconds = RepeatScanSeconds or 0.05 + self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, RepeatScanSeconds ) +end + --- @type ATC_GROUND_NEVADA @@ -1379,8 +1386,6 @@ function ATC_GROUND_NEVADA:New( AirbaseNames ) -- Inherits from BASE local self = BASE:Inherit( self, ATC_GROUND:New( self.Airbases, AirbaseNames ) ) - self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, 0.05 ) - self:SetKickSpeedKmph( 50 ) self:SetMaximumKickSpeedKmph( 150 ) @@ -1544,6 +1549,16 @@ function ATC_GROUND_NEVADA:New( AirbaseNames ) return self end +--- Start SCHEDULER for ATC_GROUND_NEVADA object. +-- @param #ATC_GROUND_NEVADA self +-- @param RepeatScanSeconds Time in second for defining occurency of alerts. +-- @return nothing +function ATC_GROUND_NEVADA:Start( RepeatScanSeconds ) + RepeatScanSeconds = RepeatScanSeconds or 0.05 + self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, RepeatScanSeconds ) +end + + --- @type ATC_GROUND_NORMANDY -- @extends #ATC_GROUND @@ -2033,8 +2048,6 @@ function ATC_GROUND_NORMANDY:New( AirbaseNames ) -- Inherits from BASE local self = BASE:Inherit( self, ATC_GROUND:New( self.Airbases, AirbaseNames ) ) -- #ATC_GROUND_NORMANDY - - self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, 0.05 ) self:SetKickSpeedKmph( 40 ) self:SetMaximumKickSpeedKmph( 100 ) @@ -2317,6 +2330,15 @@ function ATC_GROUND_NORMANDY:New( AirbaseNames ) return self end + +--- Start SCHEDULER for ATC_GROUND_NORMANDY object. +-- @param #ATC_GROUND_NORMANDY self +-- @param RepeatScanSeconds Time in second for defining occurency of alerts. +-- @return nothing +function ATC_GROUND_NORMANDY:Start( RepeatScanSeconds ) + RepeatScanSeconds = RepeatScanSeconds or 0.05 + self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, RepeatScanSeconds ) +end --- @type ATC_GROUND_PERSIANGULF -- @extends #ATC_GROUND @@ -2889,8 +2911,6 @@ function ATC_GROUND_PERSIANGULF:New( AirbaseNames ) -- Inherits from BASE local self = BASE:Inherit( self, ATC_GROUND:New( self.Airbases, AirbaseNames ) ) -- #ATC_GROUND_PERSIANGULF - - self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, 0.05 ) self:SetKickSpeedKmph( 50 ) self:SetMaximumKickSpeedKmph( 150 ) @@ -3152,6 +3172,14 @@ function ATC_GROUND_PERSIANGULF:New( AirbaseNames ) return self end +--- Start SCHEDULER for ATC_GROUND_PERSIANGULF object. +-- @param #ATC_GROUND_PERSIANGULF self +-- @param RepeatScanSeconds Time in second for defining occurency of alerts. +-- @return nothing +function ATC_GROUND_PERSIANGULF:Start( RepeatScanSeconds ) + RepeatScanSeconds = RepeatScanSeconds or 0.05 + self.AirbaseMonitor = SCHEDULER:New( self, self._AirbaseMonitor, { self }, 0, 2, RepeatScanSeconds ) +end diff --git a/Moose Development/Moose/Wrapper/Airbase.lua b/Moose Development/Moose/Wrapper/Airbase.lua index 71b020489..fe8a7824c 100644 --- a/Moose Development/Moose/Wrapper/Airbase.lua +++ b/Moose Development/Moose/Wrapper/Airbase.lua @@ -238,6 +238,15 @@ AIRBASE.Normandy = { -- * AIRBASE.PersianGulf.Sharjah_Intl -- * AIRBASE.PersianGulf.Shiraz_International_Airport -- * AIRBASE.PersianGulf.Kerman_Airport +-- * AIRBASE.PersianGulf.Sas_Al_Nakheel_Airport +-- * AIRBASE.PersianGulf.Bandar_e_Jask_airfield +-- * AIRBASE.PersianGulf.Abu_Dhabi_International_Airport +-- * AIRBASE.PersianGulf.Al_Bateen_Airport +-- * AIRBASE.PersianGulf.Kish_International_Airport +-- * AIRBASE.PersianGulf.Al_Ain_International_Airport +-- * AIRBASE.PersianGulf.Lavan_Island_Airport +-- * AIRBASE.PersianGulf.Jiroft_Airport +-- -- @field PersianGulf AIRBASE.PersianGulf = { ["Fujairah_Intl"] = "Fujairah Intl", @@ -259,6 +268,14 @@ AIRBASE.PersianGulf = { ["Sharjah_Intl"] = "Sharjah Intl", ["Shiraz_International_Airport"] = "Shiraz International Airport", ["Kerman_Airport"] = "Kerman Airport", + ["Sas_Al_Nakheel_Airport"] = "Sas Al Nakheel Airport", + ["Bandar_e_Jask_airfield"] = "Bandar-e-Jask airfield", + ["Abu_Dhabi_International_Airport"] = "Abu Dhabi International Airport", + ["Al_Bateen_Airport"] = "Al-Bateen Airport", + ["Kish_International_Airport"] = "Kish International Airport", + ["Al_Ain_International_Airport"] = "Al Ain International Airport", + ["Lavan_Island_Airport"] = "Lavan Island Airport", + ["Jiroft_Airport"] = "Jiroft Airport", } --- AIRBASE.ParkingSpot ".Coordinate, ".TerminalID", ".TerminalType", ".TOAC", ".Free", ".TerminalID0", ".DistToRwy".