From 4fda8cc5fb4eeae2d356b58261526839274055f4 Mon Sep 17 00:00:00 2001 From: kaltokri Date: Tue, 9 Jan 2024 16:09:19 +0100 Subject: [PATCH 1/5] Easy debugging for all Moosers #2093 Enables everybody to use load Moose from an external full path. This is needed to use PyCharm with EmmyLua Debugger. Needs also De-Sanitize to load mission script with full path. --- Moose Development/Moose/Modules.lua | 281 +++++++++--------- .../Moose Templates/Moose_Dynamic_Loader.lua | 6 +- .../Moose Templates/Moose_Static_Loader.lua | 8 +- 3 files changed, 152 insertions(+), 143 deletions(-) diff --git a/Moose Development/Moose/Modules.lua b/Moose Development/Moose/Modules.lua index bdc145ff2..cc311d84d 100644 --- a/Moose Development/Moose/Modules.lua +++ b/Moose Development/Moose/Modules.lua @@ -1,149 +1,152 @@ -__Moose.Include( 'Scripts/Moose/Utilities/Enums.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/Utils.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/Profiler.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/Templates.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/STTS.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/FiFo.lua' ) -__Moose.Include( 'Scripts/Moose/Utilities/Socket.lua' ) +if not MOOSE_DEVELOPMENT_FOLDER then + MOOSE_DEVELOPMENT_FOLDER='Scripts' +end +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Enums.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Utils.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Profiler.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Templates.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/STTS.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/FiFo.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Socket.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Base.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Astar.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Beacon.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Condition.lua' ) -__Moose.Include( 'Scripts/Moose/Core/UserFlag.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Report.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Scheduler.lua' ) -__Moose.Include( 'Scripts/Moose/Core/ScheduleDispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Event.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Settings.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Menu.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Zone.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Zone_Detection.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Database.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Set.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Point.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Velocity.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Message.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Fsm.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Spawn.lua' ) -__Moose.Include( 'Scripts/Moose/Core/SpawnStatic.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Timer.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Goal.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Spot.lua' ) -__Moose.Include( 'Scripts/Moose/Core/MarkerOps_Base.lua' ) -__Moose.Include( 'Scripts/Moose/Core/TextAndSound.lua' ) -__Moose.Include( 'Scripts/Moose/Core/Pathline.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Base.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Astar.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Beacon.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Condition.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/UserFlag.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Report.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Scheduler.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/ScheduleDispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Event.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Settings.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Menu.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Zone.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Zone_Detection.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Database.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Set.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Point.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Velocity.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Message.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Fsm.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Spawn.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/SpawnStatic.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Timer.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Goal.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Spot.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/MarkerOps_Base.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/TextAndSound.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Core/Pathline.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Object.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Identifiable.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Positionable.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Controllable.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Group.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Unit.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Client.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Static.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Airbase.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Scenery.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Marker.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Weapon.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Net.lua' ) -__Moose.Include( 'Scripts/Moose/Wrapper/Storage.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Object.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Identifiable.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Positionable.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Controllable.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Group.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Unit.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Client.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Static.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Airbase.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Scenery.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Marker.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Weapon.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Net.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Wrapper/Storage.lua' ) -__Moose.Include( 'Scripts/Moose/Cargo/Cargo.lua' ) -__Moose.Include( 'Scripts/Moose/Cargo/CargoUnit.lua' ) -__Moose.Include( 'Scripts/Moose/Cargo/CargoSlingload.lua' ) -__Moose.Include( 'Scripts/Moose/Cargo/CargoCrate.lua' ) -__Moose.Include( 'Scripts/Moose/Cargo/CargoGroup.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Cargo/Cargo.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Cargo/CargoUnit.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Cargo/CargoSlingload.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Cargo/CargoCrate.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Cargo/CargoGroup.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Scoring.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/CleanUp.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Movement.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Sead.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Escort.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/MissileTrainer.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/ATC_Ground.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Detection.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/DetectionZones.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Designate.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/RAT.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Range.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/ZoneGoal.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/ZoneGoalCoalition.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/ZoneCaptureCoalition.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Artillery.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Suppression.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/PseudoATC.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Warehouse.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Fox.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Mantis.lua' ) -__Moose.Include( 'Scripts/Moose/Functional/Shorad.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Scoring.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/CleanUp.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Movement.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Sead.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Escort.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/MissileTrainer.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/ATC_Ground.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Detection.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/DetectionZones.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Designate.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/RAT.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Range.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/ZoneGoal.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/ZoneGoalCoalition.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/ZoneCaptureCoalition.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Artillery.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Suppression.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/PseudoATC.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Warehouse.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Fox.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Mantis.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Functional/Shorad.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/Airboss.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/RecoveryTanker.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/RescueHelo.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/ATIS.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/CTLD.lua' ) -__Moose.Include( 'Scripts/Moose/Ops/CSAR.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/Airboss.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/RecoveryTanker.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/RescueHelo.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/ATIS.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/CTLD.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Ops/CSAR.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Balancer.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Air.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Air_Patrol.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Air_Engage.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2A_Patrol.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2A_Cap.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2A_Gci.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2A_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2G_BAI.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2G_CAS.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2G_SEAD.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_A2G_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Patrol.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_CAP.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_CAS.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_BAI.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Formation.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Escort.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Escort_Request.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Escort_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Escort_Dispatcher_Request.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_APC.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Helicopter.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Airplane.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Ship.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Dispatcher_APC.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua' ) -__Moose.Include( 'Scripts/Moose/AI/AI_Cargo_Dispatcher_Ship.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Balancer.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Air.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Air_Patrol.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Air_Engage.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2A_Patrol.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2A_Cap.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2A_Gci.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2A_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2G_BAI.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2G_CAS.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2G_SEAD.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_A2G_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Patrol.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_CAP.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_CAS.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_BAI.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Formation.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Escort.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Escort_Request.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Escort_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Escort_Dispatcher_Request.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_APC.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Helicopter.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Airplane.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Ship.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Dispatcher_APC.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/AI/AI_Cargo_Dispatcher_Ship.lua' ) -__Moose.Include( 'Scripts/Moose/Actions/Act_Assign.lua' ) -__Moose.Include( 'Scripts/Moose/Actions/Act_Route.lua' ) -__Moose.Include( 'Scripts/Moose/Actions/Act_Account.lua' ) -__Moose.Include( 'Scripts/Moose/Actions/Act_Assist.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Actions/Act_Assign.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Actions/Act_Route.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Actions/Act_Account.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Actions/Act_Assist.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/UserSound.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/SoundOutput.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/Radio.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/RadioQueue.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/RadioSpeech.lua' ) -__Moose.Include( 'Scripts/Moose/Sound/SRS.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/UserSound.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/SoundOutput.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/Radio.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/RadioQueue.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/RadioSpeech.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Sound/SRS.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/CommandCenter.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Mission.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/TaskInfo.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Manager.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/DetectionManager.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_A2G_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_A2G.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_A2A_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_A2A.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_CARGO.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Cargo_Transport.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Cargo_CSAR.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Cargo_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Capture_Zone.lua' ) -__Moose.Include( 'Scripts/Moose/Tasking/Task_Capture_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/CommandCenter.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Mission.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/TaskInfo.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Manager.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/DetectionManager.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_A2G_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_A2G.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_A2A_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_A2A.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_CARGO.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Cargo_Transport.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Cargo_CSAR.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Cargo_Dispatcher.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Capture_Zone.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Tasking/Task_Capture_Dispatcher.lua' ) -__Moose.Include( 'Scripts/Moose/Globals.lua' ) +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Globals.lua' ) diff --git a/Moose Setup/Moose Templates/Moose_Dynamic_Loader.lua b/Moose Setup/Moose Templates/Moose_Dynamic_Loader.lua index d63555297..705345afe 100644 --- a/Moose Setup/Moose Templates/Moose_Dynamic_Loader.lua +++ b/Moose Setup/Moose Templates/Moose_Dynamic_Loader.lua @@ -18,5 +18,7 @@ __Moose.Include = function( IncludeFile ) end __Moose.Includes = {} - -__Moose.Include( 'Scripts/Moose/Modules.lua' ) +if not MOOSE_DEVELOPMENT_FOLDER then + MOOSE_DEVELOPMENT_FOLDER='Scripts' +end +__Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Modules.lua' ) diff --git a/Moose Setup/Moose Templates/Moose_Static_Loader.lua b/Moose Setup/Moose Templates/Moose_Static_Loader.lua index 788682234..5acab64b1 100644 --- a/Moose Setup/Moose Templates/Moose_Static_Loader.lua +++ b/Moose Setup/Moose Templates/Moose_Static_Loader.lua @@ -3,7 +3,11 @@ -- Try to load Moose as individual script files from Date: Wed, 10 Jan 2024 15:18:34 +0100 Subject: [PATCH 2/5] Added player name to `...PilotDown()` event --- Moose Development/Moose/Ops/CSAR.lua | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/Moose Development/Moose/Ops/CSAR.lua b/Moose Development/Moose/Ops/CSAR.lua index 147b742f8..5ecc2c4c8 100644 --- a/Moose Development/Moose/Ops/CSAR.lua +++ b/Moose Development/Moose/Ops/CSAR.lua @@ -293,7 +293,7 @@ CSAR.AircraftType["Bronco-OV-10A"] = 2 --- CSAR class version. -- @field #string version -CSAR.version="1.0.18" +CSAR.version="1.0.19" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- ToDo list @@ -536,6 +536,7 @@ function CSAR:New(Coalition, Template, Alias) -- @param #number Frequency Beacon frequency in kHz. -- @param #string Leadername Name of the #UNIT of the downed pilot. -- @param #string CoordinatesText String of the position of the pilot. Format determined by self.coordtype. + -- @param #string Playername Player name if any given. Might be nil! --- On After "Aproach" event. Heli close to downed Pilot. -- @function [parent=#CSAR] OnAfterApproach @@ -842,7 +843,7 @@ function CSAR:_AddCsar(_coalition , _country, _point, _typeName, _unitName, _pla self:_CreateDownedPilotTrack(_spawnedGroup,_GroupName,_coalition,_unitName,_text,_typeName,_freq,_playerName,wetfeet) - self:_InitSARForPilot(_spawnedGroup, _unitName, _freq, noMessage) --shagrat use unitName to have the aircraft callsign / descriptive "name" etc. + self:_InitSARForPilot(_spawnedGroup, _unitName, _freq, noMessage, _playerName) --shagrat use unitName to have the aircraft callsign / descriptive "name" etc. return self end @@ -1224,7 +1225,8 @@ end -- @param #string _GroupName Name of the Group -- @param #number _freq Beacon frequency. -- @param #boolean _nomessage Send message true or false. -function CSAR:_InitSARForPilot(_downedGroup, _GroupName, _freq, _nomessage) +-- @param #string _playername Name of the downed pilot if any +function CSAR:_InitSARForPilot(_downedGroup, _GroupName, _freq, _nomessage, _playername) self:T(self.lid .. " _InitSARForPilot") local _leader = _downedGroup:GetUnit(1) local _groupName = _GroupName @@ -1247,7 +1249,7 @@ function CSAR:_InitSARForPilot(_downedGroup, _GroupName, _freq, _nomessage) end -- trigger FSM event - self:__PilotDown(2,_downedGroup, _freqk, _groupName, _coordinatesText) + self:__PilotDown(2,_downedGroup, _freqk, _groupName, _coordinatesText, _playername) return self end @@ -1923,7 +1925,7 @@ function CSAR:_DisplayToAllSAR(_message, _side, _messagetime) local messagetime = _messagetime or self.messageTime if self.msrs then local voice = self.CSARVoice or MSRS.Voices.Google.Standard.en_GB_Standard_F - if self.msrs.google == nil then + if self.msrs:GetProvider() == MSRS.Provider.WINDOWS then voice = self.CSARVoiceMS or MSRS.Voices.Microsoft.Hedda end self:I("Voice = "..voice) @@ -2310,7 +2312,8 @@ function CSAR:onafterStart(From, Event, To) self.msrs:SetVoice(self.SRSVoice) self.msrs:SetGender(self.SRSGender) if self.SRSGPathToCredentials then - self.msrs:SetGoogle(self.SRSGPathToCredentials) + self.msrs:SetProviderOptionsGoogle(self.SRSGPathToCredentials,self.SRSGPathToCredentials) + self.msrs:SetProvider(MSRS.Provider.GOOGLE) end self.msrs:SetVolume(self.SRSVolume) self.msrs:SetLabel("CSAR") @@ -2542,8 +2545,9 @@ end -- @param #number Frequency Beacon frequency in kHz. -- @param #string Leadername Name of the #UNIT of the downed pilot. -- @param #string CoordinatesText String of the position of the pilot. Format determined by self.coordtype. -function CSAR:onbeforePilotDown(From, Event, To, Group, Frequency, Leadername, CoordinatesText) - self:T({From, Event, To, Group, Frequency, Leadername, CoordinatesText}) +-- @param #string Playername Player name if any given. Might be nil! +function CSAR:onbeforePilotDown(From, Event, To, Group, Frequency, Leadername, CoordinatesText, Playername) + self:T({From, Event, To, Group, Frequency, Leadername, CoordinatesText, tostring(Playername)}) return self end From 91a34ac4d8511bb8d055ab375a41e09c55e93603 Mon Sep 17 00:00:00 2001 From: kaltokri Date: Wed, 10 Jan 2024 15:40:46 +0100 Subject: [PATCH 3/5] Added PyCharm to gitignore --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 0c4d33db8..941c6a3a9 100644 --- a/.gitignore +++ b/.gitignore @@ -221,6 +221,9 @@ pip-log.txt #Goodsync _gsdata_/ +# PyCharm +.idea + #GITHUB Moose Test Missions/MOOSE_Test_Template.miz Moose Development/Moose/.vscode/launch.json From eb84ad3ceeb7355558dc20d0c7615de86047982c Mon Sep 17 00:00:00 2001 From: kaltokri Date: Wed, 10 Jan 2024 15:43:24 +0100 Subject: [PATCH 4/5] Fix for Moose_Create.lua and dynamic path --- Moose Development/Moose/Modules.lua | 3 --- Moose Setup/Moose_Create.lua | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/Moose Development/Moose/Modules.lua b/Moose Development/Moose/Modules.lua index cc311d84d..c483b8d21 100644 --- a/Moose Development/Moose/Modules.lua +++ b/Moose Development/Moose/Modules.lua @@ -1,6 +1,3 @@ -if not MOOSE_DEVELOPMENT_FOLDER then - MOOSE_DEVELOPMENT_FOLDER='Scripts' -end __Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Enums.lua' ) __Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Utils.lua' ) __Moose.Include( MOOSE_DEVELOPMENT_FOLDER..'/Moose/Utilities/Profiler.lua' ) diff --git a/Moose Setup/Moose_Create.lua b/Moose Setup/Moose_Create.lua index 0bfde46ac..a69a34a18 100644 --- a/Moose Setup/Moose_Create.lua +++ b/Moose Setup/Moose_Create.lua @@ -59,7 +59,7 @@ while( MooseSource ) do MooseSource = string.gsub(MooseSource, "\r", "") if MooseSource ~= "" then - MooseSource = string.match( MooseSource, "Scripts/Moose/(.+)'" ) + MooseSource = string.match( MooseSource, "/Moose/(.+)'" ) local MooseFilePath = MooseDevelopmentPath .. "/" .. MooseSource if MooseDynamicStatic == "D" then print( "Load dynamic: " .. MooseFilePath ) From 8b08942c4d220fe33d1479b9de0728231d6b6ded Mon Sep 17 00:00:00 2001 From: Applevangelist Date: Thu, 11 Jan 2024 12:51:58 +0100 Subject: [PATCH 5/5] CONTROLLABLE - Added options for Radar Using --- .../Moose/Wrapper/Controllable.lua | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/Moose Development/Moose/Wrapper/Controllable.lua b/Moose Development/Moose/Wrapper/Controllable.lua index 8deaf6cf9..384281c32 100644 --- a/Moose Development/Moose/Wrapper/Controllable.lua +++ b/Moose Development/Moose/Wrapper/Controllable.lua @@ -4018,6 +4018,62 @@ function CONTROLLABLE:OptionEngageRange( EngageRange ) return nil end +--- [AIR] Set how the AI uses the onboard radar. +-- @param #CONTROLLABLE self +-- @param #number Option Options are: `NEVER = 0, FOR_ATTACK_ONLY = 1,FOR_SEARCH_IF_REQUIRED = 2, FOR_CONTINUOUS_SEARCH = 3` +-- @return #CONTROLLABLE self +function CONTROLLABLE:SetOptionRadarUsing(Option) + self:F2( { self.ControllableName } ) + if self:IsAir() then + self:SetOption(AI.Option.Air.id.RADAR_USING,Option) + end + return self +end + +--- [AIR] Set how the AI uses the onboard radar. Here: never. +-- @param #CONTROLLABLE self +-- @return #CONTROLLABLE self +function CONTROLLABLE:SetOptionRadarUsingNever() + self:F2( { self.ControllableName } ) + if self:IsAir() then + self:SetOption(AI.Option.Air.id.RADAR_USING,0) + end + return self +end + +--- [AIR] Set how the AI uses the onboard radar, here: for attack only. +-- @param #CONTROLLABLE self +-- @return #CONTROLLABLE self +function CONTROLLABLE:SetOptionRadarUsingForAttackOnly() + self:F2( { self.ControllableName } ) + if self:IsAir() then + self:SetOption(AI.Option.Air.id.RADAR_USING,1) + end + return self +end + +--- [AIR] Set how the AI uses the onboard radar, here: when required for searching. +-- @param #CONTROLLABLE self +-- @return #CONTROLLABLE self +function CONTROLLABLE:SetOptionRadarUsingForSearchIfRequired() + self:F2( { self.ControllableName } ) + if self:IsAir() then + self:SetOption(AI.Option.Air.id.RADAR_USING,2) + end + return self +end + +--- [AIR] Set how the AI uses the onboard radar, here: always on. +-- @param #CONTROLLABLE self +-- @return #CONTROLLABLE self +function CONTROLLABLE:SetOptionRadarUsingForContinousSearch() + self:F2( { self.ControllableName } ) + if self:IsAir() then + self:SetOption(AI.Option.Air.id.RADAR_USING,3) + end + return self +end + --- (GROUND) Relocate controllable to a random point within a given radius; use e.g.for evasive actions; Note that not all ground controllables can actually drive, also the alarm state of the controllable might stop it from moving. -- @param #CONTROLLABLE self -- @param #number speed Speed of the controllable, default 20