5328 Commits

Author SHA1 Message Date
MetalStormGhost
0bdb989a2c Aircraft squadrons are now products of the Hangar, instead of the air defence Command Center. 2024-02-25 12:39:44 +02:00
MetalStormGhost
765c85b639 Now generates one transport helicopter squadron for each control point which can operate one. Also implemented generating several Pretense cargo plane squadrons, defined by PRETENSE_AI_CARGO_PLANES_PER_SIDE. Cleaned up PretenseMissionGenerator.generate_air_units() a bit. 2024-02-25 12:39:44 +02:00
Raffson
7b9ddb1ece Formatting 2024-02-25 12:39:44 +02:00
MetalStormGhost
5fa7757ae1 Fixed not all generated flights getting inserted into Pretense data structures. 2024-02-25 12:39:43 +02:00
MetalStormGhost
064d17aab0 Improved the typing of game.pretense_air 2024-02-25 12:39:43 +02:00
MetalStormGhost
47ee0e5340 Added naval units (supply/cargo/landing ships) to Pretense scripts. 2024-02-25 12:39:43 +02:00
MetalStormGhost
6fd60d150e Raise NoParkingSlotError instead of RuntimeError when running out of ground spawns. 2024-02-25 12:39:43 +02:00
MetalStormGhost
946d578ffb Implemented generating player slots in the Pretense campaign. 2024-02-25 12:39:42 +02:00
MetalStormGhost
95bac8ec17 Run aircraft_generator.generate_packages() only once per ATO, instead of multiple times. Fixed the duplicated flights issue. 2024-02-25 12:39:42 +02:00
MetalStormGhost
91cfff58d9 Changed tanker_tacan from "N/A" to 0.0 when the tanker is not compatible with TACAN, in order to avoid mission script errors. 2024-02-25 12:39:42 +02:00
MetalStormGhost
585b3e74a0 Implemented a separate generate_packages() method in PretenseAircraftGenerator to prevent generating the same ATO multiple times over. 2024-02-25 12:39:41 +02:00
Raffson
4ff31ea86d Blast through errors 2024-02-25 12:39:41 +02:00
Raffson
231a8609a1 imports 2024-02-25 12:39:41 +02:00
MetalStormGhost
a6104968e8 Don't spawn flights for the other squadron in generate_pretense_aircraft(). 2024-02-25 12:39:40 +02:00
MetalStormGhost
77060031da Cleaned up some code. 2024-02-25 12:39:40 +02:00
MetalStormGhost
51a4b6603d Now generates air units for both sides at airfields. 2024-02-25 12:39:40 +02:00
MetalStormGhost
4e4eeff9ec Split the Pretense zone definition generation into separate methods: generate_pretense_zone_land() for land control points and generate_pretense_zone_sea() for carriers/LHAs. 2024-02-25 12:39:39 +02:00
MetalStormGhost
4b092e0763 Fixed FlightType.AEWC and FlightType.REFUELING handling in generate_pretense_aircraft(). 2024-02-25 12:39:39 +02:00
MetalStormGhost
aa641e1ff6 Added configuration constants for flights generated for Pretense. Fixed a bug which caused only one squadron per CP to be generated. Will now not generate Pretense cargo flights from Retribution off-map spawns, but instead will generate own air spawn points for them. Added a helper function initialize_pretense_data_structures(). 2024-02-25 12:39:39 +02:00
MetalStormGhost
d0ff363bb5 Now splits the generated Pretense group role properly in create_vehicle_group(). 2024-02-25 12:39:39 +02:00
MetalStormGhost
a97b3fee99 Will now dynamically generate offmapZones for supply cargo aircraft. 2024-02-25 12:39:38 +02:00
MetalStormGhost
51462673a2 Cleaned up pretense/pretenseaircraftgenerator.py
Moved a lot of logic into proper methods and added comments for all of those methods.
2024-02-25 12:39:38 +02:00
MetalStormGhost
3c139d8038 Fixed conflicting types for cp in generate_mid_mission(). 2024-02-25 12:39:38 +02:00
MetalStormGhost
b99a719d1c Converted closest_friendly_control_points_to from returning a tuple of the two closest control points to returning a list of all in sorted order. 2024-02-25 12:39:38 +02:00
MetalStormGhost
992beb5f45 Fixed a type assignment in pretensecargo.py 2024-02-25 12:39:37 +02:00
MetalStormGhost
ae13a422c3 Calling the constructor of MissionGenerator in PretenseMissionGenerator in unnecessary, so leaving it out. 2024-02-25 12:39:37 +02:00
MetalStormGhost
0b8fa9099c Disabled the base Retribution plugin in pretenseluagenerator.py and disabled adding zones for OffMapSpawns. 2024-02-25 12:39:37 +02:00
MetalStormGhost
13e7e976c3 Now connects more isolated zones in Pretense. 2024-02-25 12:39:36 +02:00
MetalStormGhost
529841bfe4 Add CJTF factions to the coalitions in Pretense, if they're not being used in the Retribution campaign. 2024-02-25 12:39:36 +02:00
MetalStormGhost
c0e26b3b7f Fixed Pretense ground unit group id/name handling. 2024-02-25 12:39:36 +02:00
MetalStormGhost
a869c2a758 Also connect carrier and LHA control points to adjacent friendly points in Pretense. Enlarged the carrier trigger zones. 2024-02-25 12:39:35 +02:00
MetalStormGhost
60fde46249 Split the init_body.lua script in two parts to facilitate dynamic JTAC spawning. 2024-02-25 12:39:35 +02:00
MetalStormGhost
27b1c92815 PretenseFlightGroupSpawner method for spawning mid-mission flights and setting the appropriate Pretense names to them. 2024-02-25 12:39:35 +02:00
MetalStormGhost
d965f90bb4 Implemented spawning of Pretense cargo aircraft. To support that, implemented a separate flight plan called PretenseCargoFlightPlan. Also, will now automatically generate transport squadrons for factions which don't have pre-defined squadrons for it, but have access to transport aircraft. 2024-02-25 12:39:34 +02:00
MetalStormGhost
4ad87aef3e Add CJTF factions to the coalitions in Pretense, if they're not being used in the campaign. 2024-02-25 12:39:34 +02:00
MetalStormGhost
daa3259e59 Implemented dynamic outputting of JTAC units to the Pretense init script. 2024-02-25 12:39:34 +02:00
MetalStormGhost
545210b35d Split the init_body.lua script in two parts. 2024-02-25 12:39:33 +02:00
MetalStormGhost
1dd9089477 First version of the generated Pretense campaign running in-game. 2024-02-25 12:39:33 +02:00
MetalStormGhost
0faa27dca5 Now clears Retribution triggers when generating a Pretense campaign. 2024-02-25 12:39:33 +02:00
MetalStormGhost
1db232417f Fixed missing return statement with isinstance(cp, OffMapSpawn). 2024-02-25 12:39:33 +02:00
MetalStormGhost
8253d41d37 Implemented adding ground unit groups to pretense data containers. 2024-02-25 12:39:32 +02:00
MetalStormGhost
d8b0283efe Deleted pretense/pretenseflightgroupconfigurator.py since it looks like it's not needed (at least for the time being). 2024-02-25 12:39:32 +02:00
MetalStormGhost
8dfb05b0d1 Tanker and AWACS frequency, TACAN and variant handling. 2024-02-25 12:39:32 +02:00
MetalStormGhost
aad48c0b78 Dynamically generate Pretense air groups (pretense/pretenseluagenerator.py) 2024-02-25 12:39:32 +02:00
MetalStormGhost
ecf659097a Copied flightgroupconfigurator.py as a template/inheritance for generating Pretense campaigns from Retribution campaigns. 2024-02-25 12:39:31 +02:00
MetalStormGhost
15fafc20df Removed the reference to (nonexistent) NewPretenseWizard. 2024-02-25 12:39:31 +02:00
MetalStormGhost
7d0234820c First version of PretenseLuaGenerator, inherited from LuaGenerator 2024-02-25 12:39:30 +02:00
MetalStormGhost
9f271cdb91 ntentionally don't spawn anything at OffMapSpawns in Pretense 2024-02-25 12:39:30 +02:00
MetalStormGhost
7b2424c746 Added newlines to Pretense init scripts. 2024-02-25 12:39:30 +02:00
MetalStormGhost
5c9a5a5e35 Split init.lua code into three pieces. 2024-02-25 12:39:29 +02:00