mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Merge remote-tracking branch 'refs/remotes/origin/master' into Detection
This commit is contained in:
commit
d005b5a048
@ -717,7 +717,7 @@ function EVENT:onEvent( Event )
|
|||||||
Event.WeaponName = Event.Weapon:getTypeName()
|
Event.WeaponName = Event.Weapon:getTypeName()
|
||||||
--Event.WeaponTgtDCSUnit = Event.Weapon:getTarget()
|
--Event.WeaponTgtDCSUnit = Event.Weapon:getTarget()
|
||||||
end
|
end
|
||||||
self:E( { _EVENTCODES[Event.id], Event.IniUnitName, Event.TgtUnitName, Event.WeaponName } )
|
self:E( { _EVENTCODES[Event.id], Event.initiator, Event.IniDCSUnitName, Event.target, Event.TgtDCSUnitName, Event.weapon, Event.WeaponName } )
|
||||||
for ClassName, EventData in pairs( self.Events[Event.id] ) do
|
for ClassName, EventData in pairs( self.Events[Event.id] ) do
|
||||||
if Event.IniDCSUnitName and EventData.IniUnit and EventData.IniUnit[Event.IniDCSUnitName] then
|
if Event.IniDCSUnitName and EventData.IniUnit and EventData.IniUnit[Event.IniDCSUnitName] then
|
||||||
self:T( { "Calling event function for class ", ClassName, " unit ", Event.IniUnitName } )
|
self:T( { "Calling event function for class ", ClassName, " unit ", Event.IniUnitName } )
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
-- It suports the following functionality:
|
-- It suports the following functionality:
|
||||||
--
|
--
|
||||||
-- * Track the missiles fired at you and other players, providing bearing and range information of the missiles towards the airplanes.
|
-- * Track the missiles fired at you and other players, providing bearing and range information of the missiles towards the airplanes.
|
||||||
-- * Provide alerts of missile launches, including detailed information of the units launching, including bearing, range …
|
-- * Provide alerts of missile launches, including detailed information of the units launching, including bearing, range <EFBFBD>
|
||||||
-- * Provide alerts when a missile would have killed your aircraft.
|
-- * Provide alerts when a missile would have killed your aircraft.
|
||||||
-- * Provide alerts when the missile self destructs.
|
-- * Provide alerts when the missile self destructs.
|
||||||
-- * Enable / Disable and Configure the Missile Trainer using the various menu options.
|
-- * Enable / Disable and Configure the Missile Trainer using the various menu options.
|
||||||
@ -461,42 +461,47 @@ function MISSILETRAINER:_EventShot( Event )
|
|||||||
self:T( "Missile Launched = " .. TrainerWeaponName )
|
self:T( "Missile Launched = " .. TrainerWeaponName )
|
||||||
|
|
||||||
local TrainerTargetDCSUnit = TrainerWeapon:getTarget() -- Identify target
|
local TrainerTargetDCSUnit = TrainerWeapon:getTarget() -- Identify target
|
||||||
local TrainerTargetDCSUnitName = Unit.getName( TrainerTargetDCSUnit )
|
if TrainerTargetDCSUnit then
|
||||||
local TrainerTargetSkill = _DATABASE.Templates.Units[TrainerTargetDCSUnitName].Template.skill
|
local TrainerTargetDCSUnitName = Unit.getName( TrainerTargetDCSUnit )
|
||||||
|
local TrainerTargetSkill = _DATABASE.Templates.Units[TrainerTargetDCSUnitName].Template.skill
|
||||||
|
|
||||||
self:T(TrainerTargetDCSUnitName )
|
self:T(TrainerTargetDCSUnitName )
|
||||||
|
|
||||||
local Client = self.DBClients:FindClient( TrainerTargetDCSUnitName )
|
local Client = self.DBClients:FindClient( TrainerTargetDCSUnitName )
|
||||||
if Client then
|
if Client then
|
||||||
|
|
||||||
local TrainerSourceUnit = UNIT:Find( TrainerSourceDCSUnit )
|
local TrainerSourceUnit = UNIT:Find( TrainerSourceDCSUnit )
|
||||||
local TrainerTargetUnit = UNIT:Find( TrainerTargetDCSUnit )
|
local TrainerTargetUnit = UNIT:Find( TrainerTargetDCSUnit )
|
||||||
|
|
||||||
if self.MessagesOnOff == true and self.AlertsLaunchesOnOff == true then
|
if self.MessagesOnOff == true and self.AlertsLaunchesOnOff == true then
|
||||||
|
|
||||||
local Message = MESSAGE:New(
|
local Message = MESSAGE:New(
|
||||||
string.format( "%s launched a %s",
|
string.format( "%s launched a %s",
|
||||||
TrainerSourceUnit:GetTypeName(),
|
TrainerSourceUnit:GetTypeName(),
|
||||||
TrainerWeaponName
|
TrainerWeaponName
|
||||||
) .. self:_AddRange( Client, TrainerWeapon ) .. self:_AddBearing( Client, TrainerWeapon ), 5, "Launch Alert" )
|
) .. self:_AddRange( Client, TrainerWeapon ) .. self:_AddBearing( Client, TrainerWeapon ), 5, "Launch Alert" )
|
||||||
|
|
||||||
if self.AlertsToAll then
|
if self.AlertsToAll then
|
||||||
Message:ToAll()
|
Message:ToAll()
|
||||||
else
|
else
|
||||||
Message:ToClient( Client )
|
Message:ToClient( Client )
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
local ClientID = Client:GetID()
|
local ClientID = Client:GetID()
|
||||||
self:T( ClientID )
|
self:T( ClientID )
|
||||||
local MissileData = {}
|
local MissileData = {}
|
||||||
MissileData.TrainerSourceUnit = TrainerSourceUnit
|
MissileData.TrainerSourceUnit = TrainerSourceUnit
|
||||||
MissileData.TrainerWeapon = TrainerWeapon
|
MissileData.TrainerWeapon = TrainerWeapon
|
||||||
MissileData.TrainerTargetUnit = TrainerTargetUnit
|
MissileData.TrainerTargetUnit = TrainerTargetUnit
|
||||||
MissileData.TrainerWeaponTypeName = TrainerWeapon:getTypeName()
|
MissileData.TrainerWeaponTypeName = TrainerWeapon:getTypeName()
|
||||||
MissileData.TrainerWeaponLaunched = true
|
MissileData.TrainerWeaponLaunched = true
|
||||||
table.insert( self.TrackingMissiles[ClientID].MissileData, MissileData )
|
table.insert( self.TrackingMissiles[ClientID].MissileData, MissileData )
|
||||||
--self:T( self.TrackingMissiles )
|
--self:T( self.TrackingMissiles )
|
||||||
|
end
|
||||||
|
else
|
||||||
|
-- TODO: some weapons don't know the target unit... Need to develop a workaround for this.
|
||||||
|
SCHEDULER:New( TrainerWeapon, TrainerWeapon.destroy, {}, 2 )
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
232
Moose Development/Release Notes/2016-07 - ReleaseNotes.txt
Normal file
232
Moose Development/Release Notes/2016-07 - ReleaseNotes.txt
Normal file
@ -0,0 +1,232 @@
|
|||||||
|
2016-07-23
|
||||||
|
|
||||||
|
- Fixed problem in MISSILETRAINER
|
||||||
|
- For some weapontypes, there is no target known when launched.
|
||||||
|
- Workaround: Missiles get destroyed immediately after launch for those missile types.
|
||||||
|
- Known missiles that have these problem are mavericks and missiles launched by Tunguskas.
|
||||||
|
|
||||||
|
- Added more tracing in the EVENT class, appearing in DCS.log
|
||||||
|
|
||||||
|
- Added MENU_MISSION classes
|
||||||
|
-- Added class MENU_MISSION
|
||||||
|
-- Added class MENU_MISSION_COMMAND
|
||||||
|
-- Revised documentation of Menu
|
||||||
|
-- Fixed bug in SCORING class to set the scoring menu
|
||||||
|
|
||||||
|
- Added functions in SPAWN class
|
||||||
|
-- Added SPAWN:SpawnFromVec3()
|
||||||
|
-- Added SPAWN:SpawnFromVec2()
|
||||||
|
-- Revised SPAWN:SpawnFromUnit()
|
||||||
|
-- Revised SPAWN:SpawnFromZone()
|
||||||
|
|
||||||
|
- Added test missions for SPAWN class
|
||||||
|
- Moose_Test_SPAWN_SpawnFromVec3.miz
|
||||||
|
- Moose_Test_SPAWN_SpawnFromVec2.miz
|
||||||
|
- Moose_Test_SPAWN_SpawnFromUnit.miz
|
||||||
|
- Moose_Test_SPAWN_SpawnFromZone.miz
|
||||||
|
|
||||||
|
- Added functions in POINT_VEC3 class
|
||||||
|
-- Added POINT_VEC3:GetVec2()
|
||||||
|
-- Added POINT_VEC3:GetRandomVec2InRadius()
|
||||||
|
|
||||||
|
- Added functions in POINT_VEC2 class
|
||||||
|
-- Added POINT_VEC2:NewFromVec2()
|
||||||
|
|
||||||
|
- Revised the STATIC class working with POSITIONABLE
|
||||||
|
- Revised ZONE_RADIUS:GetPointVec3()
|
||||||
|
- Revised the documentation.
|
||||||
|
|
||||||
|
- Revised the SCHEDULER class
|
||||||
|
-- Added SCHEDULER:Schedule()
|
||||||
|
-- Reworked SCHEDULER:New()
|
||||||
|
|
||||||
|
2016-07-21
|
||||||
|
|
||||||
|
- Added methods in CONTROLLABLE class
|
||||||
|
- CONTROLLABLE:GetMessage( Message, Duration )
|
||||||
|
- CONTROLLABLE:MessageToAll( Message, Duration )
|
||||||
|
- CONTROLLABLE:MessageToRed( Message, Duration )
|
||||||
|
- CONTROLLABLE:MessageToBlue( Message, Duration )
|
||||||
|
- CONTROLLABLE:MessageToClient( Message, Duration, Client )
|
||||||
|
- CONTROLLABLE:MessageToGroup( Message, Duration, MessageGroup )
|
||||||
|
- CONTROLLABLE:Message( Message, Duration )
|
||||||
|
|
||||||
|
- Added methods in DETECTION_AREAS class
|
||||||
|
- DETECTION_AREAS:NearestFAC( DetectedArea )
|
||||||
|
|
||||||
|
- Removed Message methods from GROUP
|
||||||
|
|
||||||
|
- Replaced TASK_CAS and TASK_BAI with TASK_A2G
|
||||||
|
|
||||||
|
- Added PROCESS_JTAC (which fits into TASK_A2G)
|
||||||
|
|
||||||
|
- Added methods in POINT_VEC3 class:
|
||||||
|
- POINT_VEC3:NewFromVec3( Vec3 )
|
||||||
|
|
||||||
|
- Added methods in SET_UNIT class
|
||||||
|
- SET_UNIT:GetUnitTypesText()
|
||||||
|
- SET_UNIT:GetUnitThreatLevels()
|
||||||
|
|
||||||
|
- Added methods in UNIT class
|
||||||
|
- UNIT:GetCallsign()
|
||||||
|
|
||||||
|
- Fixed bug in ZONE_GROUP
|
||||||
|
- Fixed bug in SCHEDULER
|
||||||
|
|
||||||
|
2016-07-19
|
||||||
|
|
||||||
|
- Updated presentation Moose Training/Presentations/DCS World - MOOSE - Detection - Part 1 - Explanation.pptx
|
||||||
|
|
||||||
|
- Fixed bug in AIBALANCER
|
||||||
|
|
||||||
|
- Added function BASE:IsTrace()
|
||||||
|
|
||||||
|
- Renamed functions GetPointVec2() to GetVec2() to prepare new naming convension...
|
||||||
|
- Still pending is the rename of GetPointVec3 to GetVec3()..
|
||||||
|
|
||||||
|
- Added DETECTION_AREAS class to manage detection in areas.
|
||||||
|
- Added DETECTION_BASE class
|
||||||
|
|
||||||
|
- Added DETECTION_MANAGER class
|
||||||
|
- Added DETECTION_DISPATCHER class to dispatch tasks to players.
|
||||||
|
- Added DETECTION_REPORTING class
|
||||||
|
|
||||||
|
- Added in EVENT class the RemoveEvent functions
|
||||||
|
|
||||||
|
- Removed FAC.lua file
|
||||||
|
|
||||||
|
- Added MENU classes to manager the menus.
|
||||||
|
- MENU_COALITION class
|
||||||
|
- MENU_COALITION_COMMAND class
|
||||||
|
- MENU_CLIENT class
|
||||||
|
- MENU_CLIENT_COMMAND class
|
||||||
|
- MENU-GROUP class
|
||||||
|
- MENU_GROUP_COMMAND class
|
||||||
|
|
||||||
|
- Added new TASK_BASE classes
|
||||||
|
- Added TASK_BAI
|
||||||
|
- Added TASK_CAS
|
||||||
|
- Added TASK_SEAD
|
||||||
|
|
||||||
|
- Added new PROCESS classes
|
||||||
|
- Added PROCESS_ASSIGN class
|
||||||
|
- Added PROCESS_DESTROY class
|
||||||
|
- Added PROCESS_ROUTE class
|
||||||
|
- Added PROCESS_SMOKE class
|
||||||
|
|
||||||
|
- Added POINT_VEC3 methods
|
||||||
|
- POINT_VEC3:GetVec3()
|
||||||
|
- POINT_VEC3:GetX()
|
||||||
|
- POINT_VEC3:GetY()
|
||||||
|
- POINT_VEC3:GetZ()
|
||||||
|
- POINT_VEC3:GetDirectionVec3( TargetPointVec3 )
|
||||||
|
- POINT_VEC3:GetNorthCorrectionRadians()
|
||||||
|
- POINT_VEC3:GetDirectionRadians( DirectionVec3 )
|
||||||
|
- POINT_VEC3:Get2DDistance( TargetPointVec3 )
|
||||||
|
- POINT_VEC3:Get3DDistance( TargetPointVec3 )
|
||||||
|
- POINT_VEC3:ToStringBR( AngleRadians, Distance )
|
||||||
|
- POINT_VEC3:ToStringLL( acc, DMS )
|
||||||
|
- POINT_VEC3:GetAltitudeText()
|
||||||
|
- POINT_VEC3:GetBRText( TargetPointVec3 )
|
||||||
|
- POINT_VEC3:SetMetric( Metric )
|
||||||
|
- POINT_VEC3:IsMetric()
|
||||||
|
|
||||||
|
- Added POINT_VEC2 methods
|
||||||
|
- POINT_VEC2:GetAltitudeText()
|
||||||
|
|
||||||
|
- Added POSITIONABLE method
|
||||||
|
- POSITIONABLE:GetRandomPointVec3( Radius )
|
||||||
|
- POSITIONABLE:GetVelocityKMH()
|
||||||
|
|
||||||
|
- Cleaned up Routines.lua file
|
||||||
|
|
||||||
|
- Fixed bug in handling CSV files in SCORING class
|
||||||
|
|
||||||
|
- Added lists to SET_ classes in Set.lua file
|
||||||
|
|
||||||
|
- Added STATEMACHINE classes
|
||||||
|
|
||||||
|
- Added UNIT methods
|
||||||
|
- UNIT:Destroy()
|
||||||
|
- UNIT:HasSensors( ... )
|
||||||
|
- UNIT:HasSEAD()
|
||||||
|
- UNIT:GetThreatLevel()
|
||||||
|
- UNIT:IsGround()
|
||||||
|
- UNIT:IsFriendly( FriendlyCoalition )
|
||||||
|
- UNIT:IsShip()
|
||||||
|
|
||||||
|
- Created Utils.lua file with many utility functions.
|
||||||
|
|
||||||
|
- Added method in ZONE_BASE
|
||||||
|
- ZONE_BASE:GetVec2()
|
||||||
|
|
||||||
|
- Added method in ZONE_UNIT
|
||||||
|
- ZONE_UNIT:GetPointVec3( Height )
|
||||||
|
|
||||||
|
- Reworked ZONE_UNIT so that it always will provide a position.
|
||||||
|
|
||||||
|
- Optimized the ray casting algorithm in ZONE_POLYGON_BASE:IsPointVec2InZone( PointVec2 )
|
||||||
|
|
||||||
|
2016-07-12
|
||||||
|
|
||||||
|
- Fixed bug in SPAWN, related to DEAD events.
|
||||||
|
|
||||||
|
- Added test mission Moose_Test_SPAWN_Limit_Scheduled
|
||||||
|
|
||||||
|
2016-07-08
|
||||||
|
|
||||||
|
- Fixed bug with velocity in AIRBASEPOLICE class
|
||||||
|
|
||||||
|
- Release in cooperation with dutch-baron the AIRBASEPOLIC_NAVADA class.
|
||||||
|
|
||||||
|
- Removed messages menu from CLIENT class
|
||||||
|
|
||||||
|
- Removed Moose_Test_DETECTION_Laser mission
|
||||||
|
|
||||||
|
2016-07-06
|
||||||
|
|
||||||
|
- Bugfixes in CONTROLLABLE and GROUP
|
||||||
|
|
||||||
|
2016-07-05
|
||||||
|
|
||||||
|
- Added country in DCScountry.lua
|
||||||
|
|
||||||
|
- Added DATABASE:GetGroupTemplate( GroupName )
|
||||||
|
|
||||||
|
- Added methods in GROUP class
|
||||||
|
- GROUP:Respawn( Template )
|
||||||
|
- GROUP:SetTemplateControlled( Template, Controlled )
|
||||||
|
- GROUP:SetTemplateCountry( Template, CountryID )
|
||||||
|
- GROUP:SetTemplateCoalition( Template, CoalitionID )
|
||||||
|
|
||||||
|
- Added ZONE_GROUP class
|
||||||
|
|
||||||
|
2016-07-04
|
||||||
|
|
||||||
|
- Fixed bug in SPAWN class restarting GROUPS after landing.
|
||||||
|
|
||||||
|
2016-07-03
|
||||||
|
|
||||||
|
- Added method in ZONE_UNIT
|
||||||
|
- ZONE_UNIT:GetRandomVec2()
|
||||||
|
|
||||||
|
2016-06-28
|
||||||
|
|
||||||
|
- Release of rework of MOOSE wrapper object model
|
||||||
|
- Added IDENTIFIABLE class
|
||||||
|
- Added POSITIONABLE class
|
||||||
|
- Added OBJECT class
|
||||||
|
- Added CONTROLLABLE class
|
||||||
|
|
||||||
|
2016-06-26
|
||||||
|
|
||||||
|
- Reworked scheduler implementations
|
||||||
|
|
||||||
|
2016-06-22
|
||||||
|
|
||||||
|
- Added AIBALANCER class
|
||||||
|
- Added PATROLZONE class
|
||||||
|
- Added POINT_VEC3 and POINT_VEC2 classes
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user