mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Updates
This commit is contained in:
parent
a47195198e
commit
62b668029b
Binary file not shown.
@ -530,10 +530,20 @@ do -- FSM
|
||||
|
||||
|
||||
function FSM:_call_handler( handler, params, EventName )
|
||||
|
||||
local ErrorHandler = function( errmsg )
|
||||
|
||||
env.info( "Error in SCHEDULER function:" .. errmsg )
|
||||
if debug ~= nil then
|
||||
env.info( debug.traceback() )
|
||||
end
|
||||
|
||||
return errmsg
|
||||
end
|
||||
if self[handler] then
|
||||
self:T( "Calling " .. handler )
|
||||
self._EventSchedules[EventName] = nil
|
||||
local Value = self[handler]( self, unpack(params) )
|
||||
local Result, Value = xpcall( function() return self[handler]( self, unpack( params ) ) end, ErrorHandler )
|
||||
return Value
|
||||
end
|
||||
end
|
||||
|
||||
@ -181,11 +181,15 @@ function SCHEDULEDISPATCHER:Start( Scheduler, CallID )
|
||||
|
||||
if CallID then
|
||||
local Schedule = self.Schedule[Scheduler]
|
||||
Schedule[CallID].ScheduleID = timer.scheduleFunction(
|
||||
Schedule[CallID].CallHandler,
|
||||
CallID,
|
||||
timer.getTime() + Schedule[CallID].Start
|
||||
)
|
||||
-- Only start when there is no ScheduleID defined!
|
||||
-- This prevents to "Start" the scheduler twice with the same CallID...
|
||||
if not Schedule[CallID].ScheduleID then
|
||||
Schedule[CallID].ScheduleID = timer.scheduleFunction(
|
||||
Schedule[CallID].CallHandler,
|
||||
CallID,
|
||||
timer.getTime() + Schedule[CallID].Start
|
||||
)
|
||||
end
|
||||
else
|
||||
for CallID, Schedule in pairs( self.Schedule[Scheduler] ) do
|
||||
self:Start( Scheduler, CallID ) -- Recursive
|
||||
@ -198,7 +202,12 @@ function SCHEDULEDISPATCHER:Stop( Scheduler, CallID )
|
||||
|
||||
if CallID then
|
||||
local Schedule = self.Schedule[Scheduler]
|
||||
timer.removeFunction( Schedule[CallID].ScheduleID )
|
||||
-- Only stop when there is a ScheduleID defined for the CallID.
|
||||
-- So, when the scheduler was stopped before, do nothing.
|
||||
if Schedule[CallID].ScheduleID then
|
||||
timer.removeFunction( Schedule[CallID].ScheduleID )
|
||||
Schedule[CallID].ScheduleID = nil
|
||||
end
|
||||
else
|
||||
for CallID, Schedule in pairs( self.Schedule[Scheduler] ) do
|
||||
self:Stop( Scheduler, CallID ) -- Recursive
|
||||
|
||||
@ -384,6 +384,29 @@ function SET_BASE:Get( ObjectName )
|
||||
|
||||
end
|
||||
|
||||
--- Gets the first object from the @{Set#SET_BASE} and derived classes.
|
||||
-- @param #SET_BASE self
|
||||
-- @return Core.Base#BASE
|
||||
function SET_BASE:GetFirst()
|
||||
self:F()
|
||||
|
||||
local t = self.List.first._
|
||||
self:T3( { t } )
|
||||
return t
|
||||
end
|
||||
|
||||
--- Gets the last object from the @{Set#SET_BASE} and derived classes.
|
||||
-- @param #SET_BASE self
|
||||
-- @return Core.Base#BASE
|
||||
function SET_BASE:GetLast()
|
||||
self:F()
|
||||
|
||||
local t = self.List.last._
|
||||
self:T3( { t } )
|
||||
return t
|
||||
end
|
||||
|
||||
|
||||
--- Retrieves the amount of objects in the @{Set#SET_BASE} and derived classes.
|
||||
-- @param #SET_BASE self
|
||||
-- @return #number Count
|
||||
@ -652,7 +675,8 @@ function SET_BASE:ForEach( IteratorFunction, arg, Set, Function, FunctionArgumen
|
||||
return false
|
||||
end
|
||||
|
||||
self.CallScheduler:Schedule( self, Schedule, {}, self.TimeInterval, self.TimeInterval, 0 )
|
||||
--self.CallScheduler:Schedule( self, Schedule, {}, self.TimeInterval, self.TimeInterval, 0 )
|
||||
Schedule()
|
||||
|
||||
return self
|
||||
end
|
||||
@ -725,7 +749,7 @@ end
|
||||
|
||||
--- SET_GROUP class
|
||||
-- @type SET_GROUP
|
||||
-- @extends #SET_BASE
|
||||
-- @extends Core.Set#SET_BASE
|
||||
SET_GROUP = {
|
||||
ClassName = "SET_GROUP",
|
||||
Filter = {
|
||||
|
||||
@ -212,6 +212,60 @@ function ZONE_BASE:GetVec2()
|
||||
|
||||
return nil
|
||||
end
|
||||
|
||||
--- Returns a @{Point#POINT_VEC2} of the zone.
|
||||
-- @param #ZONE_BASE self
|
||||
-- @param Dcs.DCSTypes#Distance Height The height to add to the land height where the center of the zone is located.
|
||||
-- @return Core.Point#POINT_VEC2 The PointVec2 of the zone.
|
||||
function ZONE_BASE:GetPointVec2()
|
||||
self:F2( self.ZoneName )
|
||||
|
||||
local Vec2 = self:GetVec2()
|
||||
|
||||
local PointVec2 = POINT_VEC2:NewFromVec2( Vec2 )
|
||||
|
||||
self:T2( { PointVec2 } )
|
||||
|
||||
return PointVec2
|
||||
end
|
||||
|
||||
|
||||
--- Returns the @{DCSTypes#Vec3} of the zone.
|
||||
-- @param #ZONE_BASE self
|
||||
-- @param Dcs.DCSTypes#Distance Height The height to add to the land height where the center of the zone is located.
|
||||
-- @return Dcs.DCSTypes#Vec3 The Vec3 of the zone.
|
||||
function ZONE_BASE:GetVec3( Height )
|
||||
self:F2( self.ZoneName )
|
||||
|
||||
Height = Height or 0
|
||||
|
||||
local Vec2 = self:GetVec2()
|
||||
|
||||
local Vec3 = { x = Vec2.x, y = land.getHeight( self:GetVec2() ) + Height, z = Vec2.y }
|
||||
|
||||
self:T2( { Vec3 } )
|
||||
|
||||
return Vec3
|
||||
end
|
||||
|
||||
--- Returns a @{Point#POINT_VEC3} of the zone.
|
||||
-- @param #ZONE_BASE self
|
||||
-- @param Dcs.DCSTypes#Distance Height The height to add to the land height where the center of the zone is located.
|
||||
-- @return Core.Point#POINT_VEC3 The PointVec3 of the zone.
|
||||
function ZONE_BASE:GetPointVec3( Height )
|
||||
self:F2( self.ZoneName )
|
||||
|
||||
local Vec3 = self:GetVec3( Height )
|
||||
|
||||
local PointVec3 = POINT_VEC3:NewFromVec3( Vec3 )
|
||||
|
||||
self:T2( { PointVec3 } )
|
||||
|
||||
return PointVec3
|
||||
end
|
||||
|
||||
|
||||
|
||||
--- Define a random @{DCSTypes#Vec2} within the zone.
|
||||
-- @param #ZONE_BASE self
|
||||
-- @return Dcs.DCSTypes#Vec2 The Vec2 coordinates.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -84,7 +84,7 @@
|
||||
--
|
||||
-- ESCORT initialization methods.
|
||||
-- ==============================
|
||||
-- The following menus are created within the RADIO MENU of an active unit hosted by a player:
|
||||
-- The following menus are created within the RADIO MENU (F10) of an active unit hosted by a player:
|
||||
--
|
||||
-- * @{#ESCORT.MenuFollowAt}: Creates a menu to make the escort follow the client.
|
||||
-- * @{#ESCORT.MenuHoldAtEscortPosition}: Creates a menu to hold the escort at its current position.
|
||||
@ -128,6 +128,7 @@
|
||||
-- @Field Dcs.DCSTypes#AI.Option.Air.val.ROE OptionROE Which ROE is set to the EscortGroup.
|
||||
-- @field Dcs.DCSTypes#AI.Option.Air.val.REACTION_ON_THREAT OptionReactionOnThreat Which REACTION_ON_THREAT is set to the EscortGroup.
|
||||
-- @field Core.Menu#MENU_CLIENT EscortMenuResumeMission
|
||||
-- @field Functional.Detection#DETECTION_BASE Detection
|
||||
ESCORT = {
|
||||
ClassName = "ESCORT",
|
||||
EscortName = nil, -- The Escort Name
|
||||
@ -176,14 +177,22 @@ ESCORT = {
|
||||
-- -- Now use these 2 objects to construct the new EscortPlanes object.
|
||||
-- EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the mission. You are escorted by a plane with code name 'Desert', which can be instructed through the F10 radio menu." )
|
||||
function ESCORT:New( EscortClient, EscortGroup, EscortName, EscortBriefing )
|
||||
local self = BASE:Inherit( self, BASE:New() )
|
||||
|
||||
local self = BASE:Inherit( self, BASE:New() ) -- #ESCORT
|
||||
self:F( { EscortClient, EscortGroup, EscortName } )
|
||||
|
||||
self.EscortClient = EscortClient -- Wrapper.Client#CLIENT
|
||||
self.EscortGroup = EscortGroup -- Wrapper.Group#GROUP
|
||||
self.EscortName = EscortName
|
||||
self.EscortBriefing = EscortBriefing
|
||||
|
||||
|
||||
self.EscortSetGroup = SET_GROUP:New()
|
||||
self.EscortSetGroup:AddObject( self.EscortGroup )
|
||||
self.EscortSetGroup:Flush()
|
||||
self.Detection = DETECTION_UNITS:New( self.EscortSetGroup, 15000 )
|
||||
|
||||
self.EscortGroup.Detection = self.Detection
|
||||
|
||||
-- Set EscortGroup known at EscortClient.
|
||||
if not self.EscortClient._EscortGroups then
|
||||
self.EscortClient._EscortGroups = {}
|
||||
@ -193,7 +202,7 @@ function ESCORT:New( EscortClient, EscortGroup, EscortName, EscortBriefing )
|
||||
self.EscortClient._EscortGroups[EscortGroup:GetName()] = {}
|
||||
self.EscortClient._EscortGroups[EscortGroup:GetName()].EscortGroup = self.EscortGroup
|
||||
self.EscortClient._EscortGroups[EscortGroup:GetName()].EscortName = self.EscortName
|
||||
self.EscortClient._EscortGroups[EscortGroup:GetName()].Targets = {}
|
||||
self.EscortClient._EscortGroups[EscortGroup:GetName()].Detection = self.EscortGroup.Detection
|
||||
end
|
||||
|
||||
self.EscortMenu = MENU_CLIENT:New( self.EscortClient, self.EscortName )
|
||||
@ -218,14 +227,29 @@ function ESCORT:New( EscortClient, EscortGroup, EscortName, EscortBriefing )
|
||||
self.FollowDistance = 100
|
||||
self.CT1 = 0
|
||||
self.GT1 = 0
|
||||
|
||||
self.FollowScheduler, self.FollowSchedule = SCHEDULER:New( self, self._FollowScheduler, {}, 1, .5, .01 )
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
self.EscortMode = ESCORT.MODE.MISSION
|
||||
|
||||
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Set a Detection method for the EscortClient to be reported upon.
|
||||
-- Detection methods are based on the derived classes from DETECTION_BASE.
|
||||
-- @param #ESCORT self
|
||||
-- @param Function.Detection#DETECTION_BASE Detection
|
||||
function ESCORT:SetDetection( Detection )
|
||||
|
||||
self.Detection = Detection
|
||||
self.EscortGroup.Detection = self.Detection
|
||||
self.EscortClient._EscortGroups[self.EscortGroup:GetName()].Detection = self.EscortGroup.Detection
|
||||
|
||||
|
||||
end
|
||||
|
||||
--- This function is for test, it will put on the frequency of the FollowScheduler a red smoke at the direction vector calculated for the escort to fly to.
|
||||
-- This allows to visualize where the escort is flying to.
|
||||
-- @param #ESCORT self
|
||||
@ -283,7 +307,7 @@ function ESCORT:MenuFollowAt( Distance )
|
||||
self.EscortMenuJoinUpAndFollow = {}
|
||||
end
|
||||
|
||||
self.EscortMenuJoinUpAndFollow[#self.EscortMenuJoinUpAndFollow+1] = MENU_CLIENT_COMMAND:New( self.EscortClient, "Join-Up and Follow at " .. Distance, self.EscortMenuReportNavigation, ESCORT._JoinUpAndFollow, { ParamSelf = self, ParamDistance = Distance } )
|
||||
self.EscortMenuJoinUpAndFollow[#self.EscortMenuJoinUpAndFollow+1] = MENU_CLIENT_COMMAND:New( self.EscortClient, "Join-Up and Follow at " .. Distance, self.EscortMenuReportNavigation, ESCORT._JoinUpAndFollow, self, Distance )
|
||||
|
||||
self.EscortMode = ESCORT.MODE.FOLLOW
|
||||
end
|
||||
@ -341,11 +365,10 @@ function ESCORT:MenuHoldAtEscortPosition( Height, Seconds, MenuTextFormat )
|
||||
MenuText,
|
||||
self.EscortMenuHold,
|
||||
ESCORT._HoldPosition,
|
||||
{ ParamSelf = self,
|
||||
ParamOrbitGroup = self.EscortGroup,
|
||||
ParamHeight = Height,
|
||||
ParamSeconds = Seconds
|
||||
}
|
||||
self,
|
||||
self.EscortGroup,
|
||||
Height,
|
||||
Seconds
|
||||
)
|
||||
end
|
||||
|
||||
@ -462,9 +485,8 @@ function ESCORT:MenuScanForTargets( Height, Seconds, MenuTextFormat )
|
||||
MenuText,
|
||||
self.EscortMenuScan,
|
||||
ESCORT._ScanTargets,
|
||||
{ ParamSelf = self,
|
||||
ParamScanDuration = 30
|
||||
}
|
||||
self,
|
||||
30
|
||||
)
|
||||
end
|
||||
|
||||
@ -494,11 +516,11 @@ function ESCORT:MenuFlare( MenuTextFormat )
|
||||
end
|
||||
|
||||
if not self.EscortMenuFlare then
|
||||
self.EscortMenuFlare = MENU_CLIENT:New( self.EscortClient, MenuText, self.EscortMenuReportNavigation, ESCORT._Flare, { ParamSelf = self } )
|
||||
self.EscortMenuFlareGreen = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release green flare", self.EscortMenuFlare, ESCORT._Flare, { ParamSelf = self, ParamColor = FLARECOLOR.Green, ParamMessage = "Released a green flare!" } )
|
||||
self.EscortMenuFlareRed = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release red flare", self.EscortMenuFlare, ESCORT._Flare, { ParamSelf = self, ParamColor = FLARECOLOR.Red, ParamMessage = "Released a red flare!" } )
|
||||
self.EscortMenuFlareWhite = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release white flare", self.EscortMenuFlare, ESCORT._Flare, { ParamSelf = self, ParamColor = FLARECOLOR.White, ParamMessage = "Released a white flare!" } )
|
||||
self.EscortMenuFlareYellow = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release yellow flare", self.EscortMenuFlare, ESCORT._Flare, { ParamSelf = self, ParamColor = FLARECOLOR.Yellow, ParamMessage = "Released a yellow flare!" } )
|
||||
self.EscortMenuFlare = MENU_CLIENT:New( self.EscortClient, MenuText, self.EscortMenuReportNavigation, ESCORT._Flare, self )
|
||||
self.EscortMenuFlareGreen = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release green flare", self.EscortMenuFlare, ESCORT._Flare, self, FLARECOLOR.Green, "Released a green flare!" )
|
||||
self.EscortMenuFlareRed = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release red flare", self.EscortMenuFlare, ESCORT._Flare, self, FLARECOLOR.Red, "Released a red flare!" )
|
||||
self.EscortMenuFlareWhite = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release white flare", self.EscortMenuFlare, ESCORT._Flare, self, FLARECOLOR.White, "Released a white flare!" )
|
||||
self.EscortMenuFlareYellow = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release yellow flare", self.EscortMenuFlare, ESCORT._Flare, self, FLARECOLOR.Yellow, "Released a yellow flare!" )
|
||||
end
|
||||
|
||||
return self
|
||||
@ -527,12 +549,12 @@ function ESCORT:MenuSmoke( MenuTextFormat )
|
||||
end
|
||||
|
||||
if not self.EscortMenuSmoke then
|
||||
self.EscortMenuSmoke = MENU_CLIENT:New( self.EscortClient, "Smoke", self.EscortMenuReportNavigation, ESCORT._Smoke, { ParamSelf = self } )
|
||||
self.EscortMenuSmokeGreen = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release green smoke", self.EscortMenuSmoke, ESCORT._Smoke, { ParamSelf = self, ParamColor = UNIT.SmokeColor.Green, ParamMessage = "Releasing green smoke!" } )
|
||||
self.EscortMenuSmokeRed = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release red smoke", self.EscortMenuSmoke, ESCORT._Smoke, { ParamSelf = self, ParamColor = UNIT.SmokeColor.Red, ParamMessage = "Releasing red smoke!" } )
|
||||
self.EscortMenuSmokeWhite = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release white smoke", self.EscortMenuSmoke, ESCORT._Smoke, { ParamSelf = self, ParamColor = UNIT.SmokeColor.White, ParamMessage = "Releasing white smoke!" } )
|
||||
self.EscortMenuSmokeOrange = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release orange smoke", self.EscortMenuSmoke, ESCORT._Smoke, { ParamSelf = self, ParamColor = UNIT.SmokeColor.Orange, ParamMessage = "Releasing orange smoke!" } )
|
||||
self.EscortMenuSmokeBlue = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release blue smoke", self.EscortMenuSmoke, ESCORT._Smoke, { ParamSelf = self, ParamColor = UNIT.SmokeColor.Blue, ParamMessage = "Releasing blue smoke!" } )
|
||||
self.EscortMenuSmoke = MENU_CLIENT:New( self.EscortClient, "Smoke", self.EscortMenuReportNavigation, ESCORT._Smoke, self )
|
||||
self.EscortMenuSmokeGreen = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release green smoke", self.EscortMenuSmoke, ESCORT._Smoke, self, SMOKECOLOR.Green, "Releasing green smoke!" )
|
||||
self.EscortMenuSmokeRed = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release red smoke", self.EscortMenuSmoke, ESCORT._Smoke, self, SMOKECOLOR.Red, "Releasing red smoke!" )
|
||||
self.EscortMenuSmokeWhite = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release white smoke", self.EscortMenuSmoke, ESCORT._Smoke, self, SMOKECOLOR.White, "Releasing white smoke!" )
|
||||
self.EscortMenuSmokeOrange = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release orange smoke", self.EscortMenuSmoke, ESCORT._Smoke, self, SMOKECOLOR.Orange, "Releasing orange smoke!" )
|
||||
self.EscortMenuSmokeBlue = MENU_CLIENT_COMMAND:New( self.EscortClient, "Release blue smoke", self.EscortMenuSmoke, ESCORT._Smoke, self, SMOKECOLOR.Blue, "Releasing blue smoke!" )
|
||||
end
|
||||
end
|
||||
|
||||
@ -557,9 +579,9 @@ function ESCORT:MenuReportTargets( Seconds )
|
||||
end
|
||||
|
||||
-- Report Targets
|
||||
self.EscortMenuReportNearbyTargetsNow = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets now!", self.EscortMenuReportNearbyTargets, ESCORT._ReportNearbyTargetsNow, { ParamSelf = self } )
|
||||
self.EscortMenuReportNearbyTargetsOn = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets on", self.EscortMenuReportNearbyTargets, ESCORT._SwitchReportNearbyTargets, { ParamSelf = self, ParamReportTargets = true } )
|
||||
self.EscortMenuReportNearbyTargetsOff = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets off", self.EscortMenuReportNearbyTargets, ESCORT._SwitchReportNearbyTargets, { ParamSelf = self, ParamReportTargets = false, } )
|
||||
self.EscortMenuReportNearbyTargetsNow = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets now!", self.EscortMenuReportNearbyTargets, ESCORT._ReportNearbyTargetsNow, self )
|
||||
self.EscortMenuReportNearbyTargetsOn = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets on", self.EscortMenuReportNearbyTargets, ESCORT._SwitchReportNearbyTargets, self, true )
|
||||
self.EscortMenuReportNearbyTargetsOff = MENU_CLIENT_COMMAND:New( self.EscortClient, "Report targets off", self.EscortMenuReportNearbyTargets, ESCORT._SwitchReportNearbyTargets, self, false )
|
||||
|
||||
-- Attack Targets
|
||||
self.EscortMenuAttackNearbyTargets = MENU_CLIENT:New( self.EscortClient, "Attack targets", self.EscortMenu )
|
||||
@ -596,16 +618,16 @@ function ESCORT:MenuROE( MenuTextFormat )
|
||||
-- Rules of Engagement
|
||||
self.EscortMenuROE = MENU_CLIENT:New( self.EscortClient, "ROE", self.EscortMenu )
|
||||
if self.EscortGroup:OptionROEHoldFirePossible() then
|
||||
self.EscortMenuROEHoldFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Hold Fire", self.EscortMenuROE, ESCORT._ROE, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROEHoldFire(), ParamMessage = "Holding weapons!" } )
|
||||
self.EscortMenuROEHoldFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Hold Fire", self.EscortMenuROE, ESCORT._ROE, self, self.EscortGroup:OptionROEHoldFire(), "Holding weapons!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROEReturnFirePossible() then
|
||||
self.EscortMenuROEReturnFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Return Fire", self.EscortMenuROE, ESCORT._ROE, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROEReturnFire(), ParamMessage = "Returning fire!" } )
|
||||
self.EscortMenuROEReturnFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Return Fire", self.EscortMenuROE, ESCORT._ROE, self, self.EscortGroup:OptionROEReturnFire(), "Returning fire!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROEOpenFirePossible() then
|
||||
self.EscortMenuROEOpenFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Open Fire", self.EscortMenuROE, ESCORT._ROE, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROEOpenFire(), ParamMessage = "Opening fire on designated targets!!" } )
|
||||
self.EscortMenuROEOpenFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Open Fire", self.EscortMenuROE, ESCORT._ROE, self, self.EscortGroup:OptionROEOpenFire(), "Opening fire on designated targets!!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROEWeaponFreePossible() then
|
||||
self.EscortMenuROEWeaponFree = MENU_CLIENT_COMMAND:New( self.EscortClient, "Weapon Free", self.EscortMenuROE, ESCORT._ROE, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROEWeaponFree(), ParamMessage = "Opening fire on targets of opportunity!" } )
|
||||
self.EscortMenuROEWeaponFree = MENU_CLIENT_COMMAND:New( self.EscortClient, "Weapon Free", self.EscortMenuROE, ESCORT._ROE, self, self.EscortGroup:OptionROEWeaponFree(), "Opening fire on targets of opportunity!" )
|
||||
end
|
||||
end
|
||||
|
||||
@ -625,16 +647,16 @@ function ESCORT:MenuEvasion( MenuTextFormat )
|
||||
-- Reaction to Threats
|
||||
self.EscortMenuEvasion = MENU_CLIENT:New( self.EscortClient, "Evasion", self.EscortMenu )
|
||||
if self.EscortGroup:OptionROTNoReactionPossible() then
|
||||
self.EscortMenuEvasionNoReaction = MENU_CLIENT_COMMAND:New( self.EscortClient, "Fight until death", self.EscortMenuEvasion, ESCORT._ROT, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROTNoReaction(), ParamMessage = "Fighting until death!" } )
|
||||
self.EscortMenuEvasionNoReaction = MENU_CLIENT_COMMAND:New( self.EscortClient, "Fight until death", self.EscortMenuEvasion, ESCORT._ROT, self, self.EscortGroup:OptionROTNoReaction(), "Fighting until death!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROTPassiveDefensePossible() then
|
||||
self.EscortMenuEvasionPassiveDefense = MENU_CLIENT_COMMAND:New( self.EscortClient, "Use flares, chaff and jammers", self.EscortMenuEvasion, ESCORT._ROT, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROTPassiveDefense(), ParamMessage = "Defending using jammers, chaff and flares!" } )
|
||||
self.EscortMenuEvasionPassiveDefense = MENU_CLIENT_COMMAND:New( self.EscortClient, "Use flares, chaff and jammers", self.EscortMenuEvasion, ESCORT._ROT, self, self.EscortGroup:OptionROTPassiveDefense(), "Defending using jammers, chaff and flares!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROTEvadeFirePossible() then
|
||||
self.EscortMenuEvasionEvadeFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Evade enemy fire", self.EscortMenuEvasion, ESCORT._ROT, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROTEvadeFire(), ParamMessage = "Evading on enemy fire!" } )
|
||||
self.EscortMenuEvasionEvadeFire = MENU_CLIENT_COMMAND:New( self.EscortClient, "Evade enemy fire", self.EscortMenuEvasion, ESCORT._ROT, self, self.EscortGroup:OptionROTEvadeFire(), "Evading on enemy fire!" )
|
||||
end
|
||||
if self.EscortGroup:OptionROTVerticalPossible() then
|
||||
self.EscortMenuOptionEvasionVertical = MENU_CLIENT_COMMAND:New( self.EscortClient, "Go below radar and evade fire", self.EscortMenuEvasion, ESCORT._ROT, { ParamSelf = self, ParamFunction = self.EscortGroup:OptionROTVertical(), ParamMessage = "Evading on enemy fire with vertical manoeuvres!" } )
|
||||
self.EscortMenuOptionEvasionVertical = MENU_CLIENT_COMMAND:New( self.EscortClient, "Go below radar and evade fire", self.EscortMenuEvasion, ESCORT._ROT, self, self.EscortGroup:OptionROTVertical(), "Evading on enemy fire with vertical manoeuvres!" )
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -659,16 +681,12 @@ end
|
||||
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._HoldPosition( MenuParam )
|
||||
function ESCORT:_HoldPosition( OrbitGroup, OrbitHeight, OrbitSeconds )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local OrbitGroup = MenuParam.ParamOrbitGroup -- Wrapper.Group#GROUP
|
||||
local OrbitUnit = OrbitGroup:GetUnit(1) -- Wrapper.Unit#UNIT
|
||||
local OrbitHeight = MenuParam.ParamHeight
|
||||
local OrbitSeconds = MenuParam.ParamSeconds -- Not implemented yet
|
||||
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
@ -703,13 +721,12 @@ function ESCORT._HoldPosition( MenuParam )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._JoinUpAndFollow( MenuParam )
|
||||
function ESCORT:_JoinUpAndFollow( Distance )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
self.Distance = MenuParam.ParamDistance
|
||||
self.Distance = Distance
|
||||
|
||||
self:JoinUpAndFollow( EscortGroup, EscortClient, self.Distance )
|
||||
end
|
||||
@ -737,38 +754,29 @@ function ESCORT:JoinUpAndFollow( EscortGroup, EscortClient, Distance )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._Flare( MenuParam )
|
||||
function ESCORT:_Flare( Color, Message )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local Color = MenuParam.ParamColor
|
||||
local Message = MenuParam.ParamMessage
|
||||
|
||||
EscortGroup:GetUnit(1):Flare( Color )
|
||||
EscortGroup:MessageToClient( Message, 10, EscortClient )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._Smoke( MenuParam )
|
||||
function ESCORT:_Smoke( Color, Message )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local Color = MenuParam.ParamColor
|
||||
local Message = MenuParam.ParamMessage
|
||||
|
||||
EscortGroup:GetUnit(1):Smoke( Color )
|
||||
EscortGroup:MessageToClient( Message, 10, EscortClient )
|
||||
end
|
||||
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._ReportNearbyTargetsNow( MenuParam )
|
||||
function ESCORT:_ReportNearbyTargetsNow()
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
@ -776,13 +784,12 @@ function ESCORT._ReportNearbyTargetsNow( MenuParam )
|
||||
|
||||
end
|
||||
|
||||
function ESCORT._SwitchReportNearbyTargets( MenuParam )
|
||||
function ESCORT:_SwitchReportNearbyTargets( ReportTargets )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
self.ReportTargets = MenuParam.ParamReportTargets
|
||||
self.ReportTargets = ReportTargets
|
||||
|
||||
if self.ReportTargets then
|
||||
if not self.ReportTargetsScheduler then
|
||||
@ -795,34 +802,25 @@ function ESCORT._SwitchReportNearbyTargets( MenuParam )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._ScanTargets( MenuParam )
|
||||
function ESCORT:_ScanTargets( ScanDuration )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortGroup = self.EscortGroup -- Wrapper.Group#GROUP
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local ScanDuration = MenuParam.ParamScanDuration
|
||||
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
if EscortGroup:IsHelicopter() then
|
||||
SCHEDULER:New( EscortGroup, EscortGroup.PushTask,
|
||||
{ EscortGroup:TaskControlled(
|
||||
EscortGroup:TaskOrbitCircle( 200, 20 ),
|
||||
EscortGroup:TaskCondition( nil, nil, nil, nil, ScanDuration, nil )
|
||||
)
|
||||
},
|
||||
1
|
||||
)
|
||||
EscortGroup:PushTask(
|
||||
EscortGroup:TaskControlled(
|
||||
EscortGroup:TaskOrbitCircle( 200, 20 ),
|
||||
EscortGroup:TaskCondition( nil, nil, nil, nil, ScanDuration, nil )
|
||||
), 1 )
|
||||
elseif EscortGroup:IsAirPlane() then
|
||||
SCHEDULER:New( EscortGroup, EscortGroup.PushTask,
|
||||
{ EscortGroup:TaskControlled(
|
||||
EscortGroup:TaskOrbitCircle( 1000, 500 ),
|
||||
EscortGroup:TaskCondition( nil, nil, nil, nil, ScanDuration, nil )
|
||||
)
|
||||
},
|
||||
1
|
||||
)
|
||||
EscortGroup:PushTask(
|
||||
EscortGroup:TaskControlled(
|
||||
EscortGroup:TaskOrbitCircle( 1000, 500 ),
|
||||
EscortGroup:TaskCondition( nil, nil, nil, nil, ScanDuration, nil )
|
||||
), 1 )
|
||||
end
|
||||
|
||||
EscortGroup:MessageToClient( "Scanning targets for " .. ScanDuration .. " seconds.", ScanDuration, EscortClient )
|
||||
@ -845,123 +843,156 @@ function _Resume( EscortGroup )
|
||||
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._AttackTarget( MenuParam )
|
||||
--- @param #ESCORT self
|
||||
-- @param #number DetectedItemID
|
||||
function ESCORT:_AttackTarget( DetectedItemID )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortGroup = self.EscortGroup -- Wrapper.Group#GROUP
|
||||
self:E( EscortGroup )
|
||||
|
||||
local EscortClient = self.EscortClient
|
||||
local AttackUnit = MenuParam.ParamUnit -- Wrapper.Unit#UNIT
|
||||
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
self:T( AttackUnit )
|
||||
|
||||
if EscortGroup:IsAir() then
|
||||
EscortGroup:OptionROEOpenFire()
|
||||
EscortGroup:OptionROTPassiveDefense()
|
||||
EscortGroup:SetState( EscortGroup, "Escort", self )
|
||||
SCHEDULER:New( EscortGroup,
|
||||
EscortGroup.PushTask,
|
||||
{ EscortGroup:TaskCombo(
|
||||
{ EscortGroup:TaskAttackUnit( AttackUnit ),
|
||||
EscortGroup:TaskFunction( 1, 2, "_Resume", { "''" } )
|
||||
}
|
||||
)
|
||||
}, 10
|
||||
|
||||
local DetectedSet = self.Detection:GetDetectedSet( DetectedItemID )
|
||||
|
||||
local Tasks = {}
|
||||
|
||||
DetectedSet:ForEachUnit(
|
||||
--- @param Wrapper.Unit#UNIT DetectedUnit
|
||||
function( DetectedUnit, Tasks )
|
||||
if DetectedUnit:IsAlive() then
|
||||
Tasks[#Tasks+1] = EscortGroup:TaskAttackUnit( DetectedUnit )
|
||||
end
|
||||
end, Tasks
|
||||
)
|
||||
|
||||
Tasks[#Tasks+1] = EscortGroup:TaskFunction( 1, 2, "_Resume", { "''" } )
|
||||
|
||||
EscortGroup:SetTask(
|
||||
EscortGroup:TaskCombo(
|
||||
Tasks
|
||||
), 1
|
||||
)
|
||||
|
||||
else
|
||||
SCHEDULER:New( EscortGroup,
|
||||
EscortGroup.PushTask,
|
||||
{ EscortGroup:TaskCombo(
|
||||
{ EscortGroup:TaskFireAtPoint( AttackUnit:GetVec2(), 50 )
|
||||
}
|
||||
)
|
||||
}, 10
|
||||
|
||||
local DetectedSet = self.Detection:GetDetectedSet( DetectedItemID )
|
||||
|
||||
local Tasks = {}
|
||||
|
||||
DetectedSet:ForEachUnit(
|
||||
--- @param Wrapper.Unit#UNIT DetectedUnit
|
||||
function( DetectedUnit, Tasks )
|
||||
if DetectedUnit:IsAlive() then
|
||||
Tasks[#Tasks+1] = EscortGroup:TaskFireAtPoint( DetectedUnit:GetVec2(), 50 )
|
||||
end
|
||||
end, Tasks
|
||||
)
|
||||
|
||||
EscortGroup:SetTask(
|
||||
EscortGroup:TaskCombo(
|
||||
Tasks
|
||||
), 1
|
||||
)
|
||||
|
||||
end
|
||||
|
||||
EscortGroup:MessageToClient( "Engaging Designated Unit!", 10, EscortClient )
|
||||
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._AssistTarget( MenuParam )
|
||||
---
|
||||
-- @param #number DetectedItemID
|
||||
function ESCORT:_AssistTarget( EscortGroupAttack, DetectedItemID )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
local EscortGroupAttack = MenuParam.ParamEscortGroup
|
||||
local AttackUnit = MenuParam.ParamUnit -- Wrapper.Unit#UNIT
|
||||
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
self:T( AttackUnit )
|
||||
|
||||
if EscortGroupAttack:IsAir() then
|
||||
EscortGroupAttack:OptionROEOpenFire()
|
||||
EscortGroupAttack:OptionROTVertical()
|
||||
SCHDULER:New( EscortGroupAttack,
|
||||
EscortGroupAttack.PushTask,
|
||||
{ EscortGroupAttack:TaskCombo(
|
||||
{ EscortGroupAttack:TaskAttackUnit( AttackUnit ),
|
||||
EscortGroupAttack:TaskOrbitCircle( 500, 350 )
|
||||
}
|
||||
)
|
||||
}, 10
|
||||
|
||||
local DetectedSet = self.Detection:GetDetectedSet( DetectedItemID )
|
||||
|
||||
local Tasks = {}
|
||||
|
||||
DetectedSet:ForEachUnit(
|
||||
--- @param Wrapper.Unit#UNIT DetectedUnit
|
||||
function( DetectedUnit, Tasks )
|
||||
if DetectedUnit:IsAlive() then
|
||||
Tasks[#Tasks+1] = EscortGroupAttack:TaskAttackUnit( DetectedUnit )
|
||||
end
|
||||
end, Tasks
|
||||
)
|
||||
|
||||
Tasks[#Tasks+1] = EscortGroupAttack:TaskOrbitCircle( 500, 350 )
|
||||
|
||||
EscortGroupAttack:SetTask(
|
||||
EscortGroupAttack:TaskCombo(
|
||||
Tasks
|
||||
), 1
|
||||
)
|
||||
|
||||
else
|
||||
SCHEDULER:New( EscortGroupAttack,
|
||||
EscortGroupAttack.PushTask,
|
||||
{ EscortGroupAttack:TaskCombo(
|
||||
{ EscortGroupAttack:TaskFireAtPoint( AttackUnit:GetVec2(), 50 )
|
||||
}
|
||||
)
|
||||
}, 10
|
||||
local DetectedSet = self.Detection:GetDetectedSet( DetectedItemID )
|
||||
|
||||
local Tasks = {}
|
||||
|
||||
DetectedSet:ForEachUnit(
|
||||
--- @param Wrapper.Unit#UNIT DetectedUnit
|
||||
function( DetectedUnit, Tasks )
|
||||
if DetectedUnit:IsAlive() then
|
||||
Tasks[#Tasks+1] = EscortGroupAttack:TaskFireAtPoint( DetectedUnit:GetVec2(), 50 )
|
||||
end
|
||||
end, Tasks
|
||||
)
|
||||
|
||||
EscortGroupAttack:SetTask(
|
||||
EscortGroupAttack:TaskCombo(
|
||||
Tasks
|
||||
), 1
|
||||
)
|
||||
|
||||
end
|
||||
|
||||
EscortGroupAttack:MessageToClient( "Assisting with the destroying the enemy unit!", 10, EscortClient )
|
||||
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._ROE( MenuParam )
|
||||
function ESCORT:_ROE( EscortROEFunction, EscortROEMessage )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local EscortROEFunction = MenuParam.ParamFunction
|
||||
local EscortROEMessage = MenuParam.ParamMessage
|
||||
|
||||
pcall( function() EscortROEFunction() end )
|
||||
EscortGroup:MessageToClient( EscortROEMessage, 10, EscortClient )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._ROT( MenuParam )
|
||||
function ESCORT:_ROT( EscortROTFunction, EscortROTMessage )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local EscortROTFunction = MenuParam.ParamFunction
|
||||
local EscortROTMessage = MenuParam.ParamMessage
|
||||
|
||||
pcall( function() EscortROTFunction() end )
|
||||
EscortGroup:MessageToClient( EscortROTMessage, 10, EscortClient )
|
||||
end
|
||||
|
||||
--- @param #MENUPARAM MenuParam
|
||||
function ESCORT._ResumeMission( MenuParam )
|
||||
function ESCORT:_ResumeMission( WayPoint )
|
||||
|
||||
local self = MenuParam.ParamSelf
|
||||
local EscortGroup = self.EscortGroup
|
||||
local EscortClient = self.EscortClient
|
||||
|
||||
local WayPoint = MenuParam.ParamWayPoint
|
||||
|
||||
self.FollowScheduler:Stop( self.FollowSchedule )
|
||||
|
||||
local WayPoints = EscortGroup:GetTaskRoute()
|
||||
@ -1106,176 +1137,244 @@ function ESCORT:_ReportTargetsScheduler()
|
||||
self:F( self.EscortGroup:GetName() )
|
||||
|
||||
if self.EscortGroup:IsAlive() and self.EscortClient:IsAlive() then
|
||||
local EscortGroupName = self.EscortGroup:GetName()
|
||||
local EscortTargets = self.EscortGroup:GetDetectedTargets()
|
||||
|
||||
local ClientEscortTargets = self.EscortClient._EscortGroups[EscortGroupName].Targets
|
||||
if true then
|
||||
|
||||
local EscortTargetMessages = ""
|
||||
for EscortTargetID, EscortTarget in pairs( EscortTargets ) do
|
||||
local EscortObject = EscortTarget.object
|
||||
self:T( EscortObject )
|
||||
if EscortObject and EscortObject:isExist() and EscortObject.id_ < 50000000 then
|
||||
local EscortGroupName = self.EscortGroup:GetName()
|
||||
|
||||
self.EscortMenuAttackNearbyTargets:RemoveSubMenus()
|
||||
|
||||
local EscortTargetUnit = UNIT:Find( EscortObject )
|
||||
local EscortTargetUnitName = EscortTargetUnit:GetName()
|
||||
|
||||
|
||||
|
||||
-- local EscortTargetIsDetected,
|
||||
-- EscortTargetIsVisible,
|
||||
-- EscortTargetLastTime,
|
||||
-- EscortTargetKnowType,
|
||||
-- EscortTargetKnowDistance,
|
||||
-- EscortTargetLastPos,
|
||||
-- EscortTargetLastVelocity
|
||||
-- = self.EscortGroup:IsTargetDetected( EscortObject )
|
||||
--
|
||||
-- self:T( { EscortTargetIsDetected,
|
||||
-- EscortTargetIsVisible,
|
||||
-- EscortTargetLastTime,
|
||||
-- EscortTargetKnowType,
|
||||
-- EscortTargetKnowDistance,
|
||||
-- EscortTargetLastPos,
|
||||
-- EscortTargetLastVelocity } )
|
||||
|
||||
|
||||
local EscortTargetUnitVec3 = EscortTargetUnit:GetVec3()
|
||||
local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
local Distance = ( ( EscortTargetUnitVec3.x - EscortVec3.x )^2 +
|
||||
( EscortTargetUnitVec3.y - EscortVec3.y )^2 +
|
||||
( EscortTargetUnitVec3.z - EscortVec3.z )^2
|
||||
) ^ 0.5 / 1000
|
||||
|
||||
self:T( { self.EscortGroup:GetName(), EscortTargetUnit:GetName(), Distance, EscortTarget } )
|
||||
|
||||
if Distance <= 15 then
|
||||
|
||||
if not ClientEscortTargets[EscortTargetUnitName] then
|
||||
ClientEscortTargets[EscortTargetUnitName] = {}
|
||||
end
|
||||
ClientEscortTargets[EscortTargetUnitName].AttackUnit = EscortTargetUnit
|
||||
ClientEscortTargets[EscortTargetUnitName].visible = EscortTarget.visible
|
||||
ClientEscortTargets[EscortTargetUnitName].type = EscortTarget.type
|
||||
ClientEscortTargets[EscortTargetUnitName].distance = EscortTarget.distance
|
||||
else
|
||||
if ClientEscortTargets[EscortTargetUnitName] then
|
||||
ClientEscortTargets[EscortTargetUnitName] = nil
|
||||
end
|
||||
end
|
||||
if self.EscortMenuTargetAssistance then
|
||||
self.EscortMenuTargetAssistance:RemoveSubMenus()
|
||||
end
|
||||
end
|
||||
|
||||
self:T( { "Sorting Targets Table:", ClientEscortTargets } )
|
||||
table.sort( ClientEscortTargets, function( a, b ) return a.Distance < b.Distance end )
|
||||
self:T( { "Sorted Targets Table:", ClientEscortTargets } )
|
||||
local DetectedItems = self.Detection:GetDetectedItems()
|
||||
self:E( DetectedItems )
|
||||
|
||||
-- Remove the sub menus of the Attack menu of the Escort for the EscortGroup.
|
||||
self.EscortMenuAttackNearbyTargets:RemoveSubMenus()
|
||||
local DetectedTargets = false
|
||||
|
||||
local DetectedMsgs = {}
|
||||
|
||||
for ClientEscortGroupName, EscortGroupData in pairs( self.EscortClient._EscortGroups ) do
|
||||
|
||||
if self.EscortMenuTargetAssistance then
|
||||
self.EscortMenuTargetAssistance:RemoveSubMenus()
|
||||
end
|
||||
local ClientEscortTargets = EscortGroupData.Detection
|
||||
|
||||
--for MenuIndex = 1, #self.EscortMenuAttackTargets do
|
||||
-- self:T( { "Remove Menu:", self.EscortMenuAttackTargets[MenuIndex] } )
|
||||
-- self.EscortMenuAttackTargets[MenuIndex] = self.EscortMenuAttackTargets[MenuIndex]:Remove()
|
||||
--end
|
||||
for DetectedItemID, DetectedItem in ipairs( DetectedItems ) do
|
||||
self:E( { DetectedItemID, DetectedItem } )
|
||||
-- Remove the sub menus of the Attack menu of the Escort for the EscortGroup.
|
||||
|
||||
local DetectedItemReportSummary = self.Detection:DetectedItemReportSummary( DetectedItemID )
|
||||
|
||||
|
||||
if ClientEscortTargets then
|
||||
for ClientEscortTargetUnitName, ClientEscortTargetData in pairs( ClientEscortTargets ) do
|
||||
|
||||
for ClientEscortGroupName, EscortGroupData in pairs( self.EscortClient._EscortGroups ) do
|
||||
|
||||
if ClientEscortTargetData and ClientEscortTargetData.AttackUnit:IsAlive() then
|
||||
|
||||
local EscortTargetMessage = ""
|
||||
local EscortTargetCategoryName = ClientEscortTargetData.AttackUnit:GetCategoryName()
|
||||
local EscortTargetCategoryType = ClientEscortTargetData.AttackUnit:GetTypeName()
|
||||
if ClientEscortTargetData.type then
|
||||
EscortTargetMessage = EscortTargetMessage .. EscortTargetCategoryName .. " (" .. EscortTargetCategoryType .. ") at "
|
||||
else
|
||||
EscortTargetMessage = EscortTargetMessage .. "Unknown target at "
|
||||
end
|
||||
|
||||
local EscortTargetUnitVec3 = ClientEscortTargetData.AttackUnit:GetVec3()
|
||||
local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
local Distance = ( ( EscortTargetUnitVec3.x - EscortVec3.x )^2 +
|
||||
( EscortTargetUnitVec3.y - EscortVec3.y )^2 +
|
||||
( EscortTargetUnitVec3.z - EscortVec3.z )^2
|
||||
) ^ 0.5 / 1000
|
||||
|
||||
self:T( { self.EscortGroup:GetName(), ClientEscortTargetData.AttackUnit:GetName(), Distance, ClientEscortTargetData.AttackUnit } )
|
||||
if ClientEscortTargetData.visible == false then
|
||||
EscortTargetMessage = EscortTargetMessage .. string.format( "%.2f", Distance ) .. " estimated km"
|
||||
else
|
||||
EscortTargetMessage = EscortTargetMessage .. string.format( "%.2f", Distance ) .. " km"
|
||||
end
|
||||
|
||||
if ClientEscortTargetData.visible then
|
||||
EscortTargetMessage = EscortTargetMessage .. ", visual"
|
||||
end
|
||||
|
||||
if ClientEscortGroupName == EscortGroupName then
|
||||
|
||||
MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
EscortTargetMessage,
|
||||
self.EscortMenuAttackNearbyTargets,
|
||||
ESCORT._AttackTarget,
|
||||
{ ParamSelf = self,
|
||||
ParamUnit = ClientEscortTargetData.AttackUnit
|
||||
}
|
||||
)
|
||||
EscortTargetMessages = EscortTargetMessages .. "\n - " .. EscortTargetMessage
|
||||
else
|
||||
if self.EscortMenuTargetAssistance then
|
||||
local MenuTargetAssistance = MENU_CLIENT:New( self.EscortClient, EscortGroupData.EscortName, self.EscortMenuTargetAssistance )
|
||||
MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
EscortTargetMessage,
|
||||
MenuTargetAssistance,
|
||||
ESCORT._AssistTarget,
|
||||
{ ParamSelf = self,
|
||||
ParamEscortGroup = EscortGroupData.EscortGroup,
|
||||
ParamUnit = ClientEscortTargetData.AttackUnit
|
||||
}
|
||||
)
|
||||
end
|
||||
end
|
||||
if ClientEscortGroupName == EscortGroupName then
|
||||
|
||||
DetectedMsgs[#DetectedMsgs+1] = DetectedItemReportSummary
|
||||
|
||||
MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
DetectedItemReportSummary,
|
||||
self.EscortMenuAttackNearbyTargets,
|
||||
ESCORT._AttackTarget,
|
||||
self,
|
||||
DetectedItemID
|
||||
)
|
||||
else
|
||||
ClientEscortTargetData = nil
|
||||
if self.EscortMenuTargetAssistance then
|
||||
|
||||
self:T( DetectedItemReportSummary )
|
||||
local MenuTargetAssistance = MENU_CLIENT:New( self.EscortClient, EscortGroupData.EscortName, self.EscortMenuTargetAssistance )
|
||||
MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
DetectedItemReportSummary,
|
||||
MenuTargetAssistance,
|
||||
ESCORT._AssistTarget,
|
||||
self,
|
||||
EscortGroupData.EscortGroup,
|
||||
DetectedItemID
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
DetectedTargets = true
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
if EscortTargetMessages ~= "" and self.ReportTargets == true then
|
||||
self.EscortGroup:MessageToClient( "Detected targets within 15 km range:" .. EscortTargetMessages:gsub("\n$",""), 20, self.EscortClient )
|
||||
self:E( DetectedMsgs )
|
||||
if DetectedTargets then
|
||||
self.EscortGroup:MessageToClient( "Detected targets:\n" .. table.concat( DetectedMsgs, "\n" ), 20, self.EscortClient )
|
||||
else
|
||||
self.EscortGroup:MessageToClient( "No targets detected!", 20, self.EscortClient )
|
||||
self.EscortGroup:MessageToClient( "No targets detected.", 10, self.EscortClient )
|
||||
end
|
||||
|
||||
return true
|
||||
else
|
||||
-- local EscortGroupName = self.EscortGroup:GetName()
|
||||
-- local EscortTargets = self.EscortGroup:GetDetectedTargets()
|
||||
--
|
||||
-- local ClientEscortTargets = self.EscortClient._EscortGroups[EscortGroupName].Targets
|
||||
--
|
||||
-- local EscortTargetMessages = ""
|
||||
-- for EscortTargetID, EscortTarget in pairs( EscortTargets ) do
|
||||
-- local EscortObject = EscortTarget.object
|
||||
-- self:T( EscortObject )
|
||||
-- if EscortObject and EscortObject:isExist() and EscortObject.id_ < 50000000 then
|
||||
--
|
||||
-- local EscortTargetUnit = UNIT:Find( EscortObject )
|
||||
-- local EscortTargetUnitName = EscortTargetUnit:GetName()
|
||||
--
|
||||
--
|
||||
--
|
||||
-- -- local EscortTargetIsDetected,
|
||||
-- -- EscortTargetIsVisible,
|
||||
-- -- EscortTargetLastTime,
|
||||
-- -- EscortTargetKnowType,
|
||||
-- -- EscortTargetKnowDistance,
|
||||
-- -- EscortTargetLastPos,
|
||||
-- -- EscortTargetLastVelocity
|
||||
-- -- = self.EscortGroup:IsTargetDetected( EscortObject )
|
||||
-- --
|
||||
-- -- self:T( { EscortTargetIsDetected,
|
||||
-- -- EscortTargetIsVisible,
|
||||
-- -- EscortTargetLastTime,
|
||||
-- -- EscortTargetKnowType,
|
||||
-- -- EscortTargetKnowDistance,
|
||||
-- -- EscortTargetLastPos,
|
||||
-- -- EscortTargetLastVelocity } )
|
||||
--
|
||||
--
|
||||
-- local EscortTargetUnitVec3 = EscortTargetUnit:GetVec3()
|
||||
-- local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
-- local Distance = ( ( EscortTargetUnitVec3.x - EscortVec3.x )^2 +
|
||||
-- ( EscortTargetUnitVec3.y - EscortVec3.y )^2 +
|
||||
-- ( EscortTargetUnitVec3.z - EscortVec3.z )^2
|
||||
-- ) ^ 0.5 / 1000
|
||||
--
|
||||
-- self:T( { self.EscortGroup:GetName(), EscortTargetUnit:GetName(), Distance, EscortTarget } )
|
||||
--
|
||||
-- if Distance <= 15 then
|
||||
--
|
||||
-- if not ClientEscortTargets[EscortTargetUnitName] then
|
||||
-- ClientEscortTargets[EscortTargetUnitName] = {}
|
||||
-- end
|
||||
-- ClientEscortTargets[EscortTargetUnitName].AttackUnit = EscortTargetUnit
|
||||
-- ClientEscortTargets[EscortTargetUnitName].visible = EscortTarget.visible
|
||||
-- ClientEscortTargets[EscortTargetUnitName].type = EscortTarget.type
|
||||
-- ClientEscortTargets[EscortTargetUnitName].distance = EscortTarget.distance
|
||||
-- else
|
||||
-- if ClientEscortTargets[EscortTargetUnitName] then
|
||||
-- ClientEscortTargets[EscortTargetUnitName] = nil
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
--
|
||||
-- self:T( { "Sorting Targets Table:", ClientEscortTargets } )
|
||||
-- table.sort( ClientEscortTargets, function( a, b ) return a.Distance < b.Distance end )
|
||||
-- self:T( { "Sorted Targets Table:", ClientEscortTargets } )
|
||||
--
|
||||
-- -- Remove the sub menus of the Attack menu of the Escort for the EscortGroup.
|
||||
-- self.EscortMenuAttackNearbyTargets:RemoveSubMenus()
|
||||
--
|
||||
-- if self.EscortMenuTargetAssistance then
|
||||
-- self.EscortMenuTargetAssistance:RemoveSubMenus()
|
||||
-- end
|
||||
--
|
||||
-- --for MenuIndex = 1, #self.EscortMenuAttackTargets do
|
||||
-- -- self:T( { "Remove Menu:", self.EscortMenuAttackTargets[MenuIndex] } )
|
||||
-- -- self.EscortMenuAttackTargets[MenuIndex] = self.EscortMenuAttackTargets[MenuIndex]:Remove()
|
||||
-- --end
|
||||
--
|
||||
--
|
||||
-- if ClientEscortTargets then
|
||||
-- for ClientEscortTargetUnitName, ClientEscortTargetData in pairs( ClientEscortTargets ) do
|
||||
--
|
||||
-- for ClientEscortGroupName, EscortGroupData in pairs( self.EscortClient._EscortGroups ) do
|
||||
--
|
||||
-- if ClientEscortTargetData and ClientEscortTargetData.AttackUnit:IsAlive() then
|
||||
--
|
||||
-- local EscortTargetMessage = ""
|
||||
-- local EscortTargetCategoryName = ClientEscortTargetData.AttackUnit:GetCategoryName()
|
||||
-- local EscortTargetCategoryType = ClientEscortTargetData.AttackUnit:GetTypeName()
|
||||
-- if ClientEscortTargetData.type then
|
||||
-- EscortTargetMessage = EscortTargetMessage .. EscortTargetCategoryName .. " (" .. EscortTargetCategoryType .. ") at "
|
||||
-- else
|
||||
-- EscortTargetMessage = EscortTargetMessage .. "Unknown target at "
|
||||
-- end
|
||||
--
|
||||
-- local EscortTargetUnitVec3 = ClientEscortTargetData.AttackUnit:GetVec3()
|
||||
-- local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
-- local Distance = ( ( EscortTargetUnitVec3.x - EscortVec3.x )^2 +
|
||||
-- ( EscortTargetUnitVec3.y - EscortVec3.y )^2 +
|
||||
-- ( EscortTargetUnitVec3.z - EscortVec3.z )^2
|
||||
-- ) ^ 0.5 / 1000
|
||||
--
|
||||
-- self:T( { self.EscortGroup:GetName(), ClientEscortTargetData.AttackUnit:GetName(), Distance, ClientEscortTargetData.AttackUnit } )
|
||||
-- if ClientEscortTargetData.visible == false then
|
||||
-- EscortTargetMessage = EscortTargetMessage .. string.format( "%.2f", Distance ) .. " estimated km"
|
||||
-- else
|
||||
-- EscortTargetMessage = EscortTargetMessage .. string.format( "%.2f", Distance ) .. " km"
|
||||
-- end
|
||||
--
|
||||
-- if ClientEscortTargetData.visible then
|
||||
-- EscortTargetMessage = EscortTargetMessage .. ", visual"
|
||||
-- end
|
||||
--
|
||||
-- if ClientEscortGroupName == EscortGroupName then
|
||||
--
|
||||
-- MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
-- EscortTargetMessage,
|
||||
-- self.EscortMenuAttackNearbyTargets,
|
||||
-- ESCORT._AttackTarget,
|
||||
-- { ParamSelf = self,
|
||||
-- ParamUnit = ClientEscortTargetData.AttackUnit
|
||||
-- }
|
||||
-- )
|
||||
-- EscortTargetMessages = EscortTargetMessages .. "\n - " .. EscortTargetMessage
|
||||
-- else
|
||||
-- if self.EscortMenuTargetAssistance then
|
||||
-- local MenuTargetAssistance = MENU_CLIENT:New( self.EscortClient, EscortGroupData.EscortName, self.EscortMenuTargetAssistance )
|
||||
-- MENU_CLIENT_COMMAND:New( self.EscortClient,
|
||||
-- EscortTargetMessage,
|
||||
-- MenuTargetAssistance,
|
||||
-- ESCORT._AssistTarget,
|
||||
-- self,
|
||||
-- EscortGroupData.EscortGroup,
|
||||
-- ClientEscortTargetData.AttackUnit
|
||||
-- )
|
||||
-- end
|
||||
-- end
|
||||
-- else
|
||||
-- ClientEscortTargetData = nil
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
--
|
||||
-- if EscortTargetMessages ~= "" and self.ReportTargets == true then
|
||||
-- self.EscortGroup:MessageToClient( "Detected targets within 15 km range:" .. EscortTargetMessages:gsub("\n$",""), 20, self.EscortClient )
|
||||
-- else
|
||||
-- self.EscortGroup:MessageToClient( "No targets detected!", 20, self.EscortClient )
|
||||
-- end
|
||||
-- end
|
||||
--
|
||||
-- if self.EscortMenuResumeMission then
|
||||
-- self.EscortMenuResumeMission:RemoveSubMenus()
|
||||
--
|
||||
-- -- if self.EscortMenuResumeWayPoints then
|
||||
-- -- for MenuIndex = 1, #self.EscortMenuResumeWayPoints do
|
||||
-- -- self:T( { "Remove Menu:", self.EscortMenuResumeWayPoints[MenuIndex] } )
|
||||
-- -- self.EscortMenuResumeWayPoints[MenuIndex] = self.EscortMenuResumeWayPoints[MenuIndex]:Remove()
|
||||
-- -- end
|
||||
-- -- end
|
||||
--
|
||||
-- local TaskPoints = self:RegisterRoute()
|
||||
-- for WayPointID, WayPoint in pairs( TaskPoints ) do
|
||||
-- local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
-- local Distance = ( ( WayPoint.x - EscortVec3.x )^2 +
|
||||
-- ( WayPoint.y - EscortVec3.z )^2
|
||||
-- ) ^ 0.5 / 1000
|
||||
-- MENU_CLIENT_COMMAND:New( self.EscortClient, "Waypoint " .. WayPointID .. " at " .. string.format( "%.2f", Distance ).. "km", self.EscortMenuResumeMission, ESCORT._ResumeMission, { ParamSelf = self, ParamWayPoint = WayPointID } )
|
||||
-- end
|
||||
-- end
|
||||
--
|
||||
-- return true
|
||||
end
|
||||
|
||||
if self.EscortMenuResumeMission then
|
||||
self.EscortMenuResumeMission:RemoveSubMenus()
|
||||
|
||||
-- if self.EscortMenuResumeWayPoints then
|
||||
-- for MenuIndex = 1, #self.EscortMenuResumeWayPoints do
|
||||
-- self:T( { "Remove Menu:", self.EscortMenuResumeWayPoints[MenuIndex] } )
|
||||
-- self.EscortMenuResumeWayPoints[MenuIndex] = self.EscortMenuResumeWayPoints[MenuIndex]:Remove()
|
||||
-- end
|
||||
-- end
|
||||
|
||||
local TaskPoints = self:RegisterRoute()
|
||||
for WayPointID, WayPoint in pairs( TaskPoints ) do
|
||||
local EscortVec3 = self.EscortGroup:GetVec3()
|
||||
local Distance = ( ( WayPoint.x - EscortVec3.x )^2 +
|
||||
( WayPoint.y - EscortVec3.z )^2
|
||||
) ^ 0.5 / 1000
|
||||
MENU_CLIENT_COMMAND:New( self.EscortClient, "Waypoint " .. WayPointID .. " at " .. string.format( "%.2f", Distance ).. "km", self.EscortMenuResumeMission, ESCORT._ResumeMission, { ParamSelf = self, ParamWayPoint = WayPointID } )
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
return false
|
||||
|
||||
@ -224,6 +224,14 @@ function COMMANDCENTER:HasGroup( MissionGroup )
|
||||
return Has
|
||||
end
|
||||
|
||||
--- Send a CC message to the coalition of the CC.
|
||||
-- @param #COMMANDCENTER self
|
||||
function COMMANDCENTER:MessageToAll( Message )
|
||||
|
||||
self:GetPositionable():MessageToAll( Message, 20, self:GetName() )
|
||||
|
||||
end
|
||||
|
||||
--- Send a CC message to a GROUP.
|
||||
-- @param #COMMANDCENTER self
|
||||
-- @param #string Message
|
||||
@ -247,6 +255,7 @@ function COMMANDCENTER:MessageToCoalition( Message )
|
||||
|
||||
end
|
||||
|
||||
|
||||
--- Report the status of all MISSIONs to a GROUP.
|
||||
-- Each Mission is listed, with an indication how many Tasks are still to be completed.
|
||||
-- @param #COMMANDCENTER self
|
||||
|
||||
@ -404,21 +404,21 @@ do -- DETECTION_DISPATCHER
|
||||
local Mission = self.Mission
|
||||
|
||||
--- First we need to the detected targets.
|
||||
for DetectedAreaID, DetectedAreaData in ipairs( Detection:GetDetectedAreas() ) do
|
||||
for DetectedItemID, DetectedItem in pairs( Detection:GetDetectedItems() ) do
|
||||
|
||||
local DetectedArea = DetectedAreaData -- Functional.Detection#DETECTION_AREAS.DetectedArea
|
||||
local DetectedSet = DetectedArea.Set
|
||||
local DetectedZone = DetectedArea.Zone
|
||||
self:E( { "Targets in DetectedArea", DetectedArea.AreaID, DetectedSet:Count(), tostring( DetectedArea ) } )
|
||||
local DetectedItem = DetectedItem -- Functional.Detection#DETECTION_BASE.DetectedItem
|
||||
local DetectedSet = DetectedItem.Set -- Functional.Detection#DETECTION_BASE.DetectedSet
|
||||
local DetectedZone = DetectedItem.Zone
|
||||
self:E( { "Targets in DetectedArea", DetectedItem.AreaID, DetectedSet:Count(), tostring( DetectedItem ) } )
|
||||
DetectedSet:Flush()
|
||||
|
||||
local AreaID = DetectedArea.AreaID
|
||||
local AreaID = DetectedItem.AreaID
|
||||
|
||||
-- Evaluate SEAD Tasking
|
||||
local SEADTask = Mission:GetTask( "SEAD." .. AreaID )
|
||||
SEADTask = self:EvaluateRemoveTask( Mission, SEADTask, DetectedArea )
|
||||
SEADTask = self:EvaluateRemoveTask( Mission, SEADTask, DetectedItem )
|
||||
if not SEADTask then
|
||||
local TargetSetUnit = self:EvaluateSEAD( DetectedArea ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
local TargetSetUnit = self:EvaluateSEAD( DetectedItem ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
if TargetSetUnit then
|
||||
SEADTask = Mission:AddTask( TASK_SEAD:New( Mission, self.SetGroup, "SEAD." .. AreaID, TargetSetUnit , DetectedZone ) )
|
||||
end
|
||||
@ -431,11 +431,11 @@ do -- DETECTION_DISPATCHER
|
||||
|
||||
-- Evaluate CAS Tasking
|
||||
local CASTask = Mission:GetTask( "CAS." .. AreaID )
|
||||
CASTask = self:EvaluateRemoveTask( Mission, CASTask, DetectedArea )
|
||||
CASTask = self:EvaluateRemoveTask( Mission, CASTask, DetectedItem )
|
||||
if not CASTask then
|
||||
local TargetSetUnit = self:EvaluateCAS( DetectedArea ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
local TargetSetUnit = self:EvaluateCAS( DetectedItem ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
if TargetSetUnit then
|
||||
CASTask = Mission:AddTask( TASK_A2G:New( Mission, self.SetGroup, "CAS." .. AreaID, "CAS", TargetSetUnit , DetectedZone, DetectedArea.NearestFAC ) )
|
||||
CASTask = Mission:AddTask( TASK_A2G:New( Mission, self.SetGroup, "CAS." .. AreaID, "CAS", TargetSetUnit , DetectedZone, DetectedItem.NearestFAC ) )
|
||||
end
|
||||
end
|
||||
if CASTask and CASTask:IsStatePlanned() then
|
||||
@ -445,11 +445,11 @@ do -- DETECTION_DISPATCHER
|
||||
|
||||
-- Evaluate BAI Tasking
|
||||
local BAITask = Mission:GetTask( "BAI." .. AreaID )
|
||||
BAITask = self:EvaluateRemoveTask( Mission, BAITask, DetectedArea )
|
||||
BAITask = self:EvaluateRemoveTask( Mission, BAITask, DetectedItem )
|
||||
if not BAITask then
|
||||
local TargetSetUnit = self:EvaluateBAI( DetectedArea, self.CommandCenter:GetCoalition() ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
local TargetSetUnit = self:EvaluateBAI( DetectedItem, self.CommandCenter:GetCoalition() ) -- Returns a SetUnit if there are targets to be SEADed...
|
||||
if TargetSetUnit then
|
||||
BAITask = Mission:AddTask( TASK_A2G:New( Mission, self.SetGroup, "BAI." .. AreaID, "BAI", TargetSetUnit , DetectedZone, DetectedArea.NearestFAC ) )
|
||||
BAITask = Mission:AddTask( TASK_A2G:New( Mission, self.SetGroup, "BAI." .. AreaID, "BAI", TargetSetUnit , DetectedZone, DetectedItem.NearestFAC ) )
|
||||
end
|
||||
end
|
||||
if BAITask and BAITask:IsStatePlanned() then
|
||||
@ -459,20 +459,20 @@ do -- DETECTION_DISPATCHER
|
||||
|
||||
if #TaskMsg > 0 then
|
||||
|
||||
local ThreatLevel = Detection:GetTreatLevelA2G( DetectedArea )
|
||||
local ThreatLevel = Detection:GetTreatLevelA2G( DetectedItem )
|
||||
|
||||
local DetectedAreaVec3 = DetectedZone:GetVec3()
|
||||
local DetectedAreaPointVec3 = POINT_VEC3:New( DetectedAreaVec3.x, DetectedAreaVec3.y, DetectedAreaVec3.z )
|
||||
local DetectedAreaPointLL = DetectedAreaPointVec3:ToStringLL( 3, true )
|
||||
AreaMsg[#AreaMsg+1] = string.format( " - Area #%d - %s - Threat Level [%s] (%2d)",
|
||||
DetectedAreaID,
|
||||
DetectedItemID,
|
||||
DetectedAreaPointLL,
|
||||
string.rep( "■", ThreatLevel ),
|
||||
ThreatLevel
|
||||
)
|
||||
|
||||
-- Loop through the changes ...
|
||||
local ChangeText = Detection:GetChangeText( DetectedArea )
|
||||
local ChangeText = Detection:GetChangeText( DetectedItem )
|
||||
|
||||
if ChangeText ~= "" then
|
||||
ChangeMsg[#ChangeMsg+1] = string.gsub( string.gsub( ChangeText, "\n", "%1 - " ), "^.", " - %1" )
|
||||
@ -480,7 +480,7 @@ do -- DETECTION_DISPATCHER
|
||||
end
|
||||
|
||||
-- OK, so the tasking has been done, now delete the changes reported for the area.
|
||||
Detection:AcceptChanges( DetectedArea )
|
||||
Detection:AcceptChanges( DetectedItem )
|
||||
|
||||
end
|
||||
|
||||
|
||||
@ -543,10 +543,10 @@ function CONTROLLABLE:TaskAttackUnit( AttackUnit, GroupAttack, WeaponExpend, Att
|
||||
directionEnabled = Direction and true or false,
|
||||
direction = Direction,
|
||||
altitudeEnabled = Altitude and true or false,
|
||||
altitude = Altitude,
|
||||
altitude = Altitude or 30,
|
||||
attackQtyLimit = AttackQty and true or false,
|
||||
attackQty = AttackQty,
|
||||
controllableAttack = ControllableAttack,
|
||||
weaponType = 1073741822,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
@ -110,7 +110,7 @@ GROUP = {
|
||||
-- @param Dcs.DCSWrapper.Group#Group GroupName The DCS Group name
|
||||
-- @return #GROUP self
|
||||
function GROUP:Register( GroupName )
|
||||
local self = BASE:Inherit( self, CONTROLLABLE:New( GroupName ) )
|
||||
self = BASE:Inherit( self, CONTROLLABLE:New( GroupName ) )
|
||||
self:F2( GroupName )
|
||||
self.GroupName = GroupName
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
||||
env.info( 'Moose Generation Timestamp: 20170208_2216' )
|
||||
env.info( 'Moose Generation Timestamp: 20170213_1411' )
|
||||
|
||||
local base = _G
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
||||
env.info( 'Moose Generation Timestamp: 20170208_2216' )
|
||||
env.info( 'Moose Generation Timestamp: 20170213_1411' )
|
||||
|
||||
local base = _G
|
||||
|
||||
|
||||
BIN
Moose Presentations/DETECTION.pptx
Normal file
BIN
Moose Presentations/DETECTION.pptx
Normal file
Binary file not shown.
Binary file not shown.
@ -0,0 +1,56 @@
|
||||
---
|
||||
-- Name: DET-100 - Detection Probability Distance
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 04 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the DistanceProbability factor during the detection of units.
|
||||
--
|
||||
-- Two JTAC are detecting 4 units, which are 10 km away.
|
||||
-- The first JTAC has no DistanceProbability set.
|
||||
-- The second JTAC has a DistanceProbability set.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the reporting of both the first and second JTAC. The second should report slower the detection than the first.
|
||||
-- 2. Eventually all units should be detected by both JTAC.
|
||||
|
||||
local RecceSetGroup1 = SET_GROUP:New():FilterPrefixes( "Recce 1" ):FilterStart()
|
||||
local RecceSetGroup2 = SET_GROUP:New():FilterPrefixes( "Recce 2" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection1 = DETECTION_UNITS:New( RecceSetGroup1 )
|
||||
|
||||
local RecceDetection2 = DETECTION_UNITS:New( RecceSetGroup2 )
|
||||
RecceDetection2:SetDistanceProbability( 0.2 ) -- Set a 20% probability that a vehicle can be detected at 4km distance.
|
||||
|
||||
RecceDetection1:Start()
|
||||
RecceDetection2:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection1:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection1:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 1 - No distance Probability" )
|
||||
end
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection2:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection2:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 2 - Distance Probability" )
|
||||
end
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,62 @@
|
||||
---
|
||||
-- Name: DET-120 - Detection Probability Zones
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 04 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the DistanceProbability factor during the detection of units.
|
||||
--
|
||||
-- Two JTAC are detecting 4 units, which are 10 km away.
|
||||
-- The first JTAC has no DistanceProbability set.
|
||||
-- The second JTAC has a DistanceProbability set.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the reporting of both the first and second JTAC. The second should report slower the detection than the first.
|
||||
-- 2. Eventually all units should be detected by both JTAC.
|
||||
|
||||
local RecceSetGroup1 = SET_GROUP:New():FilterPrefixes( "Recce 1" ):FilterStart()
|
||||
local RecceSetGroup2 = SET_GROUP:New():FilterPrefixes( "Recce 2" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection1 = DETECTION_UNITS:New( RecceSetGroup1 )
|
||||
|
||||
local RecceDetection2 = DETECTION_UNITS:New( RecceSetGroup2 )
|
||||
|
||||
local ForestZone = ZONE_POLYGON:New( "ForestZone", GROUP:FindByName( "ForestZone" ) )
|
||||
|
||||
RecceDetection2:SetZoneProbability( { { ForestZone, 0.1 } } ) -- Set a 10% probability that a vehicle can be detected within the forest.
|
||||
|
||||
|
||||
RecceDetection1:Start()
|
||||
RecceDetection2:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection1:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = self:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 1 - No Zone Probability" )
|
||||
end
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection2:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = self:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 2 - Forest Zone Probability" )
|
||||
end
|
||||
|
||||
garbagecollect()
|
||||
Binary file not shown.
@ -0,0 +1,40 @@
|
||||
---
|
||||
-- Name: DET-200 - Detection UNITS
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 13 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the detection of units.
|
||||
--
|
||||
-- A Set of Recce are detecting a large group of units, which are 5 km away.
|
||||
-- Select one of the blue Recce, and press F7. Watch the reporting of the detection evolve.
|
||||
-- The enemy is approaching.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the detection reporting of both the Recce.
|
||||
-- 2. Eventually all units should be detected by both Recce.
|
||||
|
||||
local RecceSetGroup = SET_GROUP:New():FilterPrefixes( "Recce" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection = DETECTION_UNITS:New( RecceSetGroup )
|
||||
|
||||
RecceDetection:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection:DetectedReportDetailed()
|
||||
|
||||
CC:MessageToAll( DetectionReport, 15, "" )
|
||||
end
|
||||
|
||||
Binary file not shown.
@ -0,0 +1,42 @@
|
||||
---
|
||||
-- Name: DET-210 - Detection TYPES
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 13 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the detection of units.
|
||||
--
|
||||
-- A Set of Recce are detecting a large group of units, which are 5 km away.
|
||||
-- Select one of the blue Recce, and press F7. Watch the reporting of the detection evolve.
|
||||
-- The enemy is approaching.
|
||||
--
|
||||
-- The blue Recce will report the detected units grouped per vehicle type!
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the detection reporting of both the Recce.
|
||||
-- 2. Eventually all units should be detected by both Recce.
|
||||
|
||||
local RecceSetGroup = SET_GROUP:New():FilterPrefixes( "Recce" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection = DETECTION_TYPES:New( RecceSetGroup )
|
||||
|
||||
RecceDetection:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection:DetectedReportDetailed()
|
||||
|
||||
CC:MessageToAll( DetectionReport, 15, "" )
|
||||
end
|
||||
|
||||
Binary file not shown.
@ -0,0 +1,56 @@
|
||||
---
|
||||
-- Name: DET-100 - Detection Probability Distance
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 04 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the DistanceProbability factor during the detection of units.
|
||||
--
|
||||
-- Two JTAC are detecting 4 units, which are 10 km away.
|
||||
-- The first JTAC has no DistanceProbability set.
|
||||
-- The second JTAC has a DistanceProbability set.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the reporting of both the first and second JTAC. The second should report slower the detection than the first.
|
||||
-- 2. Eventually all units should be detected by both JTAC.
|
||||
|
||||
local RecceSetGroup1 = SET_GROUP:New():FilterPrefixes( "Recce 1" ):FilterStart()
|
||||
local RecceSetGroup2 = SET_GROUP:New():FilterPrefixes( "Recce 2" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection1 = DETECTION_UNITS:New( RecceSetGroup1 )
|
||||
|
||||
local RecceDetection2 = DETECTION_UNITS:New( RecceSetGroup2 )
|
||||
RecceDetection2:SetDistanceProbability( 0.2 ) -- Set a 20% probability that a vehicle can be detected at 4km distance.
|
||||
|
||||
RecceDetection1:Start()
|
||||
RecceDetection2:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection1:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection1:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 1 - No distance Probability" )
|
||||
end
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection2:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection2:DetectedReportDetailed()
|
||||
|
||||
HQ:MessageToAll( DetectionReport, 15, "Detection 2 - Distance Probability" )
|
||||
end
|
||||
Binary file not shown.
@ -0,0 +1,61 @@
|
||||
---
|
||||
-- Name: DET-500 - Handle Detected Event - Govern Artillery Demo
|
||||
-- Author: FlightControl
|
||||
-- Date Created: 13 Feb 2017
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- Demonstrates the detection of units.
|
||||
--
|
||||
-- A Set of Recces are detecting a large group of units, which are 5 km away.
|
||||
-- Once the Recces detect the enemy, the artilley units are controlled and will fire a missile to the target.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. Observe the detected reporting of the recces.
|
||||
-- 2. When one Recce group detects a target, it will select an artillery unit and fire a missile.
|
||||
-- 3. This will run until all Recces have eliminated the targets.
|
||||
|
||||
local RecceSetGroup = SET_GROUP:New():FilterCoalitions( "blue" ):FilterPrefixes( "Recce" ):FilterStart()
|
||||
local ArtillerySetGroup = SET_GROUP:New():FilterCoalitions( "blue" ):FilterPrefixes( "Artillery" ):FilterStart()
|
||||
|
||||
local HQ = GROUP:FindByName( "HQ" )
|
||||
|
||||
local CC = COMMANDCENTER:New( HQ, "HQ" )
|
||||
|
||||
local RecceDetection = DETECTION_UNITS:New( RecceSetGroup )
|
||||
RecceDetection:SetDetectionInterval( 5 )
|
||||
|
||||
RecceDetection:Start()
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
function RecceDetection:OnAfterDetect(From,Event,To)
|
||||
|
||||
local DetectionReport = RecceDetection:DetectedReportDetailed()
|
||||
|
||||
CC:MessageToAll( DetectionReport, 15, "" )
|
||||
end
|
||||
|
||||
|
||||
--- OnAfter Transition Handler for Event Detect.
|
||||
-- @param Functional.Detection#DETECTION_UNITS self
|
||||
-- @param #string From The From State string.
|
||||
-- @param #string Event The Event string.
|
||||
-- @param #string To The To State string.
|
||||
-- @param Wrapper.Unit#UNIT DetectedUnits
|
||||
function RecceDetection:OnAfterDetected( From, Event, To, DetectedUnits )
|
||||
|
||||
local ArtilleryArray = ArtillerySetGroup:GetSet()
|
||||
local ArtilleryArrayCount = ArtillerySetGroup:Count()
|
||||
|
||||
for DetectedUnitID, DetectedUnit in pairs( DetectedUnits ) do
|
||||
local DetectedUnit = DetectedUnit -- Wrapper.Unit#UNIT
|
||||
local Artillery = ArtilleryArray[ math.random( 1, ArtilleryArrayCount ) ] -- Wrapper.Group#GROUP
|
||||
local Task = Artillery:TaskFireAtPoint( DetectedUnit:GetVec2(), 500, 2 ) -- Fire 2 rockets to the target point.
|
||||
Artillery:SetTask( Task, 0.5 )
|
||||
end
|
||||
end
|
||||
Binary file not shown.
@ -20,6 +20,8 @@ do
|
||||
:MenuResumeMission()
|
||||
:MenuROE()
|
||||
:MenuAssistedAttack()
|
||||
|
||||
EscortHeli1:SetDetection( EscortHeliDetection )
|
||||
|
||||
local EscortGroupArtillery = SpawnEscortArtillery:ReSpawn(1)
|
||||
local EscortArtillery = ESCORT
|
||||
@ -59,6 +61,9 @@ do
|
||||
SpawnEscortGround = SPAWN:New( "Escort Ground" )
|
||||
SpawnEscortShip = SPAWN:New( "Escort Ship" )
|
||||
SpawnEscortArtillery = SPAWN:New( "Ground Attack Assistance" )
|
||||
|
||||
EscortHeliSetGroup = SET_GROUP:New():FilterPrefixes("Escort Helicopter"):FilterStart()
|
||||
EscortHeliDetection = DETECTION_AREAS:New( EscortHeliSetGroup, 20000, 1500 )
|
||||
|
||||
EscortClientHeli = CLIENT:FindByName( "Lead Helicopter", "Fly around and observe the behaviour of the escort helicopter" ):Alive( EventAliveHelicopter )
|
||||
EscortClientPlane = CLIENT:FindByName( "Lead Plane", "Fly around and observe the behaviour of the escort airplane. Select Navigate->Joun-Up and airplane should follow you. Change speed and directions." )
|
||||
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,3 @@
|
||||
routes=
|
||||
{
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,210 @@
|
||||
-- View scripts
|
||||
-- Copyright (C) 2004, Eagle Dynamics.
|
||||
DisableCombatViews = false -- F5 & Ctrl-F5
|
||||
ExternalObjectsLockDistance = 10000.0
|
||||
ShowTargetInfo = false
|
||||
CameraTerrainRestriction = true
|
||||
hAngleRearDefault = 180
|
||||
vAngleRearDefault = -8.0
|
||||
vAngleRearMin = -90 -- -8.0
|
||||
vAngleRearMax = 90.0
|
||||
|
||||
dbg_shell = "weapons.shells.PKT_7_62_T" -- 23mm shell
|
||||
dbg_shell = "weapons.nurs.WGr21"
|
||||
-- dbg_shell = "weapons.shells.2A64_152" -- 152mm shell
|
||||
dbg_shell_v0 = -1 -- Muzzle speed m/s (-1 - speed from shall database)
|
||||
dbg_shell_fire_rate = 60
|
||||
--reformatted per-unit data to be mod system friendly
|
||||
--this file is no longer should be edited for adding new flyable aircraft , DCS automatically check core database (i.e. where you define your aircraft in aircraft table just define ViewSettings and SnapViews tables)
|
||||
|
||||
function default_fighter_player(t)
|
||||
local res = {
|
||||
CameraViewAngleLimits = {20.000000,140.000000},
|
||||
CameraAngleRestriction = {false ,90.000000,0.500000},
|
||||
EyePoint = {0.05 ,0.000000 ,0.000000},
|
||||
limits_6DOF = {x = {-0.050000,0.4500000},y ={-0.300000,0.100000},z = {-0.220000,0.220000},roll = 90.000000},
|
||||
Allow360rotation = false,
|
||||
CameraAngleLimits = {200,-80.000000,110.000000},
|
||||
ShoulderSize = 0.2, -- move body when azimuth value more then 90 degrees
|
||||
}
|
||||
if t then
|
||||
for i,o in pairs(t) do
|
||||
res[i] = o
|
||||
end
|
||||
end
|
||||
return res
|
||||
end
|
||||
|
||||
function fulcrum()
|
||||
return {
|
||||
Cockpit = {
|
||||
default_fighter_player({CockpitLocalPoint = {4.71,1.28,0.000000}})
|
||||
},
|
||||
Chase = {
|
||||
LocalPoint = {1.220000,3.750000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-15.080000,6.350000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
end
|
||||
|
||||
ViewSettings = {}
|
||||
ViewSettings["A-10A"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {4.300000,1.282000,0.000000},
|
||||
EyePoint = {0.000000,0.000000,0.000000},
|
||||
limits_6DOF = {x = {-0.050000,0.600000},
|
||||
y = {-0.300000,0.100000},
|
||||
z = {-0.250000,0.250000},
|
||||
roll = 90.000000}}),
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {0.600000,3.682000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-27.000000,12.000000,0.000000},
|
||||
AnglesDefault = {0.000000,-12.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["A-10C"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {4.300000,1.282000,0.000000},
|
||||
EyePoint = {0.000000,0.000000,0.000000},
|
||||
limits_6DOF = {x = {-0.050000,0.600000},
|
||||
y = {-0.300000,0.100000},
|
||||
z = {-0.250000,0.250000},
|
||||
roll = 90.000000}}),
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {0.600000,3.682000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-27.000000,12.000000,0.000000},
|
||||
AnglesDefault = {0.000000,-12.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["F-15C"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {6.210000,1.204000,0.000000}})-- player slot 1
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {2.510000,3.604000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-13.790000,6.204000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["Ka-50"] = {
|
||||
Cockpit = {
|
||||
[1] = {-- player slot 1
|
||||
CockpitLocalPoint = {3.188000,0.390000,0.000000},
|
||||
CameraViewAngleLimits = {20.000000,120.000000},
|
||||
CameraAngleRestriction = {false,60.000000,0.400000},
|
||||
CameraAngleLimits = {140.000000,-65.000000,90.000000},
|
||||
EyePoint = {0.090000,0.000000,0.000000},
|
||||
limits_6DOF = {x = {-0.020000,0.350000},y ={-0.150000,0.165000},z = {-0.170000,0.170000},roll = 90.000000},
|
||||
},
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {-0.512000,2.790000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-16.812000,5.390000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["MiG-29A"] = fulcrum()
|
||||
ViewSettings["MiG-29G"] = fulcrum()
|
||||
ViewSettings["MiG-29S"] = fulcrum()
|
||||
|
||||
ViewSettings["P-51D"] = {
|
||||
Cockpit = {
|
||||
[1] = {-- player slot 1
|
||||
CockpitLocalPoint = {-1.500000,0.618000,0.000000},
|
||||
CameraViewAngleLimits = {20.000000,120.000000},
|
||||
CameraAngleRestriction = {false,90.000000,0.500000},
|
||||
CameraAngleLimits = {200,-80.000000,90.000000},
|
||||
EyePoint = {0.025000,0.100000,0.000000},
|
||||
ShoulderSize = 0.15,
|
||||
Allow360rotation = false,
|
||||
limits_6DOF = {x = {-0.050000,0.450000},y ={-0.200000,0.200000},z = {-0.220000,0.220000},roll = 90.000000},
|
||||
},
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {0.200000,-0.652000,-0.650000},
|
||||
AnglesDefault = {0.000000,0.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-21.500000,5.618000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["Su-25"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {3.352000,0.506000,0.000000}}),-- player slot 1
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {-0.348000,2.906000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-16.648001,5.506000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["Su-25T"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {3.406000,0.466000,0.000000}}),-- player slot 1
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {-0.294000,2.866000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-16.594000,5.466000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["Su-25TM"] = {
|
||||
Cockpit = {
|
||||
[1] = {-- player slot 1
|
||||
CockpitLocalPoint = {4.000000,1.000000,0.000000},
|
||||
CameraViewAngleLimits = {20.000000,140.000000},
|
||||
CameraAngleRestriction = {true,90.000000,0.400000},
|
||||
CameraAngleLimits = {160.000000,-70.000000,90.000000},
|
||||
EyePoint = {0.000000,0.000000,0.000000},
|
||||
limits_6DOF = {x = {-0.200000,0.200000},y ={-0.200000,0.200000},z = {-0.200000,0.200000},roll = 60.000000},
|
||||
},
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {4.000000,2.000000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {4.000000,2.000000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
ViewSettings["Su-27"] = {
|
||||
Cockpit = {
|
||||
[1] = default_fighter_player({CockpitLocalPoint = {7.959000,1.419000,0.000000}})-- player slot 1
|
||||
}, -- Cockpit
|
||||
Chase = {
|
||||
LocalPoint = {4.259000,3.819000,0.000000},
|
||||
AnglesDefault = {180.000000,-8.000000},
|
||||
}, -- Chase
|
||||
Arcade = {
|
||||
LocalPoint = {-12.041000,6.419000,0.000000},
|
||||
AnglesDefault = {0.000000,-8.000000},
|
||||
}, -- Arcade
|
||||
}
|
||||
|
||||
ViewSettings["Su-33"] = ViewSettings["Su-27"]
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,128 @@
|
||||
-- View scripts
|
||||
-- Copyright (C) 2004, Eagle Dynamics.
|
||||
|
||||
CockpitMouse = true --false
|
||||
CockpitMouseSpeedSlow = 1.0
|
||||
CockpitMouseSpeedNormal = 10.0
|
||||
CockpitMouseSpeedFast = 20.0
|
||||
CockpitKeyboardAccelerationSlow = 5.0
|
||||
CockpitKeyboardAccelerationNormal = 30.0
|
||||
CockpitKeyboardAccelerationFast = 80.0
|
||||
CockpitKeyboardZoomAcceleration = 300.0
|
||||
DisableSnapViewsSaving = false
|
||||
UseDefaultSnapViews = true
|
||||
CockpitPanStepHor = 45.0
|
||||
CockpitPanStepVert = 30.0
|
||||
CockpitNyMove = true
|
||||
|
||||
CockpitHAngleAccelerateTimeMax = 0.15
|
||||
CockpitVAngleAccelerateTimeMax = 0.15
|
||||
CockpitZoomAccelerateTimeMax = 0.2
|
||||
|
||||
function NaturalHeadMoving(tang, roll, omz)
|
||||
local r = roll
|
||||
if r > 90.0 then
|
||||
r = 180.0 - r
|
||||
elseif roll < -90.0 then
|
||||
r = -180.0 - r
|
||||
end
|
||||
local hAngle = -0.25 * r
|
||||
local vAngle = math.min(math.max(0.0, 0.4 * tang + 45.0 * omz), 90.0)
|
||||
return hAngle, vAngle
|
||||
end
|
||||
|
||||
ExternalMouse = true
|
||||
ExternalMouseSpeedSlow = 1.0
|
||||
ExternalMouseSpeedNormal = 5.0
|
||||
ExternalMouseSpeedFast = 20.0
|
||||
ExternalViewAngleMin = 3.0
|
||||
ExternalViewAngleMax = 170.0
|
||||
ExternalViewAngleDefault = 60.0
|
||||
ExternalKeyboardZoomAcceleration = 30.0
|
||||
ExternalKeyboardZoomAccelerateTimeMax = 1.0
|
||||
ExplosionExpoTime = 4.0
|
||||
ExternalKeyboardAccelerationSlow = 1.0
|
||||
ExternalKeyboardAccelerationNormal = 10.0
|
||||
ExternalKeyboardAccelerationFast = 30.0
|
||||
ExternalHAngleAccelerateTimeMax = 3.0
|
||||
ExternalVAngleAccelerateTimeMax = 3.0
|
||||
ExternalDistAccelerateTimeMax = 3.0
|
||||
ExternalHAngleLocalAccelerateTimeMax = 3.0
|
||||
ExternalVAngleLocalAccelerateTimeMax = 3.0
|
||||
ExternalAngleNormalDiscreteStep = 15.0/ExternalKeyboardAccelerationNormal -- When 'S' is pressed only
|
||||
ChaseCameraNyMove = true
|
||||
FreeCameraAngleIncrement = 3.0
|
||||
FreeCameraDistanceIncrement = 200.0
|
||||
FreeCameraLeftRightIncrement = 2.0
|
||||
FreeCameraAltitudeIncrement = 2.0
|
||||
FreeCameraScalarSpeedAcceleration = 0.1
|
||||
xMinMap = -300000
|
||||
xMaxMap = 500000
|
||||
yMinMap = -400000
|
||||
yMaxMap = 200000
|
||||
dxMap = 150000
|
||||
dyMap = 100000
|
||||
|
||||
head_roll_shaking = true
|
||||
head_roll_shaking_max = 30.0
|
||||
head_roll_shaking_compensation_gain = 0.3
|
||||
|
||||
-- CameraJiggle() and CameraFloat() functions make camera position
|
||||
-- dependent on FPS so be careful in using the Shift-J command with tracks, please.
|
||||
-- uncomment to use custom jiggle functions
|
||||
--[[
|
||||
function CameraJiggle(t,rnd1,rnd2,rnd3)
|
||||
local rotX, rotY, rotZ
|
||||
rotX = 0.05 * rnd1 * math.sin(37.0 * (t - 0.0))
|
||||
rotY = 0.05 * rnd2 * math.sin(41.0 * (t - 1.0))
|
||||
rotZ = 0.05 * rnd3 * math.sin(53.0 * (t - 2.0))
|
||||
return rotX, rotY, rotZ
|
||||
end
|
||||
|
||||
function CameraFloat(t)
|
||||
local dX, dY, dZ
|
||||
dX = 0.61 * math.sin(0.7 * t) + 0.047 * math.sin(1.6 * t);
|
||||
dY = 0.43 * math.sin(0.6 * t) + 0.067 * math.sin(1.7 * t);
|
||||
dZ = 0.53 * math.sin(1.0 * t) + 0.083 * math.sin(1.9 * t);
|
||||
return dX, dY, dZ
|
||||
end
|
||||
--]]
|
||||
--Debug keys
|
||||
|
||||
DEBUG_TEXT = 1
|
||||
DEBUG_GEOMETRY = 2
|
||||
|
||||
debug_keys = {
|
||||
[DEBUG_TEXT] = 1,
|
||||
[DEBUG_GEOMETRY] = 1
|
||||
}
|
||||
|
||||
function onDebugCommand(command)
|
||||
if command == 10000 then
|
||||
if debug_keys[DEBUG_TEXT] ~= 0 or debug_keys[DEBUG_GEOMETRY] ~= 0 then
|
||||
debug_keys[DEBUG_GEOMETRY] = 0
|
||||
debug_keys[DEBUG_TEXT] = 0
|
||||
else
|
||||
debug_keys[DEBUG_GEOMETRY] = 1
|
||||
debug_keys[DEBUG_TEXT] = 1
|
||||
end
|
||||
elseif command == 10001 then
|
||||
if debug_keys[DEBUG_TEXT] ~= 0 then
|
||||
debug_keys[DEBUG_TEXT] = 0
|
||||
else
|
||||
debug_keys[DEBUG_TEXT] = 1
|
||||
end
|
||||
elseif command == 10002 then
|
||||
if debug_keys[DEBUG_GEOMETRY] ~= 0 then
|
||||
debug_keys[DEBUG_GEOMETRY] = 0
|
||||
else
|
||||
debug_keys[DEBUG_GEOMETRY] = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- gain values for TrackIR , to unify responce on diffrent types of aircraft
|
||||
TrackIR_gain_x = -0.6
|
||||
TrackIR_gain_y = 0.3
|
||||
TrackIR_gain_z = -0.25
|
||||
TrackIR_gain_roll = -90
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,98 @@
|
||||
settings=
|
||||
{
|
||||
["delta_mode"]=0,
|
||||
["disp_tapes"]=0,
|
||||
["mnt_boresight_up"]=0,
|
||||
["30mm_pac1_pos"]=1,
|
||||
["mnt_boresight"]=0,
|
||||
["rty_wngspn"]=1,
|
||||
["var_tgt_elev"]=0,
|
||||
["30mm_rnds"]=6029412,
|
||||
["disp_vertvel"]=0,
|
||||
["30mm_min_alt"]=1.2461187723206e-306,
|
||||
["offadj_enabled"]=1,
|
||||
["disp_autodata"]=0,
|
||||
["disp_rdralt"]=0,
|
||||
["aas_threats"]=
|
||||
{
|
||||
[1]=
|
||||
{
|
||||
["in_rotary"]=1,
|
||||
},
|
||||
[2]=
|
||||
{
|
||||
["in_rotary"]=1,
|
||||
},
|
||||
[3]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
[4]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
[5]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
[6]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
[7]=
|
||||
{
|
||||
["in_rotary"]=1,
|
||||
},
|
||||
[8]=
|
||||
{
|
||||
["in_rotary"]=1,
|
||||
},
|
||||
[9]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
[10]=
|
||||
{
|
||||
["in_rotary"]=0,
|
||||
},
|
||||
},
|
||||
["ccip_consent_opt"]=0,
|
||||
["gcas_plane"]=458980,
|
||||
["30mm_ammo_type"]=6488169,
|
||||
["rty_tgtspeed"]=10,
|
||||
["delta_msl_cal"]=0,
|
||||
["delta_gps_msl"]=0,
|
||||
["rty_length"]=1,
|
||||
["disp_ccip_cross"]=1,
|
||||
["wpn_rel_scroll"]=0,
|
||||
["gcas_scroll"]=0,
|
||||
["gcas_training_opt"]=0,
|
||||
["delta_gps_alt"]=0,
|
||||
["delta_rdr_alt"]=0,
|
||||
["mnt_boresight_rt"]=0,
|
||||
["mode_4"]=
|
||||
{
|
||||
["mode_active"]=0,
|
||||
["mode_interval"]=0,
|
||||
["mode_start"]=0,
|
||||
},
|
||||
["mode_1"]=
|
||||
{
|
||||
["mode_active"]=0,
|
||||
["mode_interval"]=0,
|
||||
["mode_start"]=0,
|
||||
},
|
||||
["bit_flight"]=0,
|
||||
["offadj_gun_up"]=0,
|
||||
["fxd_tgtspeed"]=10,
|
||||
["disp_airspeed"]=0,
|
||||
["offadj_bomb_up"]=0,
|
||||
["fxd_wngspn"]=1,
|
||||
["offadj_bomb_rt"]=0,
|
||||
["fxd_length"]=1,
|
||||
["disp_metric"]=0,
|
||||
["bit_opt"]=0,
|
||||
["offadj_gun_rt"]=0,
|
||||
["bit_clear"]=0,
|
||||
["30mm_ammo_mfg"]=6029427,
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["mode_dial"]=2,
|
||||
["volume"]=0.5,
|
||||
["manual_frequency"]=2000000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,54 @@
|
||||
settings=
|
||||
{
|
||||
["osb_buttons"]=
|
||||
{
|
||||
[11]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=3,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="STAT",
|
||||
["source_osb"]=6,
|
||||
},
|
||||
[13]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=5,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="DSMS",
|
||||
["source_osb"]=17,
|
||||
},
|
||||
[12]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=6,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="TGP",
|
||||
["source_osb"]=18,
|
||||
},
|
||||
[14]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=7,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="TAD",
|
||||
["source_osb"]=19,
|
||||
},
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,54 @@
|
||||
settings=
|
||||
{
|
||||
["osb_buttons"]=
|
||||
{
|
||||
[11]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=8,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="MSG",
|
||||
["source_osb"]=16,
|
||||
},
|
||||
[13]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=4,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="MAV",
|
||||
["source_osb"]=8,
|
||||
},
|
||||
[12]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=10,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="CDU",
|
||||
["source_osb"]=15,
|
||||
},
|
||||
[14]=
|
||||
{
|
||||
["target_mode"]=
|
||||
{
|
||||
["level_3"]=0,
|
||||
["master"]=6,
|
||||
["level_4"]=0,
|
||||
["level_2"]=0,
|
||||
},
|
||||
["label"]="TGP",
|
||||
["source_osb"]=18,
|
||||
},
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,85 @@
|
||||
mode = ADF_ADF
|
||||
receiver_mode = ADF_RECEIVER_TLF
|
||||
homer_selection_method = ADF_HOMER_SELECTION_AUTO
|
||||
channel = 1
|
||||
volume = 0.5
|
||||
|
||||
local theatre = theatre or "none"
|
||||
if theatre == 'Caucasus' then
|
||||
|
||||
if Airdrome then
|
||||
-- for T3
|
||||
channels = {
|
||||
[1] = runway_homer_pair(Airdrome[Krasnodar],nil,localizedAirdromeName(terrainAirdromes[Krasnodar])),
|
||||
[2] = runway_homer_pair(Airdrome[Maykop] ,nil,localizedAirdromeName(terrainAirdromes[Maykop])),
|
||||
[3] = runway_homer_pair(Airdrome[Krymsk] ,nil,localizedAirdromeName(terrainAirdromes[Krymsk])),
|
||||
[4] = runway_homer_pair(Airdrome[Anapa] ,nil,localizedAirdromeName(terrainAirdromes[Anapa])),
|
||||
[5] = runway_homer_pair(Airdrome[Mozdok] ,nil,localizedAirdromeName(terrainAirdromes[Mozdok])),
|
||||
[6] = runway_homer_pair(Airdrome[Nalchick] ,nil,localizedAirdromeName(terrainAirdromes[Nalchick])),
|
||||
[7] = runway_homer_pair(Airdrome[MinVody] ,nil,localizedAirdromeName(terrainAirdromes[MinVody])),
|
||||
[8] = {
|
||||
[ADF_HOMER_FAR] = NDB(beacons["NDB_KISLOVODSK"]),
|
||||
[ADF_HOMER_NEAR] = NDB(beacons["NDB_PEREDOVAIA"])
|
||||
}
|
||||
}
|
||||
else
|
||||
-- for T4
|
||||
local beacons_by_id = {}
|
||||
|
||||
for i,o in pairs(beacons) do
|
||||
if o.name == '' then
|
||||
beacons_by_id[o.beaconId] = o
|
||||
else
|
||||
beacons_by_id[o.name] = o
|
||||
end
|
||||
end
|
||||
|
||||
local caucasus_pair = function (id_1,id_2)
|
||||
return {
|
||||
[ADF_HOMER_FAR] = NDB(beacons_by_id[id_1]),
|
||||
[ADF_HOMER_NEAR] = NDB(beacons_by_id[id_2])
|
||||
}
|
||||
end
|
||||
|
||||
channels = {
|
||||
caucasus_pair('airfield13_2','airfield13_3'),
|
||||
caucasus_pair('airfield16_2','airfield16_3'),
|
||||
caucasus_pair("airfield15_4","airfield15_5"),
|
||||
caucasus_pair("airfield12_0","airfield12_1"),
|
||||
caucasus_pair("airfield28_0","airfield28_1"),
|
||||
caucasus_pair("airfield27_0","airfield27_1"),
|
||||
caucasus_pair("airfield26_0","airfield26_1"),
|
||||
caucasus_pair("world_9","world_58"),
|
||||
}
|
||||
end
|
||||
|
||||
elseif theatre == 'Nevada' then
|
||||
|
||||
local beacons_by_name = {}
|
||||
|
||||
for i,o in pairs(beacons) do
|
||||
if o.name == '' then
|
||||
beacons_by_name[o.beaconId] = o
|
||||
else
|
||||
beacons_by_name[o.name] = o
|
||||
end
|
||||
end
|
||||
|
||||
local nevada_pair = function (id_1,id_2) return {
|
||||
[ADF_HOMER_FAR] = NDB(beacons_by_name[id_1]),
|
||||
[ADF_HOMER_NEAR] = NDB(beacons_by_name[id_2])
|
||||
}
|
||||
end
|
||||
|
||||
channels = {
|
||||
nevada_pair('IndianSprings','Groom_Lake'),
|
||||
nevada_pair('LasVegas','Nellis'),
|
||||
nevada_pair("Milford","GOFFS"),
|
||||
nevada_pair("Tonopah","Mina"),
|
||||
nevada_pair("WilsonCreek","CedarCity"),
|
||||
nevada_pair("BryceCanyon","MormonMesa"),
|
||||
nevada_pair("Beatty","Bishop"),
|
||||
nevada_pair("Coaldale","PeachSprings"),
|
||||
nevada_pair("BoulderCity","Mercury"),
|
||||
}
|
||||
end
|
||||
@ -0,0 +1,20 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["channel_dial"]=0,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=21500000,
|
||||
[2]=25700000,
|
||||
[3]=27000000,
|
||||
[4]=28000000,
|
||||
[5]=30000000,
|
||||
[6]=32000000,
|
||||
[7]=40000000,
|
||||
[8]=50000000,
|
||||
[9]=55500000,
|
||||
[10]=59900000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,34 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["modulation"]=1,
|
||||
["channel_dial"]=0,
|
||||
["volume"]=0.60000002384186,
|
||||
["selection_dial"]=0,
|
||||
["manual_frequency"]=127500000,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=127500000,
|
||||
[2]=135000000,
|
||||
[3]=136000000,
|
||||
[4]=127000000,
|
||||
[5]=125000000,
|
||||
[6]=121000000,
|
||||
[7]=141000000,
|
||||
[8]=128000000,
|
||||
[9]=126000000,
|
||||
[10]=133000000,
|
||||
[11]=130000000,
|
||||
[12]=129000000,
|
||||
[13]=123000000,
|
||||
[14]=131000000,
|
||||
[15]=134000000,
|
||||
[16]=132000000,
|
||||
[17]=138000000,
|
||||
[18]=122000000,
|
||||
[19]=124000000,
|
||||
[20]=137000000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
settings=
|
||||
{
|
||||
["own_id"]=1,
|
||||
["grp_id"]=1,
|
||||
["callsign"]="",
|
||||
}
|
||||
@ -0,0 +1,880 @@
|
||||
SAT_SYS_GLONASS = 0
|
||||
SAT_SYS_GPS = 1
|
||||
|
||||
almanac = {}
|
||||
--GPS
|
||||
almanac[0] = {}
|
||||
almanac[0]["System"] = SAT_SYS_GPS
|
||||
almanac[0]["Number"] = 1
|
||||
almanac[0]["Orbital"] = "F"
|
||||
almanac[0]["Eccentricity"] = 6.294000e-003
|
||||
almanac[0]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[0]["Orbital_Inclination"] = 9.885676e-001
|
||||
almanac[0]["Rate_of_Right_Ascen"] = -7.862702e-009
|
||||
almanac[0]["SQRT_A"] = 5.153700e+003
|
||||
almanac[0]["Right_Ascen_at_Week"] = 8.096750e-001
|
||||
almanac[0]["Argument_of_Perigee"] = -1.777773e+000
|
||||
almanac[0]["Mean_Anom"] = -5.315745e-001
|
||||
almanac[0]["week"] = 1390
|
||||
|
||||
almanac[1] = {}
|
||||
almanac[1]["System"] = SAT_SYS_GPS
|
||||
almanac[1]["Number"] = 2
|
||||
almanac[1]["Orbital"] = "C"
|
||||
almanac[1]["Eccentricity"] = 8.794000e-003
|
||||
almanac[1]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[1]["Orbital_Inclination"] = 9.487811e-001
|
||||
almanac[1]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[1]["SQRT_A"] = 5.153700e+003
|
||||
almanac[1]["Right_Ascen_at_Week"] = -1.329172e+000
|
||||
almanac[1]["Argument_of_Perigee"] = 2.138637e+000
|
||||
almanac[1]["Mean_Anom"] = 7.311702e-001
|
||||
almanac[1]["week"] = 1390
|
||||
|
||||
almanac[2] = {}
|
||||
almanac[2]["System"] = SAT_SYS_GPS
|
||||
almanac[2]["Number"] = 3
|
||||
almanac[2]["Orbital"] = "F"
|
||||
almanac[2]["Eccentricity"] = 8.424000e-003
|
||||
almanac[2]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[2]["Orbital_Inclination"] = 9.262804e-001
|
||||
almanac[2]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[2]["SQRT_A"] = 5.153600e+003
|
||||
almanac[2]["Right_Ascen_at_Week"] = -2.341514e+000
|
||||
almanac[2]["Argument_of_Perigee"] = 6.749357e-001
|
||||
almanac[2]["Mean_Anom"] = -2.296153e-001
|
||||
almanac[2]["week"] = 1389
|
||||
|
||||
almanac[3] = {}
|
||||
almanac[3]["System"] = SAT_SYS_GPS
|
||||
almanac[3]["Number"] = 4
|
||||
almanac[3]["Orbital"] = "D"
|
||||
almanac[3]["Eccentricity"] = 7.413000e-003
|
||||
almanac[3]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[3]["Orbital_Inclination"] = 9.482889e-001
|
||||
almanac[3]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[3]["SQRT_A"] = 5.153600e+003
|
||||
almanac[3]["Right_Ascen_at_Week"] = -1.309589e+000
|
||||
almanac[3]["Argument_of_Perigee"] = 1.623504e-001
|
||||
almanac[3]["Mean_Anom"] = -3.022943e+000
|
||||
almanac[3]["week"] = 1390
|
||||
|
||||
almanac[4] = {}
|
||||
almanac[4]["System"] = SAT_SYS_GPS
|
||||
almanac[4]["Number"] = 5
|
||||
almanac[4]["Orbital"] = "B"
|
||||
almanac[4]["Eccentricity"] = 7.432000e-003
|
||||
almanac[4]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[4]["Orbital_Inclination"] = 9.387437e-001
|
||||
almanac[4]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[4]["SQRT_A"] = 5.153700e+003
|
||||
almanac[4]["Right_Ascen_at_Week"] = 2.779487e+000
|
||||
almanac[4]["Argument_of_Perigee"] = 1.099033e+000
|
||||
almanac[4]["Mean_Anom"] = 2.970984e+000
|
||||
almanac[4]["week"] = 1390
|
||||
|
||||
almanac[5] = {}
|
||||
almanac[5]["System"] = SAT_SYS_GPS
|
||||
almanac[5]["Number"] = 6
|
||||
almanac[5]["Orbital"] = "C"
|
||||
almanac[5]["Eccentricity"] = 6.020000e-003
|
||||
almanac[5]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[5]["Orbital_Inclination"] = 9.337591e-001
|
||||
almanac[5]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[5]["SQRT_A"] = 5.153600e+003
|
||||
almanac[5]["Right_Ascen_at_Week"] = -2.407627e+000
|
||||
almanac[5]["Argument_of_Perigee"] = -1.788263e+000
|
||||
almanac[5]["Mean_Anom"] = -2.149877e+000
|
||||
almanac[5]["week"] = 1390
|
||||
|
||||
almanac[6] = {}
|
||||
almanac[6]["System"] = SAT_SYS_GPS
|
||||
almanac[6]["Number"] = 7
|
||||
almanac[6]["Orbital"] = "C"
|
||||
almanac[6]["Eccentricity"] = 1.052400e-002
|
||||
almanac[6]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[6]["Orbital_Inclination"] = 9.353229e-001
|
||||
almanac[6]["Rate_of_Right_Ascen"] = -8.080868e-009
|
||||
almanac[6]["SQRT_A"] = 5.153700e+003
|
||||
almanac[6]["Right_Ascen_at_Week"] = -2.433580e+000
|
||||
almanac[6]["Argument_of_Perigee"] = -1.767301e+000
|
||||
almanac[6]["Mean_Anom"] = -3.141503e+000
|
||||
almanac[6]["week"] = 1390
|
||||
|
||||
almanac[7] = {}
|
||||
almanac[7]["System"] = SAT_SYS_GPS
|
||||
almanac[7]["Number"] = 8
|
||||
almanac[7]["Orbital"] = "A"
|
||||
almanac[7]["Eccentricity"] = 9.822000e-003
|
||||
almanac[7]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[7]["Orbital_Inclination"] = 9.741390e-001
|
||||
almanac[7]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[7]["SQRT_A"] = 5.153600e+003
|
||||
almanac[7]["Right_Ascen_at_Week"] = 1.857849e+000
|
||||
almanac[7]["Argument_of_Perigee"] = 2.674034e+000
|
||||
almanac[7]["Mean_Anom"] = -2.009745e+000
|
||||
almanac[7]["week"] = 1390
|
||||
|
||||
almanac[8] = {}
|
||||
almanac[8]["System"] = SAT_SYS_GPS
|
||||
almanac[8]["Number"] = 9
|
||||
almanac[8]["Orbital"] = "A"
|
||||
almanac[8]["Eccentricity"] = 1.839300e-002
|
||||
almanac[8]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[8]["Orbital_Inclination"] = 9.617541e-001
|
||||
almanac[8]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[8]["SQRT_A"] = 5.153600e+003
|
||||
almanac[8]["Right_Ascen_at_Week"] = 1.777005e+000
|
||||
almanac[8]["Argument_of_Perigee"] = 1.274962e+000
|
||||
almanac[8]["Mean_Anom"] = -2.349578e+000
|
||||
almanac[8]["week"] = 1390
|
||||
|
||||
almanac[9] = {}
|
||||
almanac[9]["System"] = SAT_SYS_GPS
|
||||
almanac[9]["Number"] = 10
|
||||
almanac[9]["Orbital"] = "E"
|
||||
almanac[9]["Eccentricity"] = 7.061000e-003
|
||||
almanac[9]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[9]["Orbital_Inclination"] = 9.728876e-001
|
||||
almanac[9]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[9]["SQRT_A"] = 5.153600e+003
|
||||
almanac[9]["Right_Ascen_at_Week"] = -2.563014e-001
|
||||
almanac[9]["Argument_of_Perigee"] = 4.377980e-001
|
||||
almanac[9]["Mean_Anom"] = 1.210716e+000
|
||||
almanac[9]["week"] = 1390
|
||||
|
||||
almanac[10] = {}
|
||||
almanac[10]["System"] = SAT_SYS_GPS
|
||||
almanac[10]["Number"] = 11
|
||||
almanac[10]["Orbital"] = "D"
|
||||
almanac[10]["Eccentricity"] = 5.744000e-003
|
||||
almanac[10]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[10]["Orbital_Inclination"] = 8.959309e-001
|
||||
almanac[10]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[10]["SQRT_A"] = 5.153600e+003
|
||||
almanac[10]["Right_Ascen_at_Week"] = -1.478816e+000
|
||||
almanac[10]["Argument_of_Perigee"] = 3.750011e-001
|
||||
almanac[10]["Mean_Anom"] = -1.522048e+000
|
||||
almanac[10]["week"] = 1390
|
||||
|
||||
almanac[11] = {}
|
||||
almanac[11]["System"] = SAT_SYS_GPS
|
||||
almanac[11]["Number"] = 13
|
||||
almanac[11]["Orbital"] = "F"
|
||||
almanac[11]["Eccentricity"] = 3.088000e-003
|
||||
almanac[11]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[11]["Orbital_Inclination"] = 9.927564e-001
|
||||
almanac[11]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[11]["SQRT_A"] = 5.153700e+003
|
||||
almanac[11]["Right_Ascen_at_Week"] = 7.956600e-001
|
||||
almanac[11]["Argument_of_Perigee"] = 1.279395e+000
|
||||
almanac[11]["Mean_Anom"] = 1.004349e+000
|
||||
almanac[11]["week"] = 1390
|
||||
|
||||
almanac[12] = {}
|
||||
almanac[12]["System"] = SAT_SYS_GPS
|
||||
almanac[12]["Number"] = 14
|
||||
almanac[12]["Orbital"] = "F"
|
||||
almanac[12]["Eccentricity"] = 2.591000e-003
|
||||
almanac[12]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[12]["Orbital_Inclination"] = 9.868729e-001
|
||||
almanac[12]["Rate_of_Right_Ascen"] = -7.885391e-009
|
||||
almanac[12]["SQRT_A"] = 5.153600e+003
|
||||
almanac[12]["Right_Ascen_at_Week"] = 7.819592e-001
|
||||
almanac[12]["Argument_of_Perigee"] = -2.158621e+000
|
||||
almanac[12]["Mean_Anom"] = 5.412611e-001
|
||||
almanac[12]["week"] = 1390
|
||||
|
||||
almanac[13] = {}
|
||||
almanac[13]["System"] = SAT_SYS_GPS
|
||||
almanac[13]["Number"] = 15
|
||||
almanac[13]["Orbital"] = "D"
|
||||
almanac[13]["Eccentricity"] = 9.828000e-003
|
||||
almanac[13]["Time_of_Applicability"] = 3.194880e+005
|
||||
almanac[13]["Orbital_Inclination"] = 9.554204e-001
|
||||
almanac[13]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[13]["SQRT_A"] = 5.153600e+003
|
||||
almanac[13]["Right_Ascen_at_Week"] = -1.123869e+000
|
||||
almanac[13]["Argument_of_Perigee"] = 2.690266e+000
|
||||
almanac[13]["Mean_Anom"] = 2.220476e+000
|
||||
almanac[13]["week"] = 1389
|
||||
|
||||
almanac[14] = {}
|
||||
almanac[14]["System"] = SAT_SYS_GPS
|
||||
almanac[14]["Number"] = 16
|
||||
almanac[14]["Orbital"] = "B"
|
||||
almanac[14]["Eccentricity"] = 3.494000e-003
|
||||
almanac[14]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[14]["Orbital_Inclination"] = 9.629340e-001
|
||||
almanac[14]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[14]["SQRT_A"] = 5.153700e+003
|
||||
almanac[14]["Right_Ascen_at_Week"] = 2.873124e+000
|
||||
almanac[14]["Argument_of_Perigee"] = -7.819243e-001
|
||||
almanac[14]["Mean_Anom"] = 2.623629e+000
|
||||
almanac[14]["week"] = 1390
|
||||
|
||||
almanac[15] = {}
|
||||
almanac[15]["System"] = SAT_SYS_GPS
|
||||
almanac[15]["Number"] = 17
|
||||
almanac[15]["Orbital"] = "C"
|
||||
almanac[15]["Eccentricity"] = 2.141000e-003
|
||||
almanac[15]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[15]["Orbital_Inclination"] = 9.601170e-001
|
||||
almanac[15]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[15]["SQRT_A"] = 5.153700e+003
|
||||
almanac[15]["Right_Ascen_at_Week"] = -2.371499e+000
|
||||
almanac[15]["Argument_of_Perigee"] = 3.087694e+000
|
||||
almanac[15]["Mean_Anom"] = 1.611217e+000
|
||||
almanac[15]["week"] = 1390
|
||||
|
||||
almanac[16] = {}
|
||||
almanac[16]["System"] = SAT_SYS_GPS
|
||||
almanac[16]["Number"] = 18
|
||||
almanac[16]["Orbital"] = "E"
|
||||
almanac[16]["Eccentricity"] = 7.636000e-003
|
||||
almanac[16]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[16]["Orbital_Inclination"] = 9.569597e-001
|
||||
almanac[16]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[16]["SQRT_A"] = 5.153700e+003
|
||||
almanac[16]["Right_Ascen_at_Week"] = -2.359858e-001
|
||||
almanac[16]["Argument_of_Perigee"] = -2.649216e+000
|
||||
almanac[16]["Mean_Anom"] = 2.675029e+000
|
||||
almanac[16]["week"] = 1390
|
||||
|
||||
almanac[17] = {}
|
||||
almanac[17]["System"] = SAT_SYS_GPS
|
||||
almanac[17]["Number"] = 19
|
||||
almanac[17]["Orbital"] = "C"
|
||||
almanac[17]["Eccentricity"] = 3.602000e-003
|
||||
almanac[17]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[17]["Orbital_Inclination"] = 9.580209e-001
|
||||
almanac[17]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[17]["SQRT_A"] = 5.153600e+003
|
||||
almanac[17]["Right_Ascen_at_Week"] = -2.312385e+000
|
||||
almanac[17]["Argument_of_Perigee"] = -1.161079e+000
|
||||
almanac[17]["Mean_Anom"] = 1.310619e+000
|
||||
almanac[17]["week"] = 1390
|
||||
|
||||
almanac[18] = {}
|
||||
almanac[18]["System"] = SAT_SYS_GPS
|
||||
almanac[18]["Number"] = 20
|
||||
almanac[18]["Orbital"] = "E"
|
||||
almanac[18]["Eccentricity"] = 2.796000e-003
|
||||
almanac[18]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[18]["Orbital_Inclination"] = 9.564693e-001
|
||||
almanac[18]["Rate_of_Right_Ascen"] = -7.908080e-009
|
||||
almanac[18]["SQRT_A"] = 5.153600e+003
|
||||
almanac[18]["Right_Ascen_at_Week"] = -2.889565e-001
|
||||
almanac[18]["Argument_of_Perigee"] = 1.379612e+000
|
||||
almanac[18]["Mean_Anom"] = 2.461750e+000
|
||||
almanac[18]["week"] = 1390
|
||||
|
||||
almanac[19] = {}
|
||||
almanac[19]["System"] = SAT_SYS_GPS
|
||||
almanac[19]["Number"] = 21
|
||||
almanac[19]["Orbital"] = "D"
|
||||
almanac[19]["Eccentricity"] = 1.162900e-002
|
||||
almanac[19]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[19]["Orbital_Inclination"] = 9.418592e-001
|
||||
almanac[19]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[19]["SQRT_A"] = 5.153600e+003
|
||||
almanac[19]["Right_Ascen_at_Week"] = -1.289972e+000
|
||||
almanac[19]["Argument_of_Perigee"] = -2.923686e+000
|
||||
almanac[19]["Mean_Anom"] = -2.349194e+000
|
||||
almanac[19]["week"] = 1390
|
||||
|
||||
almanac[20] = {}
|
||||
almanac[20]["System"] = SAT_SYS_GPS
|
||||
almanac[20]["Number"] = 22
|
||||
almanac[20]["Orbital"] = "E"
|
||||
almanac[20]["Eccentricity"] = 4.893000e-003
|
||||
almanac[20]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[20]["Orbital_Inclination"] = 9.545093e-001
|
||||
almanac[20]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[20]["SQRT_A"] = 5.153600e+003
|
||||
almanac[20]["Right_Ascen_at_Week"] = -2.280969e-001
|
||||
almanac[20]["Argument_of_Perigee"] = -1.674502e+000
|
||||
almanac[20]["Mean_Anom"] = 1.106852e+000
|
||||
almanac[20]["week"] = 1390
|
||||
|
||||
almanac[21] = {}
|
||||
almanac[21]["System"] = SAT_SYS_GPS
|
||||
almanac[21]["Number"] = 23
|
||||
almanac[21]["Orbital"] = "F"
|
||||
almanac[21]["Eccentricity"] = 4.822000e-003
|
||||
almanac[21]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[21]["Orbital_Inclination"] = 9.691247e-001
|
||||
almanac[21]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[21]["SQRT_A"] = 5.153700e+003
|
||||
almanac[21]["Right_Ascen_at_Week"] = 7.667399e-001
|
||||
almanac[21]["Argument_of_Perigee"] = 2.497634e+000
|
||||
almanac[21]["Mean_Anom"] = 3.184700e-001
|
||||
almanac[21]["week"] = 1390
|
||||
|
||||
almanac[22] = {}
|
||||
almanac[22]["System"] = SAT_SYS_GPS
|
||||
almanac[22]["Number"] = 24
|
||||
almanac[22]["Orbital"] = "D"
|
||||
almanac[22]["Eccentricity"] = 9.277000e-003
|
||||
almanac[22]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[22]["Orbital_Inclination"] = 9.585183e-001
|
||||
almanac[22]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[22]["SQRT_A"] = 5.153900e+003
|
||||
almanac[22]["Right_Ascen_at_Week"] = -1.274840e+000
|
||||
almanac[22]["Argument_of_Perigee"] = -8.815651e-001
|
||||
almanac[22]["Mean_Anom"] = -1.695551e+000
|
||||
almanac[22]["week"] = 1390
|
||||
|
||||
almanac[23] = {}
|
||||
almanac[23]["System"] = SAT_SYS_GPS
|
||||
almanac[23]["Number"] = 25
|
||||
almanac[23]["Orbital"] = "A"
|
||||
almanac[23]["Eccentricity"] = 1.257400e-002
|
||||
almanac[23]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[23]["Orbital_Inclination"] = 9.551027e-001
|
||||
almanac[23]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[23]["SQRT_A"] = 5.153600e+003
|
||||
almanac[23]["Right_Ascen_at_Week"] = 1.721853e+000
|
||||
almanac[23]["Argument_of_Perigee"] = -1.329870e+000
|
||||
almanac[23]["Mean_Anom"] = -1.769623e+000
|
||||
almanac[23]["week"] = 1390
|
||||
|
||||
almanac[24] = {}
|
||||
almanac[24]["System"] = SAT_SYS_GPS
|
||||
almanac[24]["Number"] = 26
|
||||
almanac[24]["Orbital"] = "F"
|
||||
almanac[24]["Eccentricity"] = 1.745700e-002
|
||||
almanac[24]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[24]["Orbital_Inclination"] = 9.908749e-001
|
||||
almanac[24]["Rate_of_Right_Ascen"] = -7.840012e-009
|
||||
almanac[24]["SQRT_A"] = 5.153700e+003
|
||||
almanac[24]["Right_Ascen_at_Week"] = 7.961836e-001
|
||||
almanac[24]["Argument_of_Perigee"] = 8.161502e-001
|
||||
almanac[24]["Mean_Anom"] = -5.841961e-001
|
||||
almanac[24]["week"] = 1390
|
||||
|
||||
almanac[25] = {}
|
||||
almanac[25]["System"] = SAT_SYS_GPS
|
||||
almanac[25]["Number"] = 27
|
||||
almanac[25]["Orbital"] = "A"
|
||||
almanac[25]["Eccentricity"] = 1.991000e-002
|
||||
almanac[25]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[25]["Orbital_Inclination"] = 9.596563e-001
|
||||
almanac[25]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[25]["SQRT_A"] = 5.153600e+003
|
||||
almanac[25]["Right_Ascen_at_Week"] = 1.754124e+000
|
||||
almanac[25]["Argument_of_Perigee"] = -1.900854e+000
|
||||
almanac[25]["Mean_Anom"] = 3.046487e+000
|
||||
almanac[25]["week"] = 1390
|
||||
|
||||
almanac[26] = {}
|
||||
almanac[26]["System"] = SAT_SYS_GPS
|
||||
almanac[26]["Number"] = 28
|
||||
almanac[26]["Orbital"] = "B"
|
||||
almanac[26]["Eccentricity"] = 1.162800e-002
|
||||
almanac[26]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[26]["Orbital_Inclination"] = 9.610106e-001
|
||||
almanac[26]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[26]["SQRT_A"] = 5.153600e+003
|
||||
almanac[26]["Right_Ascen_at_Week"] = 2.882583e+000
|
||||
almanac[26]["Argument_of_Perigee"] = -2.242868e+000
|
||||
almanac[26]["Mean_Anom"] = 1.860642e+000
|
||||
almanac[26]["week"] = 1390
|
||||
|
||||
almanac[27] = {}
|
||||
almanac[27]["System"] = SAT_SYS_GPS
|
||||
almanac[27]["Number"] = 29
|
||||
almanac[27]["Orbital"] = "F"
|
||||
almanac[27]["Eccentricity"] = 9.462000e-003
|
||||
almanac[27]["Time_of_Applicability"] = 1.474560e+005
|
||||
almanac[27]["Orbital_Inclination"] = 9.874838e-001
|
||||
almanac[27]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[27]["SQRT_A"] = 5.153700e+003
|
||||
almanac[27]["Right_Ascen_at_Week"] = 7.647503e-001
|
||||
almanac[27]["Argument_of_Perigee"] = -8.614589e-001
|
||||
almanac[27]["Mean_Anom"] = -4.488983e-001
|
||||
almanac[27]["week"] = 1390
|
||||
|
||||
almanac[28] = {}
|
||||
almanac[28]["System"] = SAT_SYS_GPS
|
||||
almanac[28]["Number"] = 30
|
||||
almanac[28]["Orbital"] = "B"
|
||||
almanac[28]["Eccentricity"] = 9.296000e-003
|
||||
almanac[28]["Time_of_Applicability"] = 5.898240e+005
|
||||
almanac[28]["Orbital_Inclination"] = 9.452992e-001
|
||||
almanac[28]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[28]["SQRT_A"] = 5.153600e+003
|
||||
almanac[28]["Right_Ascen_at_Week"] = 2.826698e+000
|
||||
almanac[28]["Argument_of_Perigee"] = 1.306413e+000
|
||||
almanac[28]["Mean_Anom"] = 2.148725e+000
|
||||
almanac[28]["week"] = 1390
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--GLONASS
|
||||
--1 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 1-8
|
||||
almanac[29] = {}
|
||||
almanac[29]["System"] = SAT_SYS_GLONASS
|
||||
almanac[29]["Number"] = 1
|
||||
almanac[29]["Orbital"] = 1
|
||||
almanac[29]["GLONASS_Data"] = {}
|
||||
almanac[29]["GLONASS_Data"]["NKU_Number"] = 796
|
||||
almanac[29]["GLONASS_Data"]["Cosmos_Number"] = 2411
|
||||
almanac[29]["Eccentricity"] = 1.184000e-003
|
||||
almanac[29]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[29]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[29]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[29]["SQRT_A"] = 5.050500e+003
|
||||
almanac[29]["Right_Ascen_at_Week"] = 5.979807e+000
|
||||
almanac[29]["Argument_of_Perigee"] = 2.622634e+000
|
||||
almanac[29]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[29]["week"] = 1390
|
||||
almanac[29]["Commit_date"] = "06.02.2005"
|
||||
almanac[29]["Life_dates"] = {}
|
||||
|
||||
almanac[30] = {}
|
||||
almanac[30]["System"] = SAT_SYS_GLONASS
|
||||
almanac[30]["Number"] = 2
|
||||
almanac[30]["Orbital"] = 1
|
||||
almanac[30]["GLONASS_Data"] = {}
|
||||
almanac[30]["GLONASS_Data"]["NKU_Number"] = 794
|
||||
almanac[30]["GLONASS_Data"]["Cosmos_Number"] = 2401
|
||||
almanac[30]["Eccentricity"] = 4.486000e-003
|
||||
almanac[30]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[30]["Orbital_Inclination"] = 1.128459e+000
|
||||
almanac[30]["Rate_of_Right_Ascen"] = -6.759654e-009
|
||||
almanac[30]["SQRT_A"] = 5.050500e+003
|
||||
almanac[30]["Right_Ascen_at_Week"] = 5.997871e+000
|
||||
almanac[30]["Argument_of_Perigee"] = 1.709531e+000
|
||||
almanac[30]["Mean_Anom"] = -5.367633e+000
|
||||
almanac[30]["week"] = 1390
|
||||
almanac[30]["Commit_date"] = "02.02.2004"
|
||||
almanac[30]["Life_dates"] = {}
|
||||
|
||||
almanac[31] = {}
|
||||
almanac[31]["System"] = SAT_SYS_GLONASS
|
||||
almanac[31]["Number"] = 3
|
||||
almanac[31]["Orbital"] = 1
|
||||
almanac[31]["GLONASS_Data"] = {}
|
||||
almanac[31]["GLONASS_Data"]["NKU_Number"] = 789
|
||||
almanac[31]["GLONASS_Data"]["Cosmos_Number"] = 2381
|
||||
almanac[31]["Eccentricity"] = 2.459000e-003
|
||||
almanac[31]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[31]["Orbital_Inclination"] = 1.122958e+000
|
||||
almanac[31]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[31]["SQRT_A"] = 5.050500e+003
|
||||
almanac[31]["Right_Ascen_at_Week"] = 5.960713e+000
|
||||
almanac[31]["Argument_of_Perigee"] = -2.683407e+000
|
||||
almanac[31]["Mean_Anom"] = -1.791788e+000
|
||||
almanac[31]["week"] = 1390
|
||||
almanac[31]["Commit_date"] = "04.01.2002"
|
||||
almanac[31]["Life_dates"] = {}
|
||||
|
||||
almanac[32] = {}
|
||||
almanac[32]["System"] = SAT_SYS_GLONASS
|
||||
almanac[32]["Number"] = 4
|
||||
almanac[32]["Orbital"] = 1
|
||||
almanac[32]["GLONASS_Data"] = {}
|
||||
almanac[32]["GLONASS_Data"]["NKU_Number"] = 795
|
||||
almanac[29]["GLONASS_Data"]["Cosmos_Number"] = 2403
|
||||
almanac[32]["Eccentricity"] = 4.054000e-003
|
||||
almanac[32]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[32]["Orbital_Inclination"] = 1.128543e+000
|
||||
almanac[32]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[32]["SQRT_A"] = 5.050500e+003
|
||||
almanac[32]["Right_Ascen_at_Week"] = 5.998081e+000
|
||||
almanac[32]["Argument_of_Perigee"] = 1.497160e+000
|
||||
almanac[32]["Mean_Anom"] = -4.293681e-001
|
||||
almanac[32]["week"] = 1390
|
||||
almanac[32]["Commit_date"] = "29.01.2004"
|
||||
almanac[32]["Life_dates"] = {}
|
||||
|
||||
almanac[33] = {}
|
||||
almanac[33]["System"] = SAT_SYS_GLONASS
|
||||
almanac[33]["Number"] = 5
|
||||
almanac[33]["Orbital"] = 1
|
||||
almanac[33]["GLONASS_Data"] = {}
|
||||
almanac[33]["GLONASS_Data"]["NKU_Number"] = 711
|
||||
almanac[33]["GLONASS_Data"]["Cosmos_Number"] = 2382
|
||||
almanac[33]["Eccentricity"] = 7.040000e-004
|
||||
almanac[33]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[33]["Orbital_Inclination"] = 1.122886e+000
|
||||
almanac[33]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[33]["SQRT_A"] = 5.050600e+003
|
||||
almanac[33]["Right_Ascen_at_Week"] = 5.960713e+000
|
||||
almanac[33]["Argument_of_Perigee"] = 2.740933e+000
|
||||
almanac[33]["Mean_Anom"] = -2.523604e+000
|
||||
almanac[33]["week"] = 1390
|
||||
almanac[33]["Commit_date"] = "13.02.2003"
|
||||
almanac[33]["Life_dates"] = {}
|
||||
|
||||
almanac[34] = {}
|
||||
almanac[34]["System"] = SAT_SYS_GLONASS
|
||||
almanac[34]["Number"] = 6
|
||||
almanac[34]["Orbital"] = 1
|
||||
almanac[34]["GLONASS_Data"] = {}
|
||||
almanac[34]["GLONASS_Data"]["NKU_Number"] = 701
|
||||
almanac[34]["GLONASS_Data"]["Cosmos_Number"] = 2404
|
||||
almanac[34]["Eccentricity"] = 4.766000e-003
|
||||
almanac[34]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[34]["Orbital_Inclination"] = 1.128276e+000
|
||||
almanac[34]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[34]["SQRT_A"] = 5.050500e+003
|
||||
almanac[34]["Right_Ascen_at_Week"] = 5.997906e+000
|
||||
almanac[34]["Argument_of_Perigee"] = 1.802417e+000
|
||||
almanac[34]["Mean_Anom"] = -2.426512e+000
|
||||
almanac[34]["week"] = 1390
|
||||
almanac[34]["Commit_date"] = "08.12.2004"
|
||||
almanac[34]["Life_dates"] = {}
|
||||
|
||||
almanac[35] = {}
|
||||
almanac[35]["System"] = SAT_SYS_GLONASS
|
||||
almanac[35]["Number"] = 7
|
||||
almanac[35]["Orbital"] = 1
|
||||
almanac[35]["GLONASS_Data"] = {}
|
||||
almanac[35]["GLONASS_Data"]["NKU_Number"] = 712
|
||||
almanac[35]["GLONASS_Data"]["Cosmos_Number"] = 2413
|
||||
almanac[35]["Eccentricity"] = 7.570000e-004
|
||||
almanac[35]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[35]["Orbital_Inclination"] = 1.126344e+000
|
||||
almanac[35]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[35]["SQRT_A"] = 5.050500e+003
|
||||
almanac[35]["Right_Ascen_at_Week"] = 5.979388e+000
|
||||
almanac[35]["Argument_of_Perigee"] = 2.566068e+000
|
||||
almanac[35]["Mean_Anom"] = -3.921228e+000
|
||||
almanac[35]["week"] = 1390
|
||||
almanac[35]["Commit_date"] = "07.10.2005"
|
||||
almanac[35]["Life_dates"] = {}
|
||||
|
||||
almanac[36] = {}
|
||||
almanac[36]["System"] = SAT_SYS_GLONASS
|
||||
almanac[36]["GLONASS_Data"] = {}
|
||||
almanac[36]["Number"] = 8
|
||||
almanac[36]["Orbital"] = 1
|
||||
almanac[36]["GLONASS_Data"] = {}
|
||||
almanac[36]["GLONASS_Data"]["NKU_Number"] = 797
|
||||
almanac[36]["GLONASS_Data"]["Cosmos_Number"] = 2412
|
||||
almanac[36]["Eccentricity"] = 4.060000e-004
|
||||
almanac[36]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[36]["Orbital_Inclination"] = 1.126564e+000
|
||||
almanac[36]["Rate_of_Right_Ascen"] = -6.785834e-009
|
||||
almanac[36]["SQRT_A"] = 5.050600e+003
|
||||
almanac[36]["Right_Ascen_at_Week"] = 5.980069e+000
|
||||
almanac[36]["Argument_of_Perigee"] = 2.673633e+000
|
||||
almanac[36]["Mean_Anom"] = -4.812026e+000
|
||||
almanac[36]["week"] = 1390
|
||||
almanac[36]["Commit_date"] = "06.02.2005"
|
||||
almanac[36]["Life_dates"] = {}
|
||||
|
||||
--3 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 17-24
|
||||
almanac[37] = {}
|
||||
almanac[37]["System"] = SAT_SYS_GLONASS
|
||||
almanac[37]["Number"] = 17
|
||||
almanac[37]["Orbital"] = 3
|
||||
almanac[37]["GLONASS_Data"] = {}
|
||||
almanac[37]["GLONASS_Data"]["NKU_Number"] = 787
|
||||
almanac[37]["GLONASS_Data"]["Cosmos_Number"] = 2375
|
||||
almanac[37]["Eccentricity"] = 5.670000e-004
|
||||
almanac[37]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[37]["Orbital_Inclination"] = 1.126524e+000
|
||||
almanac[37]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[37]["SQRT_A"] = 5.050500e+003
|
||||
almanac[37]["Right_Ascen_at_Week"] = 3.895554e+000
|
||||
almanac[37]["Argument_of_Perigee"] = 6.085085e-001
|
||||
almanac[37]["Mean_Anom"] = -2.977407e+000
|
||||
almanac[37]["week"] = 1390
|
||||
almanac[37]["Commit_date"] = "04.11.2000"
|
||||
almanac[37]["Life_dates"] = {}
|
||||
|
||||
|
||||
almanac[38] = {}
|
||||
almanac[38]["System"] = SAT_SYS_GLONASS
|
||||
almanac[38]["Number"] = 18
|
||||
almanac[38]["Orbital"] = 3
|
||||
almanac[38]["GLONASS_Data"] = {}
|
||||
almanac[38]["GLONASS_Data"]["NKU_Number"] = 783
|
||||
almanac[38]["GLONASS_Data"]["Cosmos_Number"] = 2374
|
||||
almanac[38]["Eccentricity"] = 4.520000e-003
|
||||
almanac[38]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[38]["Orbital_Inclination"] = 1.126239e+000
|
||||
almanac[38]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[38]["SQRT_A"] = 5.050600e+003
|
||||
almanac[38]["Right_Ascen_at_Week"] = 3.894071e+000
|
||||
almanac[38]["Argument_of_Perigee"] = -2.509589e+000
|
||||
almanac[38]["Mean_Anom"] = -1.020057e+000
|
||||
almanac[38]["week"] = 1390
|
||||
almanac[38]["Commit_date"] = "05.01.2001"
|
||||
almanac[38]["Life_dates"] = {}
|
||||
|
||||
almanac[39] = {}
|
||||
almanac[39]["System"] = SAT_SYS_GLONASS
|
||||
almanac[39]["Number"] = 19
|
||||
almanac[39]["Orbital"] = 3
|
||||
almanac[39]["GLONASS_Data"] = {}
|
||||
almanac[39]["GLONASS_Data"]["NKU_Number"] = 798
|
||||
almanac[39]["GLONASS_Data"]["Cosmos_Number"] = 2417
|
||||
almanac[39]["Eccentricity"] = 2.023000e-003
|
||||
almanac[39]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[39]["Orbital_Inclination"] = 1.132205e+000
|
||||
almanac[39]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[39]["SQRT_A"] = 5.050500e+003
|
||||
almanac[39]["Right_Ascen_at_Week"] = 3.884018e+000
|
||||
almanac[39]["Argument_of_Perigee"] = 2.718313e+000
|
||||
almanac[39]["Mean_Anom"] = -3.933620e-001
|
||||
almanac[39]["week"] = 1390
|
||||
almanac[39]["Commit_date"] = "22.01.2006"
|
||||
almanac[39]["Life_dates"] = {}
|
||||
|
||||
almanac[40] = {}
|
||||
almanac[40]["System"] = SAT_SYS_GLONASS
|
||||
almanac[40]["Number"] = 20
|
||||
almanac[40]["Orbital"] = 3
|
||||
almanac[40]["GLONASS_Data"] = {}
|
||||
almanac[40]["GLONASS_Data"]["NKU_Number"] = 793
|
||||
almanac[40]["GLONASS_Data"]["Cosmos_Number"] = 2396
|
||||
almanac[40]["Eccentricity"] = 1.822000e-003
|
||||
almanac[40]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[40]["Orbital_Inclination"] = 1.129789e+000
|
||||
almanac[40]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[40]["SQRT_A"] = 5.050500e+003
|
||||
almanac[40]["Right_Ascen_at_Week"] = 3.896863e+000
|
||||
almanac[40]["Argument_of_Perigee"] = 2.723776e+000
|
||||
almanac[40]["Mean_Anom"] = -1.193647e+000
|
||||
almanac[40]["week"] = 1390
|
||||
almanac[40]["Commit_date"] = "31.01.2003"
|
||||
almanac[40]["Life_dates"] = {}
|
||||
|
||||
almanac[41] = {}
|
||||
almanac[41]["System"] = SAT_SYS_GLONASS
|
||||
almanac[41]["Number"] = 21
|
||||
almanac[41]["Orbital"] = 3
|
||||
almanac[41]["GLONASS_Data"] = {}
|
||||
almanac[41]["GLONASS_Data"]["NKU_Number"] = 792
|
||||
almanac[41]["GLONASS_Data"]["Cosmos_Number"] = 2395
|
||||
almanac[41]["Eccentricity"] = 5.290000e-004
|
||||
almanac[41]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[41]["Orbital_Inclination"] = 1.129957e+000
|
||||
almanac[41]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[41]["SQRT_A"] = 5.050500e+003
|
||||
almanac[41]["Right_Ascen_at_Week"] = 3.897806e+000
|
||||
almanac[41]["Argument_of_Perigee"] = -9.519367e-001
|
||||
almanac[41]["Mean_Anom"] = -4.578920e+000
|
||||
almanac[41]["week"] = 1390
|
||||
almanac[41]["Commit_date"] = "31.01.2003"
|
||||
almanac[41]["Life_dates"] = {}
|
||||
|
||||
almanac[42] = {}
|
||||
almanac[42]["System"] = SAT_SYS_GLONASS
|
||||
almanac[42]["Number"] = 22
|
||||
almanac[42]["Orbital"] = 3
|
||||
almanac[42]["GLONASS_Data"] = {}
|
||||
almanac[42]["GLONASS_Data"]["NKU_Number"] = 791
|
||||
almanac[42]["GLONASS_Data"]["Cosmos_Number"] = 2394
|
||||
almanac[42]["Eccentricity"] = 9.200000e-005
|
||||
almanac[42]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[42]["Orbital_Inclination"] = 1.129742e+000
|
||||
almanac[42]["Rate_of_Right_Ascen"] = -6.740456e-009
|
||||
almanac[42]["SQRT_A"] = 5.050500e+003
|
||||
almanac[42]["Right_Ascen_at_Week"] = 3.897404e+000
|
||||
almanac[42]["Argument_of_Perigee"] = 2.518211e+000
|
||||
almanac[42]["Mean_Anom"] = -2.530167e+000
|
||||
almanac[42]["week"] = 1390
|
||||
almanac[42]["Commit_date"] = "21.01.2003"
|
||||
almanac[42]["Life_dates"] = {}
|
||||
|
||||
almanac[43] = {}
|
||||
almanac[43]["System"] = SAT_SYS_GLONASS
|
||||
almanac[43]["Number"] = 23
|
||||
almanac[43]["Orbital"] = 3
|
||||
almanac[43]["GLONASS_Data"] = {}
|
||||
almanac[43]["GLONASS_Data"]["NKU_Number"] = 714
|
||||
almanac[43]["GLONASS_Data"]["Cosmos_Number"] = 2419
|
||||
almanac[43]["Eccentricity"] = 8.730000e-004
|
||||
almanac[43]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[43]["Orbital_Inclination"] = 1.132105e+000
|
||||
almanac[43]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[43]["SQRT_A"] = 5.050500e+003
|
||||
almanac[43]["Right_Ascen_at_Week"] = 3.883808e+000
|
||||
almanac[43]["Argument_of_Perigee"] = -3.039139e-001
|
||||
almanac[43]["Mean_Anom"] = -5.228304e-001
|
||||
almanac[43]["week"] = 1390
|
||||
almanac[43]["Commit_date"] = "31.08.2006"
|
||||
almanac[43]["Life_dates"] = {}
|
||||
|
||||
almanac[44] = {}
|
||||
almanac[44]["System"] = SAT_SYS_GLONASS
|
||||
almanac[44]["Number"] = 24
|
||||
almanac[44]["Orbital"] = 3
|
||||
almanac[44]["GLONASS_Data"] = {}
|
||||
almanac[44]["GLONASS_Data"]["NKU_Number"] = 713
|
||||
almanac[44]["GLONASS_Data"]["Cosmos_Number"] = 2418
|
||||
almanac[44]["Eccentricity"] = 2.044000e-003
|
||||
almanac[44]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[44]["Orbital_Inclination"] = 1.132430e+000
|
||||
almanac[44]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[44]["SQRT_A"] = 5.050500e+003
|
||||
almanac[44]["Right_Ascen_at_Week"] = 3.883983e+000
|
||||
almanac[44]["Argument_of_Perigee"] = -3.722784e-001
|
||||
almanac[44]["Mean_Anom"] = -1.240457e+000
|
||||
almanac[44]["week"] = 1390
|
||||
almanac[44]["Commit_date"] = "31.08.2006"
|
||||
almanac[44]["Life_dates"] = {}
|
||||
|
||||
--2 îðáèòàëüíàÿ ïëîñêîñòü, íîìåðà 9-16
|
||||
almanac[45] = {}
|
||||
almanac[45]["System"] = SAT_SYS_GLONASS
|
||||
almanac[45]["Number"] = 9
|
||||
almanac[45]["Orbital"] = 2
|
||||
almanac[45]["GLONASS_Data"] = {}
|
||||
almanac[45]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[45]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[45]["Eccentricity"] = 1.184000e-003
|
||||
almanac[45]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[45]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[45]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[45]["SQRT_A"] = 5.050500e+003
|
||||
almanac[45]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[45]["Argument_of_Perigee"] = 2.88430067
|
||||
almanac[45]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[45]["week"] = 1390
|
||||
almanac[45]["Commit_date"] = "N/A"
|
||||
almanac[45]["Life_dates"] = {}
|
||||
|
||||
almanac[46] = {}
|
||||
almanac[46]["System"] = SAT_SYS_GLONASS
|
||||
almanac[46]["Number"] = 10
|
||||
almanac[46]["Orbital"] = 2
|
||||
almanac[46]["GLONASS_Data"] = {}
|
||||
almanac[46]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[46]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[46]["Eccentricity"] = 1.184000e-003
|
||||
almanac[46]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[46]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[46]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[46]["SQRT_A"] = 5.050500e+003
|
||||
almanac[46]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[46]["Argument_of_Perigee"] = 3.66930067
|
||||
almanac[46]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[46]["week"] = 1390
|
||||
almanac[46]["Commit_date"] = "N/A"
|
||||
almanac[46]["Life_dates"] = {}
|
||||
|
||||
almanac[47] = {}
|
||||
almanac[47]["System"] = SAT_SYS_GLONASS
|
||||
almanac[47]["Number"] = 11
|
||||
almanac[47]["Orbital"] = 2
|
||||
almanac[47]["GLONASS_Data"] = {}
|
||||
almanac[47]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[47]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[47]["Eccentricity"] = 1.184000e-003
|
||||
almanac[47]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[47]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[47]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[47]["SQRT_A"] = 5.050500e+003
|
||||
almanac[47]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[47]["Argument_of_Perigee"] = 4.45430067
|
||||
almanac[47]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[47]["week"] = 1390
|
||||
almanac[47]["Commit_date"] = "N/A"
|
||||
almanac[47]["Life_dates"] = {}
|
||||
|
||||
almanac[48] = {}
|
||||
almanac[48]["System"] = SAT_SYS_GLONASS
|
||||
almanac[48]["Number"] = 12
|
||||
almanac[48]["Orbital"] = 2
|
||||
almanac[48]["GLONASS_Data"] = {}
|
||||
almanac[48]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[48]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[48]["Eccentricity"] = 1.184000e-003
|
||||
almanac[48]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[48]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[48]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[48]["SQRT_A"] = 5.050500e+003
|
||||
almanac[48]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[48]["Argument_of_Perigee"] = 5.23930067
|
||||
almanac[48]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[48]["week"] = 1390
|
||||
almanac[48]["Commit_date"] = "N/A"
|
||||
almanac[48]["Life_dates"] = {}
|
||||
|
||||
almanac[49] = {}
|
||||
almanac[49]["System"] = SAT_SYS_GLONASS
|
||||
almanac[49]["Number"] = 13
|
||||
almanac[49]["Orbital"] = 2
|
||||
almanac[49]["GLONASS_Data"] = {}
|
||||
almanac[49]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[49]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[49]["Eccentricity"] = 1.184000e-003
|
||||
almanac[49]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[49]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[49]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[49]["SQRT_A"] = 5.050500e+003
|
||||
almanac[49]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[49]["Argument_of_Perigee"] = 6.02430067
|
||||
almanac[49]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[49]["week"] = 1390
|
||||
almanac[49]["Commit_date"] = "N/A"
|
||||
almanac[49]["Life_dates"] = {}
|
||||
|
||||
almanac[50] = {}
|
||||
almanac[50]["System"] = SAT_SYS_GLONASS
|
||||
almanac[50]["Number"] = 14
|
||||
almanac[50]["Orbital"] = 2
|
||||
almanac[50]["GLONASS_Data"] = {}
|
||||
almanac[50]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[50]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[50]["Eccentricity"] = 1.184000e-003
|
||||
almanac[50]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[50]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[50]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[50]["SQRT_A"] = 5.050500e+003
|
||||
almanac[50]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[50]["Argument_of_Perigee"] = 0.52930067
|
||||
almanac[50]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[50]["week"] = 1390
|
||||
almanac[50]["Commit_date"] = "N/A"
|
||||
almanac[50]["Life_dates"] = {}
|
||||
|
||||
almanac[51] = {}
|
||||
almanac[51]["System"] = SAT_SYS_GLONASS
|
||||
almanac[51]["Number"] = 15
|
||||
almanac[51]["Orbital"] = 2
|
||||
almanac[51]["GLONASS_Data"] = {}
|
||||
almanac[51]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[51]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[51]["Eccentricity"] = 1.184000e-003
|
||||
almanac[51]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[51]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[51]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[51]["SQRT_A"] = 5.050500e+003
|
||||
almanac[51]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[51]["Argument_of_Perigee"] = 1.31430067
|
||||
almanac[51]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[51]["week"] = 1390
|
||||
almanac[51]["Commit_date"] = "N/A"
|
||||
almanac[51]["Life_dates"] = {}
|
||||
|
||||
almanac[52] = {}
|
||||
almanac[52]["System"] = SAT_SYS_GLONASS
|
||||
almanac[52]["Number"] = 16
|
||||
almanac[52]["Orbital"] = 2
|
||||
almanac[52]["GLONASS_Data"] = {}
|
||||
almanac[52]["GLONASS_Data"]["NKU_Number"] = "N/A"
|
||||
almanac[52]["GLONASS_Data"]["Cosmos_Number"] = "N/A"
|
||||
almanac[52]["Eccentricity"] = 1.184000e-003
|
||||
almanac[52]["Time_of_Applicability"] = 0.000000e+000
|
||||
almanac[52]["Orbital_Inclination"] = 1.126443e+000
|
||||
almanac[52]["Rate_of_Right_Ascen"] = 0.000000e+000
|
||||
almanac[52]["SQRT_A"] = 5.050500e+003
|
||||
almanac[52]["Right_Ascen_at_Week"] = 1.79067e+000
|
||||
almanac[52]["Argument_of_Perigee"] = 2.09930067
|
||||
almanac[52]["Mean_Anom"] = -5.519651e+000
|
||||
almanac[52]["week"] = 1390
|
||||
almanac[52]["Commit_date"] = "N/A"
|
||||
almanac[52]["Life_dates"] = {}
|
||||
|
||||
SA_mode = false
|
||||
AS_mode = false
|
||||
@ -0,0 +1,27 @@
|
||||
birds_avail = true --Birds availability. false - there is no birds
|
||||
birds_maximum_hrad = 200 --Maximum altitude above ground al sea level bird could be met
|
||||
birds_maximum_absolute_height = 8000 --Maximum absolute altitude bird could be met
|
||||
birds_minimum_velocity = 40 --Minimum velocity bird could be met
|
||||
birds_delta_time = 3.55
|
||||
birds_probability = {0.006333333*150,
|
||||
0.004166667*150,
|
||||
0.001966667*150,
|
||||
0.001090909*150,
|
||||
0.000741818*150,
|
||||
0.0006*150,
|
||||
0.000510545*150,
|
||||
0.000447273*150,
|
||||
0.000389455*150,
|
||||
0.000349091*150,
|
||||
0.000310909*150,
|
||||
0.000282545*150,
|
||||
0.000250909*150,
|
||||
0.000220364*150,
|
||||
0.000196364*150,
|
||||
0.000174545*150,
|
||||
0.000152727*150,
|
||||
0.000128727*150,
|
||||
0.000103636*150,
|
||||
7.63636E-05*150,
|
||||
0*150
|
||||
}
|
||||
@ -0,0 +1,104 @@
|
||||
settings=
|
||||
{
|
||||
["tad_profiles"]=
|
||||
{
|
||||
[1]=
|
||||
{
|
||||
["range_rings"]=true,
|
||||
["spi_display"]=1,
|
||||
["tag_info"]=1,
|
||||
["frequency_mapping"]=8,
|
||||
["bullseye"]=true,
|
||||
["ownship_waypoints"]=true,
|
||||
["LCN2"]="00",
|
||||
["guardChannel1"]=3,
|
||||
["LCN1"]="00",
|
||||
["ground_key"]="A",
|
||||
["name"]="ALL",
|
||||
["guardChannel2"]=7,
|
||||
["air_key"]="1",
|
||||
["flight_plan_lines"]=true,
|
||||
["waypoint_labels"]=true,
|
||||
["gateway_key"]="1",
|
||||
},
|
||||
[2]=
|
||||
{
|
||||
["range_rings"]=true,
|
||||
["spi_display"]=1,
|
||||
["tag_info"]=1,
|
||||
["frequency_mapping"]=8,
|
||||
["bullseye"]=true,
|
||||
["ownship_waypoints"]=true,
|
||||
["LCN2"]="00",
|
||||
["guardChannel1"]=3,
|
||||
["LCN1"]="00",
|
||||
["ground_key"]="A",
|
||||
["name"]="LOFF",
|
||||
["guardChannel2"]=7,
|
||||
["air_key"]="1",
|
||||
["flight_plan_lines"]=false,
|
||||
["waypoint_labels"]=true,
|
||||
["gateway_key"]="1",
|
||||
},
|
||||
[3]=
|
||||
{
|
||||
["range_rings"]=true,
|
||||
["spi_display"]=1,
|
||||
["tag_info"]=2,
|
||||
["frequency_mapping"]=8,
|
||||
["bullseye"]=true,
|
||||
["ownship_waypoints"]=true,
|
||||
["LCN2"]="00",
|
||||
["guardChannel1"]=3,
|
||||
["LCN1"]="00",
|
||||
["ground_key"]="A",
|
||||
["name"]="ACT",
|
||||
["guardChannel2"]=7,
|
||||
["air_key"]="1",
|
||||
["flight_plan_lines"]=true,
|
||||
["waypoint_labels"]=true,
|
||||
["gateway_key"]="1",
|
||||
},
|
||||
[4]=
|
||||
{
|
||||
["range_rings"]=false,
|
||||
["spi_display"]=0,
|
||||
["tag_info"]=0,
|
||||
["frequency_mapping"]=8,
|
||||
["bullseye"]=false,
|
||||
["ownship_waypoints"]=false,
|
||||
["LCN2"]="00",
|
||||
["guardChannel1"]=3,
|
||||
["LCN1"]="00",
|
||||
["ground_key"]="A",
|
||||
["name"]="NONE",
|
||||
["guardChannel2"]=7,
|
||||
["air_key"]="1",
|
||||
["flight_plan_lines"]=false,
|
||||
["waypoint_labels"]=false,
|
||||
["gateway_key"]="1",
|
||||
},
|
||||
},
|
||||
["default_profile"]=
|
||||
{
|
||||
[0]=
|
||||
{
|
||||
["range_rings"]=true,
|
||||
["spi_display"]=1,
|
||||
["tag_info"]=1,
|
||||
["frequency_mapping"]=8,
|
||||
["bullseye"]=true,
|
||||
["ownship_waypoints"]=true,
|
||||
["LCN2"]="00",
|
||||
["guardChannel1"]=3,
|
||||
["LCN1"]="00",
|
||||
["ground_key"]="A",
|
||||
["name"]="DFLT",
|
||||
["guardChannel2"]=7,
|
||||
["air_key"]="1",
|
||||
["flight_plan_lines"]=true,
|
||||
["waypoint_labels"]=true,
|
||||
["gateway_key"]="1",
|
||||
},
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
settings=
|
||||
{
|
||||
["TAAFAltitude"]=0,
|
||||
["FLIRIntegration"]=1,
|
||||
["CalibrationMethod"]=1,
|
||||
["GainControl"]=1,
|
||||
["LSSCode"]=1688,
|
||||
["LCode"]=1688,
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["mode_dial"]=1,
|
||||
["manual_frequency"]=251000000,
|
||||
["selection_dial"]=0,
|
||||
["channel_dial"]=0,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=251000000,
|
||||
[2]=235000000,
|
||||
[3]=245000000,
|
||||
[4]=255000000,
|
||||
[5]=265000000,
|
||||
[6]=275000000,
|
||||
[7]=285000000,
|
||||
[8]=295000000,
|
||||
[9]=305000000,
|
||||
[10]=315000000,
|
||||
[11]=325000000,
|
||||
[12]=335000000,
|
||||
[13]=345000000,
|
||||
[14]=355000000,
|
||||
[15]=365000000,
|
||||
[16]=375000000,
|
||||
[17]=385000000,
|
||||
[18]=395000000,
|
||||
[19]=396000000,
|
||||
[20]=397000000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["mode_dial"]=1,
|
||||
["manual_frequency"]=124000000,
|
||||
["selection_dial"]=2,
|
||||
["channel_dial"]=0,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=121500000,
|
||||
[2]=121500000,
|
||||
[3]=121500000,
|
||||
[4]=121500000,
|
||||
[5]=121500000,
|
||||
[6]=121500000,
|
||||
[7]=121500000,
|
||||
[8]=121500000,
|
||||
[9]=121500000,
|
||||
[10]=121500000,
|
||||
[11]=121500000,
|
||||
[12]=121500000,
|
||||
[13]=121500000,
|
||||
[14]=121500000,
|
||||
[15]=121500000,
|
||||
[16]=121500000,
|
||||
[17]=121500000,
|
||||
[18]=121500000,
|
||||
[19]=121500000,
|
||||
[20]=121500000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["mode_dial"]=1,
|
||||
["manual_frequency"]=30000000,
|
||||
["selection_dial"]=2,
|
||||
["channel_dial"]=0,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=40500000,
|
||||
[2]=40500000,
|
||||
[3]=40500000,
|
||||
[4]=40500000,
|
||||
[5]=40500000,
|
||||
[6]=40500000,
|
||||
[7]=40500000,
|
||||
[8]=40500000,
|
||||
[9]=40500000,
|
||||
[10]=40500000,
|
||||
[11]=40500000,
|
||||
[12]=40500000,
|
||||
[13]=40500000,
|
||||
[14]=40500000,
|
||||
[15]=40500000,
|
||||
[16]=40500000,
|
||||
[17]=40500000,
|
||||
[18]=40500000,
|
||||
[19]=40500000,
|
||||
[20]=40500000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
settings=
|
||||
{
|
||||
["dials"]=
|
||||
{
|
||||
["channel"]=0,
|
||||
},
|
||||
["presets"]=
|
||||
{
|
||||
[1]=124000000,
|
||||
[2]=124000000,
|
||||
[3]=131000000,
|
||||
[4]=139000000,
|
||||
},
|
||||
}
|
||||
@ -0,0 +1,74 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
do
|
||||
local function EventAliveHelicopter( Client )
|
||||
local EscortGroupHeli1 = SpawnEscortHeli:ReSpawn(1)
|
||||
local EscortHeli1 = ESCORT
|
||||
:New( Client, EscortGroupHeli1, "Escort Helicopter" )
|
||||
:MenuFollowAt( 100 )
|
||||
:MenuFollowAt( 200 )
|
||||
:MenuHoldAtEscortPosition( 20, 10, "Hold at %d meters for %d seconds" )
|
||||
:MenuHoldAtLeaderPosition( 120 )
|
||||
:MenuFlare( "Disperse Flares" )
|
||||
:MenuSmoke()
|
||||
:MenuReportTargets( 60, 20 )
|
||||
:MenuResumeMission()
|
||||
:MenuROE()
|
||||
:MenuAssistedAttack()
|
||||
|
||||
EscortHeli1:SetDetection( EscortHeliDetection )
|
||||
|
||||
local EscortGroupArtillery = SpawnEscortArtillery:ReSpawn(1)
|
||||
local EscortArtillery = ESCORT
|
||||
:New( Client, EscortGroupArtillery, "Escort Artillery" )
|
||||
:Menus()
|
||||
end
|
||||
|
||||
local function EventAlivePlane( Client )
|
||||
local EscortGroupPlane2 = SpawnEscortPlane:ReSpawn(1)
|
||||
local EscortPlane2 = ESCORT
|
||||
:New( Client, EscortGroupPlane2, "Escort Test Plane" )
|
||||
:MenuFollowAt( 100 )
|
||||
:MenuFollowAt( 200 )
|
||||
:MenuHoldAtEscortPosition( 20, 10, "Hold at %d meters for %d seconds" )
|
||||
:MenuHoldAtLeaderPosition( 120 )
|
||||
:MenuFlare( "Disperse Flares" )
|
||||
:MenuSmoke()
|
||||
:MenuReportTargets( 60, 20 )
|
||||
:MenuResumeMission()
|
||||
:MenuAssistedAttack()
|
||||
:MenuROE()
|
||||
:MenuEvasion()
|
||||
|
||||
local EscortGroupGround2 = SpawnEscortGround:ReSpawn(1)
|
||||
local EscortGround2 = ESCORT
|
||||
:New( Client, EscortGroupGround2, "Test Ground" )
|
||||
:Menus()
|
||||
|
||||
local EscortGroupShip2 = SpawnEscortShip:ReSpawn(1)
|
||||
local EscortShip2 = ESCORT
|
||||
:New( Client, EscortGroupShip2, "Test Ship" )
|
||||
:Menus()
|
||||
end
|
||||
|
||||
SpawnEscortHeli = SPAWN:New( "Escort Helicopter" )
|
||||
SpawnEscortPlane = SPAWN:New( "Escort Plane" )
|
||||
SpawnEscortGround = SPAWN:New( "Escort Ground" )
|
||||
SpawnEscortShip = SPAWN:New( "Escort Ship" )
|
||||
SpawnEscortArtillery = SPAWN:New( "Ground Attack Assistance" )
|
||||
|
||||
EscortHeliSetGroup = SET_GROUP:New():FilterPrefixes("Escort Helicopter"):FilterStart()
|
||||
EscortHeliDetection = DETECTION_AREAS:New( EscortHeliSetGroup, 20000, 1500 )
|
||||
|
||||
EscortClientHeli = CLIENT:FindByName( "Lead Helicopter", "Fly around and observe the behaviour of the escort helicopter" ):Alive( EventAliveHelicopter )
|
||||
EscortClientPlane = CLIENT:FindByName( "Lead Plane", "Fly around and observe the behaviour of the escort airplane. Select Navigate->Joun-Up and airplane should follow you. Change speed and directions." )
|
||||
:Alive( EventAlivePlane )
|
||||
|
||||
end
|
||||
|
||||
env.info( "Test Mission loaded" )
|
||||
@ -0,0 +1,31 @@
|
||||
env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' )
|
||||
env.info( 'Moose Generation Timestamp: 20170208_2216' )
|
||||
|
||||
local base = _G
|
||||
|
||||
Include = {}
|
||||
|
||||
Include.File = function( IncludeFile )
|
||||
if not Include.Files[ IncludeFile ] then
|
||||
Include.Files[IncludeFile] = IncludeFile
|
||||
env.info( "Include:" .. IncludeFile .. " from " .. Include.ProgramPath )
|
||||
local f = assert( base.loadfile( Include.ProgramPath .. IncludeFile .. ".lua" ) )
|
||||
if f == nil then
|
||||
error ("Could not load MOOSE file " .. IncludeFile .. ".lua" )
|
||||
else
|
||||
env.info( "Include:" .. IncludeFile .. " loaded from " .. Include.ProgramPath )
|
||||
return f()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Include.ProgramPath = "Scripts/Moose/"
|
||||
|
||||
env.info( "Include.ProgramPath = " .. Include.ProgramPath)
|
||||
|
||||
Include.Files = {}
|
||||
|
||||
Include.File( "Moose" )
|
||||
|
||||
BASE:TraceOnOff( true )
|
||||
env.info( '*** MOOSE INCLUDE END *** ' )
|
||||
@ -0,0 +1,168 @@
|
||||
dictionary =
|
||||
{
|
||||
["DictKey_WptName_159"] = "",
|
||||
["DictKey_WptName_11"] = "",
|
||||
["DictKey_UnitName_85"] = "Unit #003",
|
||||
["DictKey_GroupName_15"] = "Lead Plane",
|
||||
["DictKey_WptName_138"] = "",
|
||||
["DictKey_GroupName_150"] = "Ground Attack Assistance",
|
||||
["DictKey_UnitName_73"] = "Ground Attack Test #010",
|
||||
["DictKey_WptName_21"] = "",
|
||||
["DictKey_WptName_22"] = "",
|
||||
["DictKey_UnitName_39"] = "Unit #001",
|
||||
["DictKey_WptName_126"] = "",
|
||||
["DictKey_WptName_112"] = "",
|
||||
["DictKey_WptName_83"] = "",
|
||||
["DictKey_WptName_27"] = "",
|
||||
["DictKey_WptName_123"] = "",
|
||||
["DictKey_GroupName_51"] = "Ground Attack Test #003",
|
||||
["DictKey_UnitName_20"] = "Escort Plane",
|
||||
["DictKey_WptName_43"] = "",
|
||||
["DictKey_WptName_30"] = "",
|
||||
["DictKey_WptName_124"] = "",
|
||||
["DictKey_UnitName_76"] = "Ground Attack Test #011",
|
||||
["DictKey_WptName_137"] = "",
|
||||
["DictKey_WptName_134"] = "",
|
||||
["DictKey_UnitName_36"] = "Escort Ship",
|
||||
["DictKey_WptName_109"] = "",
|
||||
["DictKey_GroupName_45"] = "Ground Attack Test #001",
|
||||
["DictKey_UnitName_157"] = "Unit #011",
|
||||
["DictKey_WptName_25"] = "",
|
||||
["DictKey_GroupName_100"] = "Escort Ship #001",
|
||||
["DictKey_WptName_105"] = "",
|
||||
["DictKey_UnitName_61"] = "Ground Attack Test #006",
|
||||
["DictKey_WptName_40"] = "",
|
||||
["DictKey_WptName_153"] = "",
|
||||
["DictKey_UnitName_49"] = "Ground Attack Test #002",
|
||||
["DictKey_WptName_28"] = "",
|
||||
["DictKey_WptName_125"] = "",
|
||||
["DictKey_UnitName_79"] = "Ground Attack Test #012",
|
||||
["DictKey_WptName_142"] = "",
|
||||
["DictKey_WptName_71"] = "",
|
||||
["DictKey_WptName_17"] = "",
|
||||
["DictKey_WptName_104"] = "",
|
||||
["DictKey_WptName_158"] = "",
|
||||
["DictKey_WptName_14"] = "",
|
||||
["DictKey_GroupName_12"] = "Escort Helicopter",
|
||||
["DictKey_GroupName_19"] = "Escort Plane",
|
||||
["DictKey_GroupName_38"] = "Escort Ground",
|
||||
["DictKey_UnitName_149"] = "Pilot #003",
|
||||
["DictKey_WptName_47"] = "",
|
||||
["DictKey_GroupName_81"] = "WayPoint Test",
|
||||
["DictKey_WptName_130"] = "",
|
||||
["DictKey_UnitName_46"] = "Ground Attack Test #001",
|
||||
["DictKey_WptName_92"] = "",
|
||||
["DictKey_WptName_140"] = "",
|
||||
["DictKey_GroupName_31"] = "Test Attack",
|
||||
["DictKey_WptName_37"] = "",
|
||||
["DictKey_GroupName_72"] = "Ground Attack Test #010",
|
||||
["DictKey_GroupName_75"] = "Ground Attack Test #011",
|
||||
["DictKey_GroupName_41"] = "Ground Attack Test",
|
||||
["DictKey_WptName_116"] = "",
|
||||
["DictKey_GroupName_93"] = "Test Attack #005",
|
||||
["DictKey_WptName_132"] = "",
|
||||
["DictKey_WptName_154"] = "",
|
||||
["DictKey_WptName_152"] = "",
|
||||
["DictKey_WptName_95"] = "",
|
||||
["DictKey_WptName_62"] = "",
|
||||
["DictKey_WptName_122"] = "",
|
||||
["DictKey_sortie_4"] = "",
|
||||
["DictKey_WptName_65"] = "",
|
||||
["DictKey_GroupName_57"] = "Ground Attack Test #005",
|
||||
["DictKey_UnitName_94"] = "Unit #006",
|
||||
["DictKey_WptName_18"] = "",
|
||||
["DictKey_WptName_110"] = "",
|
||||
["DictKey_GroupName_60"] = "Ground Attack Test #006",
|
||||
["DictKey_GroupName_48"] = "Ground Attack Test #002",
|
||||
["DictKey_GroupName_144"] = "Ground Attack Test #013",
|
||||
["DictKey_WptName_50"] = "",
|
||||
["DictKey_GroupName_54"] = "Ground Attack Test #004",
|
||||
["DictKey_WptName_89"] = "",
|
||||
["DictKey_UnitName_42"] = "Ground Attack Test",
|
||||
["DictKey_WptName_128"] = "",
|
||||
["DictKey_UnitName_97"] = "Pilot #001",
|
||||
["DictKey_WptName_106"] = "",
|
||||
["DictKey_descriptionText_1"] = "",
|
||||
["DictKey_UnitName_55"] = "Ground Attack Test #004",
|
||||
["DictKey_UnitName_64"] = "Ground Attack Test #007",
|
||||
["DictKey_WptName_103"] = "",
|
||||
["DictKey_UnitName_58"] = "Ground Attack Test #005",
|
||||
["DictKey_UnitName_67"] = "Ground Attack Test #008",
|
||||
["DictKey_ActionText_96"] = "BASE:TraceClass(\"ESCORT\")\
|
||||
BASE:TraceClass(\"DETECTION_AREAS\")",
|
||||
["DictKey_WptName_24"] = "",
|
||||
["DictKey_WptName_74"] = "",
|
||||
["DictKey_UnitName_101"] = "Unit #007",
|
||||
["DictKey_WptName_143"] = "",
|
||||
["DictKey_UnitName_99"] = "Pilot #003",
|
||||
["DictKey_GroupName_69"] = "Ground Attack Test #009",
|
||||
["DictKey_GroupName_78"] = "Ground Attack Test #012",
|
||||
["DictKey_WptName_23"] = "",
|
||||
["DictKey_UnitName_114"] = "Pilot #001",
|
||||
["DictKey_UnitName_148"] = "Pilot #002",
|
||||
["DictKey_UnitName_155"] = "Unit #009",
|
||||
["DictKey_descriptionBlueTask_3"] = "",
|
||||
["DictKey_UnitName_10"] = "Lead Helicopter",
|
||||
["DictKey_WptName_146"] = "",
|
||||
["DictKey_WptName_135"] = "",
|
||||
["DictKey_WptName_86"] = "",
|
||||
["DictKey_WptName_108"] = "",
|
||||
["DictKey_WptName_77"] = "",
|
||||
["DictKey_UnitName_147"] = "Pilot #001",
|
||||
["DictKey_WptName_68"] = "",
|
||||
["DictKey_GroupName_9"] = "Lead Helicopter",
|
||||
["DictKey_WptName_53"] = "",
|
||||
["DictKey_GroupName_66"] = "Ground Attack Test #008",
|
||||
["DictKey_UnitName_82"] = "Unit #002",
|
||||
["DictKey_WptName_115"] = "",
|
||||
["DictKey_ActionText_107"] = "local EscortGroup = GROUP:NewFromName( \"WayPoint Air Test\" )\
|
||||
\
|
||||
local TaskPoints = EscortGroup:GetTaskRoute()\
|
||||
\
|
||||
TaskPoints[2].task = EscortGroup:TaskRegisterWayPoint( 2 )\
|
||||
\
|
||||
TaskPoints[3].task = EscortGroup:TaskRegisterWayPoint( 3 )\
|
||||
\
|
||||
EscortGroup:SetTask( EscortGroup:TaskRoute( TaskPoints ) )\
|
||||
",
|
||||
["DictKey_GroupName_35"] = "Escort Ship",
|
||||
["DictKey_WptName_33"] = "",
|
||||
["DictKey_WptName_129"] = "",
|
||||
["DictKey_UnitName_88"] = "Unit #004",
|
||||
["DictKey_UnitName_16"] = "Lead Plane",
|
||||
["DictKey_UnitName_32"] = "Unit #1",
|
||||
["DictKey_WptName_131"] = "",
|
||||
["DictKey_WptName_127"] = "",
|
||||
["DictKey_UnitName_91"] = "Unit #005",
|
||||
["DictKey_WptName_133"] = "",
|
||||
["DictKey_UnitName_156"] = "Unit #010",
|
||||
["DictKey_WptName_121"] = "",
|
||||
["DictKey_UnitName_70"] = "Ground Attack Test #009",
|
||||
["DictKey_GroupName_63"] = "Ground Attack Test #007",
|
||||
["DictKey_UnitName_98"] = "Pilot #002",
|
||||
["DictKey_WptName_80"] = "",
|
||||
["DictKey_GroupName_87"] = "Test Attack #003",
|
||||
["DictKey_WptName_119"] = "",
|
||||
["DictKey_WptName_29"] = "",
|
||||
["DictKey_WptName_26"] = "",
|
||||
["DictKey_UnitName_145"] = "Unit #008",
|
||||
["DictKey_GroupName_113"] = "WayPoint Air Test",
|
||||
["DictKey_WptName_59"] = "",
|
||||
["DictKey_GroupName_90"] = "Test Attack #004",
|
||||
["DictKey_WptName_118"] = "",
|
||||
["DictKey_UnitName_13"] = "Escort Helicopter",
|
||||
["DictKey_WptName_120"] = "",
|
||||
["DictKey_UnitName_52"] = "Ground Attack Test #003",
|
||||
["DictKey_WptName_139"] = "",
|
||||
["DictKey_WptName_136"] = "",
|
||||
["DictKey_WptName_117"] = "",
|
||||
["DictKey_WptName_102"] = "",
|
||||
["DictKey_WptName_44"] = "",
|
||||
["DictKey_GroupName_84"] = "Test Attack #002",
|
||||
["DictKey_WptName_111"] = "",
|
||||
["DictKey_descriptionRedTask_2"] = "",
|
||||
["DictKey_WptName_56"] = "",
|
||||
["DictKey_WptName_141"] = "",
|
||||
["DictKey_WptName_34"] = "",
|
||||
["DictKey_UnitName_151"] = "Unit #007",
|
||||
} -- end of dictionary
|
||||
@ -0,0 +1,5 @@
|
||||
mapResource =
|
||||
{
|
||||
["ResKey_Action_8"] = "ESC-001 - Escorting Helicopters.lua",
|
||||
["ResKey_Action_6"] = "Moose.lua",
|
||||
} -- end of mapResource
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,229 @@
|
||||
options =
|
||||
{
|
||||
["playerName"] = "Killer",
|
||||
["miscellaneous"] =
|
||||
{
|
||||
["headmove"] = true,
|
||||
["TrackIR_external_views"] = true,
|
||||
["f5_nearest_ac"] = true,
|
||||
["f11_free_camera"] = true,
|
||||
["F2_view_effects"] = 2,
|
||||
["f10_awacs"] = true,
|
||||
["Coordinate_Display"] = "Lat Long",
|
||||
["accidental_failures"] = false,
|
||||
["force_feedback_enabled"] = true,
|
||||
["synchronize_controls"] = false,
|
||||
["show_pilot_body"] = true,
|
||||
}, -- end of ["miscellaneous"]
|
||||
["difficulty"] =
|
||||
{
|
||||
["padlock"] = true,
|
||||
["labels"] = false,
|
||||
["easyCommunication"] = true,
|
||||
["easyRadar"] = false,
|
||||
["fuel"] = false,
|
||||
["miniHUD"] = false,
|
||||
["tips"] = true,
|
||||
["birds"] = 0,
|
||||
["optionsView"] = "optview_all",
|
||||
["permitCrash"] = true,
|
||||
["immortal"] = false,
|
||||
["cockpitStatusBarAllowed"] = false,
|
||||
["cockpitVisualRM"] = true,
|
||||
["easyFlight"] = false,
|
||||
["reports"] = true,
|
||||
["hideStick"] = false,
|
||||
["radio"] = true,
|
||||
["externalViews"] = true,
|
||||
["units"] = "metric",
|
||||
["userMarks"] = true,
|
||||
["cockpitLanguage"] = "english",
|
||||
["spectatorExternalViews"] = true,
|
||||
["userSnapView"] = true,
|
||||
["avionicsLanguage"] = "native",
|
||||
["impostors"] = "medium",
|
||||
["iconsTheme"] = "nato",
|
||||
["map"] = true,
|
||||
["weapons"] = false,
|
||||
["setGlobal"] = true,
|
||||
["geffect"] = "realistic",
|
||||
}, -- end of ["difficulty"]
|
||||
["VR"] =
|
||||
{
|
||||
["use_mouse"] = false,
|
||||
["enable"] = true,
|
||||
["box_mouse_cursor"] = true,
|
||||
["pixel_density"] = 1,
|
||||
}, -- end of ["VR"]
|
||||
["graphics"] =
|
||||
{
|
||||
["OculusRift"] = false,
|
||||
["color"] = "32",
|
||||
["LensEffects"] = 3,
|
||||
["heatBlr"] = 2,
|
||||
["scenes"] = "high",
|
||||
["water"] = 2,
|
||||
["visibRange"] = "High",
|
||||
["treesVisibility"] = 25000,
|
||||
["aspect"] = 2.5,
|
||||
["lights"] = 2,
|
||||
["HDR"] = 1,
|
||||
["MSAA"] = 2,
|
||||
["civTraffic"] = "high",
|
||||
["clutterMaxDistance"] = 1500,
|
||||
["terrainTextures"] = "max",
|
||||
["multiMonitorSetup"] = "1camera",
|
||||
["shadowTree"] = true,
|
||||
["fullScreen"] = false,
|
||||
["disableAero"] = false,
|
||||
["DOF"] = 0,
|
||||
["clouds"] = 1,
|
||||
["flatTerrainShadows"] = 1,
|
||||
["cockpitShadows"] = true,
|
||||
["height"] = 768,
|
||||
["width"] = 1920,
|
||||
["shadows"] = 4,
|
||||
["TranspSSAA"] = false,
|
||||
["sync"] = true,
|
||||
["preloadRadius"] = 73885,
|
||||
["anisotropy"] = 2,
|
||||
["haze"] = 1,
|
||||
["textures"] = 2,
|
||||
["effects"] = 3,
|
||||
}, -- end of ["graphics"]
|
||||
["plugins"] =
|
||||
{
|
||||
["CA"] =
|
||||
{
|
||||
["kompass_options"] = 1,
|
||||
["ground_target_info"] = true,
|
||||
["ground_aim_helper"] = true,
|
||||
["ground_platform_shake"] = true,
|
||||
["ground_automatic"] = true,
|
||||
}, -- end of ["CA"]
|
||||
["M-2000C"] =
|
||||
{
|
||||
["UNI_NODRIFT"] = false,
|
||||
["TDC_"] = false,
|
||||
["CPLocalList"] = "default",
|
||||
["PPA_TOTPAR"] = false,
|
||||
["UNI_ALIGNED"] = false,
|
||||
}, -- end of ["M-2000C"]
|
||||
["A-10C"] =
|
||||
{
|
||||
["CPLocalList"] = "default",
|
||||
}, -- end of ["A-10C"]
|
||||
["FC3"] =
|
||||
{
|
||||
["CPLocalList_F-15C"] = "default",
|
||||
["CPLocalList_MiG-29S"] = "default",
|
||||
["CPLocalList_MiG-29A"] = "default",
|
||||
["CPLocalList_Su-25"] = "default",
|
||||
["CPLocalList_A-10A"] = "default",
|
||||
["CPLocalList_Su-27"] = "chinese",
|
||||
["CPLocalList_MiG-29G"] = "default",
|
||||
["CPLocalList_Su-33"] = "default",
|
||||
}, -- end of ["FC3"]
|
||||
["Hawk"] =
|
||||
{
|
||||
["CPLocalList"] = "high",
|
||||
}, -- end of ["Hawk"]
|
||||
["P-51D"] =
|
||||
{
|
||||
["assistance"] = 100,
|
||||
["CPLocalList"] = "default",
|
||||
["autoRudder"] = false,
|
||||
}, -- end of ["P-51D"]
|
||||
["TF-51D"] =
|
||||
{
|
||||
["assistance"] = 100,
|
||||
["CPLocalList"] = "default",
|
||||
["autoRudder"] = false,
|
||||
}, -- end of ["TF-51D"]
|
||||
["MiG-21Bis"] =
|
||||
{
|
||||
["Engine"] = false,
|
||||
["Shake"] = 100,
|
||||
["CustomCockpit"] = false,
|
||||
["Reticle"] = false,
|
||||
["Freeze"] = false,
|
||||
}, -- end of ["MiG-21Bis"]
|
||||
["F-86F"] =
|
||||
{
|
||||
["landSeatAdjustF86"] = true,
|
||||
["aiHelper"] = false,
|
||||
["CPLocalList"] = "default",
|
||||
["NoseWheelSteeringSimpleBehaviourF86"] = true,
|
||||
["gunCamera"] = 0,
|
||||
}, -- end of ["F-86F"]
|
||||
["Su-25T"] =
|
||||
{
|
||||
["CPLocalList"] = "default",
|
||||
}, -- end of ["Su-25T"]
|
||||
["Mi-8MTV2"] =
|
||||
{
|
||||
["Mi8TrimmingMethod"] = 0,
|
||||
["Mi8AutopilotAdjustment"] = false,
|
||||
["gunCamera"] = 0,
|
||||
["controlHelperMi8"] = false,
|
||||
["weapTooltipsMi8"] = true,
|
||||
["Mi8RudderTrimmer"] = false,
|
||||
["CPLocalList"] = "default",
|
||||
["altMi8TrimmingMethod"] = false,
|
||||
["Mi8FOV"] = 120,
|
||||
}, -- end of ["Mi-8MTV2"]
|
||||
["MiG-15bis"] =
|
||||
{
|
||||
["autoLeanToAimMiG15"] = true,
|
||||
["CPLocalList"] = "chinese",
|
||||
["gunCamera"] = 0,
|
||||
["aiHelper"] = false,
|
||||
}, -- end of ["MiG-15bis"]
|
||||
["FW-190D9"] =
|
||||
{
|
||||
["assistance"] = 100,
|
||||
["CPLocalList"] = "default",
|
||||
["autoRudder"] = false,
|
||||
}, -- end of ["FW-190D9"]
|
||||
["UH-1H"] =
|
||||
{
|
||||
["UHTrackIRAiming"] = true,
|
||||
["autoPilot"] = true,
|
||||
["UHTrimmingMethod"] = 0,
|
||||
["altUHTrimmingMethod"] = false,
|
||||
["CPLocalList"] = "default",
|
||||
["weapTooltips"] = true,
|
||||
["UHRudderTrimmer"] = false,
|
||||
}, -- end of ["UH-1H"]
|
||||
["Ka-50"] =
|
||||
{
|
||||
["altTrimmingMethod"] = false,
|
||||
["Ka50RudderTrimmer"] = false,
|
||||
["CPLocalList"] = "english",
|
||||
}, -- end of ["Ka-50"]
|
||||
}, -- end of ["plugins"]
|
||||
["format"] = 1,
|
||||
["sound"] =
|
||||
{
|
||||
["hear_in_helmet"] = false,
|
||||
["headphones"] = 100,
|
||||
["cockpit"] = 100,
|
||||
["GBreathEffect"] = true,
|
||||
["gui"] = 100,
|
||||
["volume"] = 100,
|
||||
["radioSpeech"] = true,
|
||||
["music"] = 100,
|
||||
["subtitles"] = true,
|
||||
["world"] = 100,
|
||||
}, -- end of ["sound"]
|
||||
["views"] =
|
||||
{
|
||||
["cockpit"] =
|
||||
{
|
||||
["mirrors"] = false,
|
||||
["reflections"] = false,
|
||||
["avionics"] = 3,
|
||||
["russianHud"] = false,
|
||||
}, -- end of ["cockpit"]
|
||||
}, -- end of ["views"]
|
||||
} -- end of options
|
||||
@ -0,0 +1,845 @@
|
||||
warehouses =
|
||||
{
|
||||
["airports"] =
|
||||
{
|
||||
[12] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [12]
|
||||
[13] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [13]
|
||||
[14] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "RED",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [14]
|
||||
[15] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [15]
|
||||
[16] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [16]
|
||||
[17] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [17]
|
||||
[18] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [18]
|
||||
[19] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [19]
|
||||
[20] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [20]
|
||||
[21] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [21]
|
||||
[22] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [22]
|
||||
[23] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "BLUE",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [23]
|
||||
[24] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [24]
|
||||
[25] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [25]
|
||||
[26] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [26]
|
||||
[27] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [27]
|
||||
[28] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [28]
|
||||
[29] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [29]
|
||||
[30] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [30]
|
||||
[31] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [31]
|
||||
[32] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "NEUTRAL",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [32]
|
||||
}, -- end of ["airports"]
|
||||
["warehouses"] =
|
||||
{
|
||||
[6] =
|
||||
{
|
||||
["gasoline"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["gasoline"]
|
||||
["unlimitedMunitions"] = true,
|
||||
["methanol_mixture"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["methanol_mixture"]
|
||||
["OperatingLevel_Air"] = 10,
|
||||
["diesel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["diesel"]
|
||||
["speed"] = 16.666666,
|
||||
["size"] = 100,
|
||||
["periodicity"] = 30,
|
||||
["suppliers"] =
|
||||
{
|
||||
}, -- end of ["suppliers"]
|
||||
["coalition"] = "red",
|
||||
["jet_fuel"] =
|
||||
{
|
||||
["InitFuel"] = 100,
|
||||
}, -- end of ["jet_fuel"]
|
||||
["OperatingLevel_Eqp"] = 10,
|
||||
["unlimitedFuel"] = true,
|
||||
["aircrafts"] =
|
||||
{
|
||||
}, -- end of ["aircrafts"]
|
||||
["weapons"] =
|
||||
{
|
||||
}, -- end of ["weapons"]
|
||||
["OperatingLevel_Fuel"] = 10,
|
||||
["unlimitedAircrafts"] = true,
|
||||
}, -- end of [6]
|
||||
}, -- end of ["warehouses"]
|
||||
} -- end of warehouses
|
||||
@ -0,0 +1,30 @@
|
||||
--- This test demonstrates the use(s) of the SwitchWayPoint method of the GROUP class.
|
||||
|
||||
local HeliGroup = GROUP:FindByName( "Helicopter" )
|
||||
|
||||
local AttackGroup = GROUP:FindByName( "AttackGroup" )
|
||||
|
||||
local AttackUnits = AttackGroup:GetUnits()
|
||||
|
||||
local Tasks = {}
|
||||
|
||||
for i = 1, #AttackUnits do
|
||||
|
||||
local AttackUnit = AttackGroup:GetUnit( i )
|
||||
Tasks[#Tasks+1] = HeliGroup:TaskAttackUnit( AttackUnit )
|
||||
end
|
||||
|
||||
Tasks[#Tasks+1] = HeliGroup:TaskFunction( 1, 7, "_Resume", { "''" } )
|
||||
|
||||
--- @param Wrapper.Group#GROUP HeliGroup
|
||||
function _Resume( HeliGroup )
|
||||
env.info( '_Resume' )
|
||||
|
||||
HeliGroup:MessageToAll( "Resuming",10,"Info")
|
||||
end
|
||||
|
||||
HeliGroup:PushTask(
|
||||
HeliGroup:TaskCombo(
|
||||
Tasks
|
||||
), 30
|
||||
)
|
||||
Binary file not shown.
14
Moose Test Missions/MOOSE_Header.lua
Normal file
14
Moose Test Missions/MOOSE_Header.lua
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
-- Name: <PRJ-nnn - Mission Name>
|
||||
-- Author: <Author>
|
||||
-- Date Created: <Date>
|
||||
--
|
||||
-- # Situation:
|
||||
--
|
||||
-- <Text explaining the situation of the test mission and what happens>.
|
||||
--
|
||||
-- # Test cases:
|
||||
--
|
||||
-- 1. <Test Case 1 explanation: Use words like "Observe", "Try out", "Jump into"...>
|
||||
-- 2. <Test Case 1 explanation: Use words like "Observe", "Try out", "Jump into"...>
|
||||
--
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -259,7 +259,7 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).Engage">AI_CAS_ZONE:Engage()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).Engage">AI_CAS_ZONE:Engage(EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="summary">
|
||||
<p>Synchronous Event Trigger for Event Engage.</p>
|
||||
</td>
|
||||
@ -331,7 +331,7 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).OnAfterEngage">AI_CAS_ZONE:OnAfterEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).OnAfterEngage">AI_CAS_ZONE:OnAfterEngage(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnAfter Transition Handler for Event Engage.</p>
|
||||
</td>
|
||||
@ -361,7 +361,7 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).OnBeforeEngage">AI_CAS_ZONE:OnBeforeEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).OnBeforeEngage">AI_CAS_ZONE:OnBeforeEngage(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnBefore Transition Handler for Event Engage.</p>
|
||||
</td>
|
||||
@ -421,7 +421,7 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).__Engage">AI_CAS_ZONE:__Engage(Delay)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).__Engage">AI_CAS_ZONE:__Engage(Delay, EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="summary">
|
||||
<p>Asynchronous Event Trigger for Event Engage.</p>
|
||||
</td>
|
||||
@ -445,7 +445,7 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).onafterEngage">AI_CAS_ZONE:onafterEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_CAS_ZONE).onafterEngage">AI_CAS_ZONE:onafterEngage(Controllable, From, Event, To, EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -598,13 +598,46 @@ It can be notified to go RTB through the <strong>RTB</strong> event.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_CAS_ZONE).Engage" >
|
||||
<strong>AI_CAS_ZONE:Engage()</strong>
|
||||
<strong>AI_CAS_ZONE:Engage(EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Synchronous Event Trigger for Event Engage.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageSpeed </em></code>:
|
||||
(optional) The speed the Group will hold when engaging to the target zone.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageAttackQty </em></code>:
|
||||
(optional) This parameter limits maximal quantity of attack. The aicraft/controllable will not make more attack than allowed even if the target controllable not destroyed and the aicraft/controllable still have ammo. If not defined the aircraft/controllable will attack target until it will be destroyed or until the aircraft/controllable will run out of ammo.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Azimuth)">Dcs.DCSTypes#Azimuth</a> EngageDirection </em></code>:
|
||||
(optional) Desired ingress direction from the target to the attacking aircraft. Controllable/aircraft will make its attacks from the direction. Of course if there is no way to attack from the direction due the terrain controllable/aircraft will choose another direction.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -888,7 +921,7 @@ The To State string.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_CAS_ZONE).OnAfterEngage" >
|
||||
<strong>AI_CAS_ZONE:OnAfterEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</strong>
|
||||
<strong>AI_CAS_ZONE:OnAfterEngage(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -920,36 +953,6 @@ The Event string.</p>
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageSpeed </em></code>:
|
||||
(optional) The speed the Group will hold when engaging to the target zone.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageAttackQty </em></code>:
|
||||
(optional) This parameter limits maximal quantity of attack. The aicraft/controllable will not make more attack than allowed even if the target controllable not destroyed and the aicraft/controllable still have ammo. If not defined the aircraft/controllable will attack target until it will be destroyed or until the aircraft/controllable will run out of ammo.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Azimuth)">Dcs.DCSTypes#Azimuth</a> EngageDirection </em></code>:
|
||||
(optional) Desired ingress direction from the target to the attacking aircraft. Controllable/aircraft will make its attacks from the direction. Of course if there is no way to attack from the direction due the terrain controllable/aircraft will choose another direction.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1133,7 +1136,7 @@ Return false to cancel Transition.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_CAS_ZONE).OnBeforeEngage" >
|
||||
<strong>AI_CAS_ZONE:OnBeforeEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</strong>
|
||||
<strong>AI_CAS_ZONE:OnBeforeEngage(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -1165,36 +1168,6 @@ The Event string.</p>
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageSpeed </em></code>:
|
||||
(optional) The speed the Group will hold when engaging to the target zone.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageAttackQty </em></code>:
|
||||
(optional) This parameter limits maximal quantity of attack. The aicraft/controllable will not make more attack than allowed even if the target controllable not destroyed and the aicraft/controllable still have ammo. If not defined the aircraft/controllable will attack target until it will be destroyed or until the aircraft/controllable will run out of ammo.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Azimuth)">Dcs.DCSTypes#Azimuth</a> EngageDirection </em></code>:
|
||||
(optional) Desired ingress direction from the target to the attacking aircraft. Controllable/aircraft will make its attacks from the direction. Of course if there is no way to attack from the direction due the terrain controllable/aircraft will choose another direction.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1464,20 +1437,50 @@ The delay in seconds.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_CAS_ZONE).__Engage" >
|
||||
<strong>AI_CAS_ZONE:__Engage(Delay)</strong>
|
||||
<strong>AI_CAS_ZONE:__Engage(Delay, EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Asynchronous Event Trigger for Event Engage.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Delay </em></code>:
|
||||
The delay in seconds.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageSpeed </em></code>:
|
||||
(optional) The speed the Group will hold when engaging to the target zone.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number EngageAttackQty </em></code>:
|
||||
(optional) This parameter limits maximal quantity of attack. The aicraft/controllable will not make more attack than allowed even if the target controllable not destroyed and the aicraft/controllable still have ammo. If not defined the aircraft/controllable will attack target until it will be destroyed or until the aircraft/controllable will run out of ammo.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Azimuth)">Dcs.DCSTypes#Azimuth</a> EngageDirection </em></code>:
|
||||
(optional) Desired ingress direction from the target to the attacking aircraft. Controllable/aircraft will make its attacks from the direction. Of course if there is no way to attack from the direction due the terrain controllable/aircraft will choose another direction.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1593,7 +1596,7 @@ The To State string.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_CAS_ZONE).onafterEngage" >
|
||||
<strong>AI_CAS_ZONE:onafterEngage(Controllable, From, Event, To, EngageSpeed, EngageWeaponExpend, EngageAltitude, EngageAttackQty, EngageDirection)</strong>
|
||||
<strong>AI_CAS_ZONE:onafterEngage(Controllable, From, Event, To, EngageSpeed, EngageAltitude, EngageWeaponExpend, EngageAttackQty, EngageDirection)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -1634,14 +1637,14 @@ The To State string.</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> EngageAltitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(AI.Task.WeaponExpend)">Dcs.DCSTypes#AI.Task.WeaponExpend</a> EngageWeaponExpend </em></code>:
|
||||
(optional) Determines how much weapon will be released at each attack. If parameter is not defined the unit / controllable will choose expend on its own discretion.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -880,9 +880,6 @@ Use the method <a href="##(AI_PATROL_ZONE).ManageDamage">AI<em>PATROL</em>ZONE.M
|
||||
|
||||
|
||||
|
||||
|
||||
<p> This table contains the targets detected during patrol.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -2424,6 +2424,7 @@ The UNIT carrying the package.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(AI_CARGO_UNIT).CargoCarrier" >
|
||||
<strong>AI_CARGO_UNIT.CargoCarrier</strong>
|
||||
</a>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -100,9 +100,15 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CLEANUP).New">CLEANUP:New(ZoneNames, TimeInterval)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CLEANUP).CleanUpScheduler">CLEANUP.CleanUpScheduler</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CLEANUP).New">CLEANUP:New(ZoneNames, TimeInterval)</a></td>
|
||||
<td class="summary">
|
||||
<p>Creates the main object which is handling the cleaning of the debris within the given Zone Names.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -172,7 +178,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CLEANUP)._OnEventBirth">CLEANUP:_OnEventBirth(Event)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CLEANUP)._OnEventBirth">CLEANUP:_OnEventBirth(EventData)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -232,33 +238,61 @@
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(CLEANUP).New" >
|
||||
<strong>CLEANUP:New(ZoneNames, TimeInterval)</strong>
|
||||
<em></em>
|
||||
<a id="#(CLEANUP).CleanUpScheduler" >
|
||||
<strong>CLEANUP.CleanUpScheduler</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> ZoneNames </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> TimeInterval </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(CLEANUP).New" >
|
||||
<strong>CLEANUP:New(ZoneNames, TimeInterval)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Creates the main object which is handling the cleaning of the debris within the given Zone Names.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#table ZoneNames </em></code>:
|
||||
Is a table of zone names where the debris should be cleaned. Also a single string can be passed with one zone name.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number TimeInterval </em></code>:
|
||||
The interval in seconds when the clean activity takes place. The default is 300 seconds, thus every 5 minutes.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(CLEANUP)">#CLEANUP</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code> -- Clean these Zones.
|
||||
CleanUpAirports = CLEANUP:New( { 'CLEAN Tbilisi', 'CLEAN Kutaisi' }, 150 )
|
||||
or
|
||||
CleanUpTbilisi = CLEANUP:New( 'CLEAN Tbilisi', 150 )
|
||||
CleanUpKutaisi = CLEANUP:New( 'CLEAN Kutaisi', 600 )</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(CLEANUP).TimeInterval" >
|
||||
<strong>CLEANUP.TimeInterval</strong>
|
||||
</a>
|
||||
@ -525,7 +559,7 @@ The Unit name ...</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(CLEANUP)._OnEventBirth" >
|
||||
<strong>CLEANUP:_OnEventBirth(Event)</strong>
|
||||
<strong>CLEANUP:_OnEventBirth(EventData)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -536,7 +570,7 @@ The Unit name ...</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Event </em></code>: </p>
|
||||
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> EventData </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -294,7 +294,7 @@ This is different from the EnRoute tasks, where the targets of the task need to
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CONTROLLABLE).EnRouteTaskEngageUnit">CONTROLLABLE:EnRouteTaskEngageUnit(EngageUnit, Priority, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, Visible, ControllableAttack)</a></td>
|
||||
<td class="summary">
|
||||
<p>(AIR) Attack the Unit.</p>
|
||||
<p>(AIR) Search and attack the Unit.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -509,7 +509,7 @@ A speed can be given in km/h.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CONTROLLABLE).TaskAttackUnit">CONTROLLABLE:TaskAttackUnit(AttackUnit, WeaponType, WeaponExpend, AttackQty, Direction, AttackQtyLimit, ControllableAttack)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CONTROLLABLE).TaskAttackUnit">CONTROLLABLE:TaskAttackUnit(AttackUnit, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, Visible, ControllableAttack)</a></td>
|
||||
<td class="summary">
|
||||
<p>(AIR) Attack the Unit.</p>
|
||||
</td>
|
||||
@ -1069,7 +1069,7 @@ The DCS task structure.</p>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>(AIR) Attack the Unit.</p>
|
||||
<p>(AIR) Search and attack the Unit.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -2043,7 +2043,7 @@ The DCS task structure.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(CONTROLLABLE).TaskAttackUnit" >
|
||||
<strong>CONTROLLABLE:TaskAttackUnit(AttackUnit, WeaponType, WeaponExpend, AttackQty, Direction, AttackQtyLimit, ControllableAttack)</strong>
|
||||
<strong>CONTROLLABLE:TaskAttackUnit(AttackUnit, GroupAttack, WeaponExpend, AttackQty, Direction, Altitude, Visible, ControllableAttack)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -2055,13 +2055,13 @@ The DCS task structure.</p>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> AttackUnit </em></code>:
|
||||
The unit.</p>
|
||||
The UNIT.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number WeaponType </em></code>:
|
||||
(optional) Bitmask of weapon types those allowed to use. If parameter is not defined that means no limits on weapon usage.</p>
|
||||
<p><code><em>#boolean GroupAttack </em></code>:
|
||||
(optional) If true, all units in the group will attack the Unit when found.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
@ -2084,8 +2084,14 @@ The unit.</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#boolean AttackQtyLimit </em></code>:
|
||||
(optional) The flag determines how to interpret attackQty parameter. If the flag is true then attackQty is a limit on maximal attack quantity for "AttackControllable" and "AttackUnit" tasks. If the flag is false then attackQty is a desired attack quantity for "Bombing" and "BombingRunway" tasks.</p>
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> Altitude </em></code>:
|
||||
(optional) Desired altitude to perform the unit engagement.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#boolean Visible </em></code>:
|
||||
(optional) Unit must be visible.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -160,7 +160,7 @@ Note that this is really fantastic, as you now have the dynamic of taking contro
|
||||
</ul>
|
||||
|
||||
<h1>ESCORT initialization methods.</h1>
|
||||
<p>The following menus are created within the RADIO MENU of an active unit hosted by a player:</p>
|
||||
<p>The following menus are created within the RADIO MENU (F10) of an active unit hosted by a player:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="##(ESCORT).MenuFollowAt">ESCORT.MenuFollowAt</a>: Creates a menu to make the escort follow the client.</li>
|
||||
@ -207,9 +207,27 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<h2><a id="#(ESCORT)">Type <code>ESCORT</code></a></h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).CT1">ESCORT.CT1</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).ClassName">ESCORT.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).Detection">ESCORT.Detection</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).EscortBriefing">ESCORT.EscortBriefing</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -222,6 +240,12 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).EscortGroup">ESCORT.EscortGroup</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).EscortMenu">ESCORT.EscortMenu</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -444,6 +468,12 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).EscortName">ESCORT.EscortName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).EscortSetGroup">ESCORT.EscortSetGroup</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -456,6 +486,12 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).FollowScheduler">ESCORT.FollowScheduler</a></td>
|
||||
<td class="summary">
|
||||
<p>The instance of the SCHEDULER class.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).GT1">ESCORT.GT1</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -576,6 +612,12 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).ReportTargetsScheduler">ESCORT.ReportTargetsScheduler</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT).SetDetection">ESCORT:SetDetection(Detection)</a></td>
|
||||
<td class="summary">
|
||||
<p>Set a Detection method for the EscortClient to be reported upon.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -603,19 +645,19 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._AssistTarget">ESCORT._AssistTarget(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._AssistTarget">ESCORT._AssistTarget(DetectedItemID, self, EscortGroupAttack)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._AttackTarget">ESCORT._AttackTarget(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._AttackTarget">ESCORT:_AttackTarget(DetectedItemID)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._Flare">ESCORT._Flare(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._Flare">ESCORT._Flare(MenuParam, self, Color, Message)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -627,31 +669,31 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._HoldPosition">ESCORT._HoldPosition(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._HoldPosition">ESCORT._HoldPosition(MenuParam, self, OrbitGroup, OrbitHeight, OrbitSeconds)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._JoinUpAndFollow">ESCORT._JoinUpAndFollow(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._JoinUpAndFollow">ESCORT._JoinUpAndFollow(MenuParam, self, Distance)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ROE">ESCORT._ROE(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ROE">ESCORT._ROE(MenuParam, self, EscortROEFunction, EscortROEMessage)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ROT">ESCORT._ROT(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ROT">ESCORT._ROT(MenuParam, self, EscortROTFunction, EscortROTMessage)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ReportNearbyTargetsNow">ESCORT._ReportNearbyTargetsNow(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ReportNearbyTargetsNow">ESCORT._ReportNearbyTargetsNow(MenuParam, self)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -663,25 +705,25 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ResumeMission">ESCORT._ResumeMission(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ResumeMission">ESCORT._ResumeMission(MenuParam, self, WayPoint)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ScanTargets">ESCORT._ScanTargets(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._ScanTargets">ESCORT._ScanTargets(MenuParam, self, ScanDuration)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._Smoke">ESCORT._Smoke(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._Smoke">ESCORT._Smoke(MenuParam, self, Color, Message)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._SwitchReportNearbyTargets">ESCORT._SwitchReportNearbyTargets(MenuParam)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ESCORT)._SwitchReportNearbyTargets">ESCORT:_SwitchReportNearbyTargets(ReportTargets)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -707,6 +749,12 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<h2><a id="#(MENUPARAM)">Type <code>MENUPARAM</code></a></h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MENUPARAM).Distance">MENUPARAM.Distance</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MENUPARAM).ParamDistance">MENUPARAM.ParamDistance</a></td>
|
||||
<td class="summary">
|
||||
|
||||
@ -780,6 +828,20 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(ESCORT).CT1" >
|
||||
<strong>ESCORT.CT1</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#string</em>
|
||||
<a id="#(ESCORT).ClassName" >
|
||||
<strong>ESCORT.ClassName</strong>
|
||||
@ -789,6 +851,34 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="Functional.Detection.html##(DETECTION_BASE)">Functional.Detection#DETECTION_BASE</a></em>
|
||||
<a id="#(ESCORT).Detection" >
|
||||
<strong>ESCORT.Detection</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(ESCORT).EscortBriefing" >
|
||||
<strong>ESCORT.EscortBriefing</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -817,6 +907,20 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(ESCORT).EscortMenu" >
|
||||
<strong>ESCORT.EscortMenu</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1351,6 +1455,20 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(ESCORT).EscortSetGroup" >
|
||||
<strong>ESCORT.EscortSetGroup</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1379,6 +1497,20 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
|
||||
<p>The instance of the SCHEDULER class.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(ESCORT).GT1" >
|
||||
<strong>ESCORT.GT1</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1922,6 +2054,30 @@ EscortPlanes = ESCORT:New( EscortClient, EscortGroup, "Desert", "Welcome to the
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT).SetDetection" >
|
||||
<strong>ESCORT:SetDetection(Detection)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Set a Detection method for the EscortClient to be reported upon.</p>
|
||||
|
||||
|
||||
<p>Detection methods are based on the derived classes from DETECTION_BASE.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Function.Detection.html##(DETECTION_BASE)">Function.Detection#DETECTION_BASE</a> Detection </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1994,18 +2150,28 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._AssistTarget" >
|
||||
<strong>ESCORT._AssistTarget(MenuParam)</strong>
|
||||
<strong>ESCORT._AssistTarget(DetectedItemID, self, EscortGroupAttack)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
<p><code><em>#number DetectedItemID </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EscortGroupAttack </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2015,7 +2181,7 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._AttackTarget" >
|
||||
<strong>ESCORT._AttackTarget(MenuParam)</strong>
|
||||
<strong>ESCORT:_AttackTarget(DetectedItemID)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -2026,7 +2192,7 @@ If true, then the direction vector will be smoked.</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
<p><code><em>#number DetectedItemID </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2036,19 +2202,34 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._Flare" >
|
||||
<strong>ESCORT._Flare(MenuParam)</strong>
|
||||
<strong>ESCORT._Flare(MenuParam, self, Color, Message)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Color </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Message </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2070,19 +2251,39 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._HoldPosition" >
|
||||
<strong>ESCORT._HoldPosition(MenuParam)</strong>
|
||||
<strong>ESCORT._HoldPosition(MenuParam, self, OrbitGroup, OrbitHeight, OrbitSeconds)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> OrbitGroup </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> OrbitHeight </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> OrbitSeconds </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2091,19 +2292,29 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._JoinUpAndFollow" >
|
||||
<strong>ESCORT._JoinUpAndFollow(MenuParam)</strong>
|
||||
<strong>ESCORT._JoinUpAndFollow(MenuParam, self, Distance)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Distance </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2112,19 +2323,34 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._ROE" >
|
||||
<strong>ESCORT._ROE(MenuParam)</strong>
|
||||
<strong>ESCORT._ROE(MenuParam, self, EscortROEFunction, EscortROEMessage)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EscortROEFunction </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EscortROEMessage </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2133,19 +2359,34 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._ROT" >
|
||||
<strong>ESCORT._ROT(MenuParam)</strong>
|
||||
<strong>ESCORT._ROT(MenuParam, self, EscortROTFunction, EscortROTMessage)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EscortROTFunction </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EscortROTMessage </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2154,19 +2395,24 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._ReportNearbyTargetsNow" >
|
||||
<strong>ESCORT._ReportNearbyTargetsNow(MenuParam)</strong>
|
||||
<strong>ESCORT._ReportNearbyTargetsNow(MenuParam, self)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2188,19 +2434,29 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._ResumeMission" >
|
||||
<strong>ESCORT._ResumeMission(MenuParam)</strong>
|
||||
<strong>ESCORT._ResumeMission(MenuParam, self, WayPoint)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> WayPoint </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2209,19 +2465,29 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._ScanTargets" >
|
||||
<strong>ESCORT._ScanTargets(MenuParam)</strong>
|
||||
<strong>ESCORT._ScanTargets(MenuParam, self, ScanDuration)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> ScanDuration </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2230,19 +2496,34 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._Smoke" >
|
||||
<strong>ESCORT._Smoke(MenuParam)</strong>
|
||||
<strong>ESCORT._Smoke(MenuParam, self, Color, Message)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="##(MENUPARAM)">#MENUPARAM</a> MenuParam </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Color </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Message </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -2251,7 +2532,7 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(ESCORT)._SwitchReportNearbyTargets" >
|
||||
<strong>ESCORT._SwitchReportNearbyTargets(MenuParam)</strong>
|
||||
<strong>ESCORT:_SwitchReportNearbyTargets(ReportTargets)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -2262,7 +2543,7 @@ If true, then the direction vector will be smoked.</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> MenuParam </em></code>: </p>
|
||||
<p><code><em> ReportTargets </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2311,6 +2592,20 @@ If true, then the direction vector will be smoked.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(MENUPARAM).Distance" >
|
||||
<strong>MENUPARAM.Distance</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="##(Distance)">#Distance</a></em>
|
||||
<a id="#(MENUPARAM).ParamDistance" >
|
||||
<strong>MENUPARAM.ParamDistance</strong>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -39,11 +39,11 @@
|
||||
<li>Fsm</li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -725,12 +725,48 @@ YYYY-MM-DD: CLASS:<strong>NewFunction( Params )</strong> added</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).New">FSM_CONTROLLABLE:New(FSMT, Controllable)</a></td>
|
||||
<td class="summary">
|
||||
<p>Creates a new FSM_CONTROLLABLE object.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).OnAfterStop">FSM_CONTROLLABLE:OnAfterStop(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnAfter Transition Handler for Event Stop.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).OnBeforeStop">FSM_CONTROLLABLE:OnBeforeStop(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnBefore Transition Handler for Event Stop.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).OnEnterStopped">FSM_CONTROLLABLE:OnEnterStopped(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnEnter Transition Handler for State Stopped.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).OnLeaveStopped">FSM_CONTROLLABLE:OnLeaveStopped(Controllable, From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnLeave Transition Handler for State Stopped.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).SetControllable">FSM_CONTROLLABLE:SetControllable(FSMControllable)</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).Stop">FSM_CONTROLLABLE:Stop()</a></td>
|
||||
<td class="summary">
|
||||
<p>Synchronous Event Trigger for Event Stop.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(FSM_CONTROLLABLE).__Stop">FSM_CONTROLLABLE:__Stop(Delay)</a></td>
|
||||
<td class="summary">
|
||||
<p>Asynchronous Event Trigger for Event Stop.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1960,6 +1996,176 @@ Finite State Machine Table</p>
|
||||
<p><em><a href="##(FSM_CONTROLLABLE)">#FSM_CONTROLLABLE</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).OnAfterStop" >
|
||||
<strong>FSM_CONTROLLABLE:OnAfterStop(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnAfter Transition Handler for Event Stop.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Controllable.html##(CONTROLLABLE)">Wrapper.Controllable#CONTROLLABLE</a> Controllable </em></code>:
|
||||
The Controllable Object managed by the FSM.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string From </em></code>:
|
||||
The From State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Event </em></code>:
|
||||
The Event string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).OnBeforeStop" >
|
||||
<strong>FSM_CONTROLLABLE:OnBeforeStop(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnBefore Transition Handler for Event Stop.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Controllable.html##(CONTROLLABLE)">Wrapper.Controllable#CONTROLLABLE</a> Controllable </em></code>:
|
||||
The Controllable Object managed by the FSM.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string From </em></code>:
|
||||
The From State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Event </em></code>:
|
||||
The Event string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#boolean:</em>
|
||||
Return false to cancel Transition.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).OnEnterStopped" >
|
||||
<strong>FSM_CONTROLLABLE:OnEnterStopped(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnEnter Transition Handler for State Stopped.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Controllable.html##(CONTROLLABLE)">Wrapper.Controllable#CONTROLLABLE</a> Controllable </em></code>:
|
||||
The Controllable Object managed by the FSM.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string From </em></code>:
|
||||
The From State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Event </em></code>:
|
||||
The Event string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).OnLeaveStopped" >
|
||||
<strong>FSM_CONTROLLABLE:OnLeaveStopped(Controllable, From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnLeave Transition Handler for State Stopped.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Controllable.html##(CONTROLLABLE)">Wrapper.Controllable#CONTROLLABLE</a> Controllable </em></code>:
|
||||
The Controllable Object managed by the FSM.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string From </em></code>:
|
||||
The From State string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Event </em></code>:
|
||||
The Event string.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string To </em></code>:
|
||||
The To State string.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#boolean:</em>
|
||||
Return false to cancel Transition.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1991,6 +2197,41 @@ Finite State Machine Table</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).Stop" >
|
||||
<strong>FSM_CONTROLLABLE:Stop()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Synchronous Event Trigger for Event Stop.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE).__Stop" >
|
||||
<strong>FSM_CONTROLLABLE:__Stop(Delay)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Asynchronous Event Trigger for Event Stop.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Delay </em></code>:
|
||||
The delay in seconds. </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(FSM_CONTROLLABLE)._call_handler" >
|
||||
<strong>FSM_CONTROLLABLE:_call_handler(handler, params, EventName)</strong>
|
||||
</a>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li>Group</li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li>Identifiable</li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li>MOVEMENT</li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li>Movement</li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -69,7 +69,7 @@
|
||||
</ul>
|
||||
</div>
|
||||
<div id="content">
|
||||
<h1>Module <code>MOVEMENT</code></h1>
|
||||
<h1>Module <code>Movement</code></h1>
|
||||
|
||||
<p>Limit the simultaneous movement of Groups within a running Mission.</p>
|
||||
|
||||
@ -88,30 +88,60 @@ on defined intervals (currently every minute).</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h2><a id="#(MOVEMENT)" >Type <code>MOVEMENT</code></a></h2>
|
||||
<table class="function_list">
|
||||
<h2><a id="#(MOVEMENT)">Type <code>MOVEMENT</code></a></h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).AliveUnits">MOVEMENT.AliveUnits</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).ClassName">MOVEMENT.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveCount">MOVEMENT.MoveCount</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveMaximum">MOVEMENT.MoveMaximum</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MovePrefixes">MOVEMENT.MovePrefixes</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveUnits">MOVEMENT.MoveUnits</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).New">MOVEMENT:New(MovePrefixes, MoveMaximum)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).OnBirth">MOVEMENT:OnBirth(Event)</a></td>
|
||||
<td class="summary">
|
||||
<p>Captures the birth events when new Units were spawned.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).OnDeadOrCrash">MOVEMENT:OnDeadOrCrash(Event)</a></td>
|
||||
<td class="summary">
|
||||
<p>Captures the Dead or Crash events when Units crash or are destroyed.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).OnEventBirth">MOVEMENT:OnEventBirth(self, EventData)</a></td>
|
||||
<td class="summary">
|
||||
<p>Captures the birth events when new Units were spawned.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -149,8 +179,30 @@ on defined intervals (currently every minute).</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<h2><a id="#(MOVEMENT)" >Type <code>MOVEMENT</code></a></h2>
|
||||
<h3>Field(s)</h3>
|
||||
<h2><a id="#(Movement)" >Type <code>Movement</code></a></h2>
|
||||
|
||||
<h2><a id="#(MOVEMENT)" >Type <code>MOVEMENT</code></a></h2>
|
||||
|
||||
<p>the MOVEMENT class</p>
|
||||
|
||||
<h3>Field(s)</h3>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(MOVEMENT).AliveUnits" >
|
||||
<strong>MOVEMENT.AliveUnits</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Contains the counter how many units are currently alive</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
@ -163,6 +215,71 @@ on defined intervals (currently every minute).</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(MOVEMENT).MoveCount" >
|
||||
<strong>MOVEMENT.MoveCount</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> The internal counter of the amount of Moveing the has happened since MoveStart.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(MOVEMENT).MoveMaximum" >
|
||||
<strong>MOVEMENT.MoveMaximum</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Contains the Maximum amount of units that are allowed to move...</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(MOVEMENT).MovePrefixes" >
|
||||
<strong>MOVEMENT.MovePrefixes</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(MOVEMENT).MoveUnits" >
|
||||
<strong>MOVEMENT.MoveUnits</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Reflects if the Moving for this MovePrefixes is going to be scheduled or not.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -194,13 +311,13 @@ on defined intervals (currently every minute).</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MOVEMENT).OnBirth" >
|
||||
<strong>MOVEMENT:OnBirth(Event)</strong>
|
||||
<a id="#(MOVEMENT).OnDeadOrCrash" >
|
||||
<strong>MOVEMENT:OnDeadOrCrash(Event)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Captures the birth events when new Units were spawned.</p>
|
||||
<p>Captures the Dead or Crash events when Units crash or are destroyed.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
@ -215,19 +332,24 @@ on defined intervals (currently every minute).</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MOVEMENT).OnDeadOrCrash" >
|
||||
<strong>MOVEMENT:OnDeadOrCrash(Event)</strong>
|
||||
<a id="#(MOVEMENT).OnEventBirth" >
|
||||
<strong>MOVEMENT:OnEventBirth(self, EventData)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Captures the Dead or Crash events when Units crash or are destroyed.</p>
|
||||
<p>Captures the birth events when new Units were spawned.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Event </em></code>: </p>
|
||||
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> self </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EventData </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li>Menu</li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li>Message</li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li>MissileTrainer</li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -296,6 +296,12 @@ Together with the <strong>476 virtual team</strong>, we tested the MISSILETRAINE
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSILETRAINER).New">MISSILETRAINER:New(Distance, Briefing)</a></td>
|
||||
<td class="summary">
|
||||
<p>Creates the main object which is handling missile tracking.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSILETRAINER).OnEventShot">MISSILETRAINER:OnEventShot(EventData, EVentData)</a></td>
|
||||
<td class="summary">
|
||||
<p>Detects if an SA site was shot with an anti radiation missile.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -338,12 +344,6 @@ Together with the <strong>476 virtual team</strong>, we tested the MISSILETRAINE
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSILETRAINER)._Alive">MISSILETRAINER._Alive(Client, self)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSILETRAINER)._EventShot">MISSILETRAINER:_EventShot(Event)</a></td>
|
||||
<td class="summary">
|
||||
<p>Detects if an SA site was shot with an anti radiation missile.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -820,6 +820,35 @@ The distance in meters when a tracked missile needs to be destroyed when close t
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSILETRAINER).OnEventShot" >
|
||||
<strong>MISSILETRAINER:OnEventShot(EventData, EVentData)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Detects if an SA site was shot with an anti radiation missile.</p>
|
||||
|
||||
|
||||
<p>In this case, take evasive actions based on the skill level set within the ME.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> EventData </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> EVentData </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSILETRAINER).TrackingFrequency" >
|
||||
<strong>MISSILETRAINER.TrackingFrequency</strong>
|
||||
</a>
|
||||
@ -953,30 +982,6 @@ The distance in meters when a tracked missile needs to be destroyed when close t
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSILETRAINER)._EventShot" >
|
||||
<strong>MISSILETRAINER:_EventShot(Event)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Detects if an SA site was shot with an anti radiation missile.</p>
|
||||
|
||||
|
||||
<p>In this case, take evasive actions based on the skill level set within the ME.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> Event </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSILETRAINER)._MenuMessages" >
|
||||
<strong>MISSILETRAINER._MenuMessages(MenuParameters)</strong>
|
||||
</a>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li>Mission</li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li>Object</li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li>Point</li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li>Positionable</li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -138,6 +138,12 @@ The Schedule() method returns the CallID that is the reference ID for each plann
|
||||
<td class="name" nowrap="nowrap"><a href="##(SCHEDULEDISPATCHER).ClassName">SCHEDULEDISPATCHER.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(SCHEDULEDISPATCHER).Clear">SCHEDULEDISPATCHER:Clear(Scheduler)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -287,6 +293,27 @@ Nothing of this code should be modified without testing it thoroughly.</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(SCHEDULEDISPATCHER).Clear" >
|
||||
<strong>SCHEDULEDISPATCHER:Clear(Scheduler)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Scheduler </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -39,11 +39,11 @@
|
||||
<li><a href="Fsm.html">Fsm</a></li>
|
||||
<li><a href="Group.html">Group</a></li>
|
||||
<li><a href="Identifiable.html">Identifiable</a></li>
|
||||
<li><a href="MOVEMENT.html">MOVEMENT</a></li>
|
||||
<li><a href="Menu.html">Menu</a></li>
|
||||
<li><a href="Message.html">Message</a></li>
|
||||
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
||||
<li><a href="Mission.html">Mission</a></li>
|
||||
<li><a href="Movement.html">Movement</a></li>
|
||||
<li><a href="Object.html">Object</a></li>
|
||||
<li><a href="Point.html">Point</a></li>
|
||||
<li><a href="Positionable.html">Positionable</a></li>
|
||||
@ -141,6 +141,12 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(SCHEDULER).ClassName">SCHEDULER.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(SCHEDULER).Clear">SCHEDULER:Clear()</a></td>
|
||||
<td class="summary">
|
||||
<p>Clears all pending schedules.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -227,6 +233,19 @@
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(SCHEDULER).Clear" >
|
||||
<strong>SCHEDULER:Clear()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Clears all pending schedules.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user