Adjust ai flight planner for (sead) escort

This commit is contained in:
Raffson 2022-11-13 21:38:12 +01:00
parent ca042631b7
commit 2aee878a40
No known key found for this signature in database
GPG Key ID: B0402B2C9B764D99

View File

@ -152,7 +152,7 @@ from .flighttype import FlightType
# factions that also have F-4s should not. # factions that also have F-4s should not.
# Used for CAP, Escort, and intercept if there is not a specialised aircraft available # Used for CAP, Escort, and intercept if there is not a specialised aircraft available
CAP_CAPABLE = [ ESCORT_CAPABLE = [
Su_57, Su_57,
F_22A, F_22A,
F_15C, F_15C,
@ -209,7 +209,6 @@ CAP_CAPABLE = [
F_86F_Sabre, F_86F_Sabre,
MiG_15bis, MiG_15bis,
C_101CC, C_101CC,
L_39ZA,
VSN_F84G, VSN_F84G,
P_51D_30_NA, P_51D_30_NA,
P_51D, P_51D,
@ -225,6 +224,11 @@ CAP_CAPABLE = [
I_16, I_16,
] ]
# Types to be skipped for escorts
CAP_CAPABLE = ESCORT_CAPABLE + [
L_39ZA,
]
# Used for CAS (Close air support) and BAI (Battlefield Interdiction) # Used for CAS (Close air support) and BAI (Battlefield Interdiction)
CAS_CAPABLE = [ CAS_CAPABLE = [
@ -331,7 +335,7 @@ CAS_CAPABLE = [
# Aircraft used for SEAD and SEAD Escort tasks. Must be capable of the CAS DCS task. # Aircraft used for SEAD and SEAD Escort tasks. Must be capable of the CAS DCS task.
SEAD_CAPABLE = [ SEAD_ESCORT_CAPABLE = [
JF_17, JF_17,
F_16C_50, F_16C_50,
F_16I, F_16I,
@ -346,8 +350,6 @@ SEAD_CAPABLE = [
Su_25TM, Su_25TM,
F_4E, F_4E,
A_4E_C, A_4E_C,
F_14B,
F_14A_135_GR,
JAS39Gripen_AG, JAS39Gripen_AG,
AV8BNA, AV8BNA,
Su_24M, Su_24M,
@ -360,10 +362,15 @@ SEAD_CAPABLE = [
Su_30SM, Su_30SM,
MiG_27K, MiG_27K,
Tornado_GR4, Tornado_GR4,
VSN_F105G,
] ]
SEAD_CAPABLE = SEAD_ESCORT_CAPABLE + [
F_14B,
F_14A_135_GR,
VSN_F105G,
]
# Aircraft used for DEAD tasks. Must be capable of the CAS DCS task. # Aircraft used for DEAD tasks. Must be capable of the CAS DCS task.
DEAD_CAPABLE = SEAD_CAPABLE + [ DEAD_CAPABLE = SEAD_CAPABLE + [
AJS37, AJS37,
@ -685,7 +692,7 @@ def dcs_types_for_task(task: FlightType) -> Sequence[Type[FlyingType]]:
elif task == FlightType.SEAD: elif task == FlightType.SEAD:
return SEAD_CAPABLE return SEAD_CAPABLE
elif task == FlightType.SEAD_ESCORT: elif task == FlightType.SEAD_ESCORT:
return SEAD_CAPABLE return SEAD_ESCORT_CAPABLE
elif task == FlightType.DEAD: elif task == FlightType.DEAD:
return DEAD_CAPABLE return DEAD_CAPABLE
elif task == FlightType.OCA_AIRCRAFT: elif task == FlightType.OCA_AIRCRAFT:
@ -695,7 +702,7 @@ def dcs_types_for_task(task: FlightType) -> Sequence[Type[FlyingType]]:
elif task == FlightType.STRIKE: elif task == FlightType.STRIKE:
return STRIKE_CAPABLE return STRIKE_CAPABLE
elif task == FlightType.ESCORT: elif task == FlightType.ESCORT:
return CAP_CAPABLE return ESCORT_CAPABLE
elif task == FlightType.AEWC: elif task == FlightType.AEWC:
return AEWC_CAPABLE return AEWC_CAPABLE
elif task == FlightType.REFUELING: elif task == FlightType.REFUELING: