diff --git a/PackageSources/ModelBehaviorDefs/TFDi_Design_MD-11/TFDi_MD11_INT_Templates.xml b/PackageSources/ModelBehaviorDefs/TFDi_Design_MD-11/TFDi_MD11_INT_Templates.xml index faacb4f..221ccca 100644 --- a/PackageSources/ModelBehaviorDefs/TFDi_Design_MD-11/TFDi_MD11_INT_Templates.xml +++ b/PackageSources/ModelBehaviorDefs/TFDi_Design_MD-11/TFDi_MD11_INT_Templates.xml @@ -275,9 +275,6 @@ #ADDITIONAL_EVENT_HANDLING# #IM_DRAG_ADDITIONAL_EVENT_HANDLING# - (M:Event) 'MiddleRelease' scmi 0 == if{ 1 (>L:MEVENT) } - (M:Event) 'LeftRelease' scmi 0 == if{ 2 (>L:MEVENT) } - (M:Event) 'RightRelease' scmi 0 == if{ 3 (>L:MEVENT) } (M:Event) 'WheelUp' scmi 0 == if{ #CLOCKWISE_CODE_DRAG_IM# } els{ (M:Event) 'WheelDown' scmi 0 == if{ #ANTICLOCKWISE_CODE_DRAG_IM# } els{ (M:Event) 'Lock' scmi 0 == if{ @@ -292,7 +289,6 @@ if{ 0 (>O:_LastX) 0 (>O:_LastY) - 4 (>L:MEVENT) #RESET_LOCK# #LEFT_LEAVE_CODE# } els{ @@ -407,6 +403,31 @@ + + \ No newline at end of file diff --git a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_AUDIO.xml b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_AUDIO.xml new file mode 100644 index 0000000..783fdef --- /dev/null +++ b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_AUDIO.xml @@ -0,0 +1,714 @@ + + + + + + + \ No newline at end of file diff --git a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_GCP.xml b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_GCP.xml index 8cfd07e..419d78d 100644 --- a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_GCP.xml +++ b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_GCP.xml @@ -270,24 +270,24 @@ MD11_LECP_MINIMUMS_KB 86061 (>L:CEVENT) - + MD11_LECP_MINIMUMS_CAP (L:MD11_LECP_MINIMUMS_CAP) 71 72 / * - MD11_LECP_MINIMUMS_BT - (L:MD11_LECP_MINIMUMS_BT) 10 * + MD11_LECP_MINIMUMS_BT + (L:MD11_LECP_MINIMUMS_BT) 10 * 86064 (>L:CEVENT) 86065 (>L:CEVENT) - 86062 (>L:CEVENT) + 86062 (>L:CEVENT) 86063 (>L:CEVENT) - + MD11_LECP_WXBRT_KB (L:MD11_LECP_WXBRT_KB) 71 72 / * - MD11_LECP_WXBRT_BT - (L:MD11_LECP_WXBRT_BT) 10 * + MD11_LECP_WXBRT_BT + (L:MD11_LECP_WXBRT_BT) 10 * 86054 (>L:CEVENT) 86055 (>L:CEVENT) - 86052 (>L:CEVENT) + 86052 (>L:CEVENT) 86053 (>L:CEVENT) @@ -401,24 +401,24 @@ MD11_RECP_MINIMUMS_KB 86131 (>L:CEVENT) - + MD11_RECP_MINIMUMS_CAP (L:MD11_RECP_MINIMUMS_CAP) 71 72 / * - MD11_RECP_MINIMUMS_BT - (L:MD11_RECP_MINIMUMS_BT) 10 * + MD11_RECP_MINIMUMS_BT + (L:MD11_RECP_MINIMUMS_BT) 10 * 86134 (>L:CEVENT) 86135 (>L:CEVENT) - 86132 (>L:CEVENT) + 86132 (>L:CEVENT) 86133 (>L:CEVENT) - + MD11_RECP_WXBRT_KB (L:MD11_RECP_WXBRT_KB) 71 72 / * - MD11_RECP_WXBRT_BT - (L:MD11_RECP_WXBRT_BT) 10 * + MD11_RECP_WXBRT_BT + (L:MD11_RECP_WXBRT_BT) 10 * 86138 (>L:CEVENT) 86139 (>L:CEVENT) - 86136 (>L:CEVENT) + 86136 (>L:CEVENT) 86137 (>L:CEVENT) diff --git a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OG.xml b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OG.xml index af7fef3..fca0e86 100644 --- a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OG.xml +++ b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OG.xml @@ -1851,126 +1851,129 @@ MD11_FO_AUDIO_PNL_CAB_CALL_LT MD11_PED_FO_AUDIO_PNL_CAB_CALL_LT - - MD11_CPT_AUDIO_PNL_VHF1_VOL_LT + + + MD11_PED_CPT_AUDIO_PNL_VHF1_VOL_KB MD11_PED_CPT_AUDIO_PNL_VHF1_VOL_LT - - MD11_CPT_AUDIO_PNL_VHF2_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_VHF2_VOL_KB MD11_PED_CPT_AUDIO_PNL_VHF2_VOL_LT - - MD11_CPT_AUDIO_PNL_VHF3_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_VHF3_VOL_KB MD11_PED_CPT_AUDIO_PNL_VHF3_VOL_LT - - MD11_CPT_AUDIO_PNL_HF1_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_HF1_VOL_KB MD11_PED_CPT_AUDIO_PNL_HF1_VOL_LT - - MD11_CPT_AUDIO_PNL_HF2_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_HF2_VOL_KB MD11_PED_CPT_AUDIO_PNL_HF2_VOL_LT - - MD11_CPT_AUDIO_PNL_INT_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_INT_VOL_KB MD11_PED_CPT_AUDIO_PNL_INT_VOL_LT - - MD11_CPT_AUDIO_PNL_CAB_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_CAB_VOL_KB MD11_PED_CPT_AUDIO_PNL_CAB_VOL_LT - - MD11_CPT_AUDIO_PNL_PA_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_PA_VOL_KB MD11_PED_CPT_AUDIO_PNL_PA_VOL_LT - - MD11_CPT_AUDIO_PNL_VOR1_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_VOR1_VOL_KB MD11_PED_CPT_AUDIO_PNL_VOR1_VOL_LT - - MD11_CPT_AUDIO_PNL_VOR2_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_VOR2_VOL_KB MD11_PED_CPT_AUDIO_PNL_VOR2_VOL_LT - - MD11_CPT_AUDIO_PNL_ILS1_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_ILS1_VOL_KB MD11_PED_CPT_AUDIO_PNL_ILS1_VOL_LT - - MD11_CPT_AUDIO_PNL_ILS2_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_ILS2_VOL_KB MD11_PED_CPT_AUDIO_PNL_ILS2_VOL_LT - - MD11_CPT_AUDIO_PNL_ADF1_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_ADF1_VOL_KB MD11_PED_CPT_AUDIO_PNL_ADF1_VOL_LT - - MD11_CPT_AUDIO_PNL_ADF2_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_ADF2_VOL_KB MD11_PED_CPT_AUDIO_PNL_ADF2_VOL_LT - - MD11_CPT_AUDIO_PNL_MKR_VOL_LT + + MD11_PED_CPT_AUDIO_PNL_MKR_VOL_KB MD11_PED_CPT_AUDIO_PNL_MKR_VOL_LT - - MD11_FO_AUDIO_PNL_VHF1_VOL_LT + + + MD11_PED_FO_AUDIO_PNL_VHF1_VOL_KB MD11_PED_FO_AUDIO_PNL_VHF1_VOL_LT - - MD11_FO_AUDIO_PNL_VHF2_VOL_LT + + MD11_PED_FO_AUDIO_PNL_VHF2_VOL_KB MD11_PED_FO_AUDIO_PNL_VHF2_VOL_LT - - MD11_FO_AUDIO_PNL_VHF3_VOL_LT + + MD11_PED_FO_AUDIO_PNL_VHF3_VOL_KB MD11_PED_FO_AUDIO_PNL_VHF3_VOL_LT - - MD11_FO_AUDIO_PNL_HF1_VOL_LT + + MD11_PED_FO_AUDIO_PNL_HF1_VOL_KB MD11_PED_FO_AUDIO_PNL_HF1_VOL_LT - - MD11_FO_AUDIO_PNL_HF2_VOL_LT + + MD11_PED_FO_AUDIO_PNL_HF2_VOL_KB MD11_PED_FO_AUDIO_PNL_HF2_VOL_LT - - MD11_FO_AUDIO_PNL_INT_VOL_LT + + MD11_PED_FO_AUDIO_PNL_INT_VOL_KB MD11_PED_FO_AUDIO_PNL_INT_VOL_LT - - MD11_FO_AUDIO_PNL_CAB_VOL_LT + + MD11_PED_FO_AUDIO_PNL_CAB_VOL_KB MD11_PED_FO_AUDIO_PNL_CAB_VOL_LT - - MD11_FO_AUDIO_PNL_PA_VOL_LT + + MD11_PED_FO_AUDIO_PNL_PA_VOL_KB MD11_PED_FO_AUDIO_PNL_PA_VOL_LT - - MD11_FO_AUDIO_PNL_VOR1_VOL_LT + + MD11_PED_FO_AUDIO_PNL_VOR1_VOL_KB MD11_PED_FO_AUDIO_PNL_VOR1_VOL_LT - - MD11_FO_AUDIO_PNL_VOR2_VOL_LT + + MD11_PED_FO_AUDIO_PNL_VOR2_VOL_KB MD11_PED_FO_AUDIO_PNL_VOR2_VOL_LT - - MD11_FO_AUDIO_PNL_ILS1_VOL_LT + + MD11_PED_FO_AUDIO_PNL_ILS1_VOL_KB MD11_PED_FO_AUDIO_PNL_ILS1_VOL_LT - - MD11_FO_AUDIO_PNL_ILS2_VOL_LT + + MD11_PED_FO_AUDIO_PNL_ILS2_VOL_KB MD11_PED_FO_AUDIO_PNL_ILS2_VOL_LT - - MD11_FO_AUDIO_PNL_ADF1_VOL_LT + + MD11_PED_FO_AUDIO_PNL_ADF1_VOL_KB MD11_PED_FO_AUDIO_PNL_ADF1_VOL_LT - - MD11_FO_AUDIO_PNL_ADF2_VOL_LT + + MD11_PED_FO_AUDIO_PNL_ADF2_VOL_KB MD11_PED_FO_AUDIO_PNL_ADF2_VOL_LT - - MD11_FO_AUDIO_PNL_MKR_VOL_LT + + MD11_PED_FO_AUDIO_PNL_MKR_VOL_KB MD11_PED_FO_AUDIO_PNL_MKR_VOL_LT + MD11_CPT_AUDIO_PNL_IDENT_LT MD11_PED_CPT_AUDIO_PNL_IDENT_LT @@ -3019,54 +3022,72 @@ MD11_OBS_AUDIO_PNL_CAB_CALL_LT - - MD11_OBS_AUDIO_PNL_VHF1_VOL_LT + + + MD11_OBS_AUDIO_PNL_VHF1_VOL_KB + MD11_OBS_AUDIO_PNL_VHF1_VOL_LT - - MD11_OBS_AUDIO_PNL_VHF2_VOL_LT + + MD11_OBS_AUDIO_PNL_VHF2_VOL_KB + MD11_OBS_AUDIO_PNL_VHF2_VOL_LT - - MD11_OBS_AUDIO_PNL_VHF3_VOL_LT + + MD11_OBS_AUDIO_PNL_VHF3_VOL_KB + MD11_OBS_AUDIO_PNL_VHF3_VOL_LT - - MD11_OBS_AUDIO_PNL_HF1_VOL_LT + + MD11_OBS_AUDIO_PNL_HF1_VOL_KB + MD11_OBS_AUDIO_PNL_HF1_VOL_LT - - MD11_OBS_AUDIO_PNL_HF2_VOL_LT + + MD11_OBS_AUDIO_PNL_HF2_VOL_KB + MD11_OBS_AUDIO_PNL_HF2_VOL_LT - - MD11_OBS_AUDIO_PNL_SAT_VOL_LT + + MD11_OBS_AUDIO_PNL_SAT_VOL_KB + MD11_OBS_AUDIO_PNL_SAT_VOL_LT - - MD11_OBS_AUDIO_PNL_INT_VOL_LT + + MD11_OBS_AUDIO_PNL_INT_VOL_KB + MD11_OBS_AUDIO_PNL_INT_VOL_LT - - MD11_OBS_AUDIO_PNL_CAB_VOL_LT + + MD11_OBS_AUDIO_PNL_CAB_VOL_KB + MD11_OBS_AUDIO_PNL_CAB_VOL_LT - - MD11_OBS_AUDIO_PNL_PA_VOL_LT + + MD11_OBS_AUDIO_PNL_PA_VOL_KB + MD11_OBS_AUDIO_PNL_PA_VOL_LT - - MD11_OBS_AUDIO_PNL_VOR1_VOL_LT + + MD11_OBS_AUDIO_PNL_VOR1_VOL_KB + MD11_OBS_AUDIO_PNL_VOR1_VOL_LT - - MD11_OBS_AUDIO_PNL_VOR2_VOL_LT + + MD11_OBS_AUDIO_PNL_VOR2_VOL_KB + MD11_OBS_AUDIO_PNL_VOR2_VOL_LT - - MD11_OBS_AUDIO_PNL_ILS1_VOL_LT + + MD11_OBS_AUDIO_PNL_ILS1_VOL_KB + MD11_OBS_AUDIO_PNL_ILS1_VOL_LT - - MD11_OBS_AUDIO_PNL_ILS2_VOL_LT + + MD11_OBS_AUDIO_PNL_ILS2_VOL_KB + MD11_OBS_AUDIO_PNL_ILS2_VOL_LT - - MD11_OBS_AUDIO_PNL_ADF1_VOL_LT + + MD11_OBS_AUDIO_PNL_ADF1_VOL_KB + MD11_OBS_AUDIO_PNL_ADF1_VOL_LT - - MD11_OBS_AUDIO_PNL_ADF2_VOL_LT + + MD11_OBS_AUDIO_PNL_ADF2_VOL_KB + MD11_OBS_AUDIO_PNL_ADF2_VOL_LT - - MD11_OBS_AUDIO_PNL_MKR_VOL_LT + + MD11_OBS_AUDIO_PNL_MKR_VOL_KB + MD11_OBS_AUDIO_PNL_MKR_VOL_LT + MD11_OBS_AUDIO_PNL_IDENT_LT diff --git a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OVHD.xml b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OVHD.xml index 2f63627..0f9166c 100644 --- a/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OVHD.xml +++ b/PackageSources/SimObjects/Airplanes/TFDi_Design_MD-11_Shared/TFDi_MD11_INT_OVHD.xml @@ -98,6 +98,12 @@ 90254 (>L:CEVENT) 90253 (>L:CEVENT) + + MD11_OBS_CKTBKR_LT_KB + 11 + 98304 (>L:CEVENT) + 98305 (>L:CEVENT) + diff --git a/convertToPB.mjs b/convertToPB.mjs index 76d5fca..8a1d064 100644 --- a/convertToPB.mjs +++ b/convertToPB.mjs @@ -1,7 +1,151 @@ import { XMLParser, XMLBuilder, XMLValidator } from "fast-xml-parser"; const input = ` - + + MD11_OBS_AUDIO_PNL_VHF1_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF1_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96256 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96257 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VHF2_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF2_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96258 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96259 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VHF3_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF3_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96260 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96261 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_HF1_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_HF1_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96262 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96263 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_HF2_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_HF2_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96264 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96265 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_SAT_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_SAT_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96266 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96267 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_INT_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_INT_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96268 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96269 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_CAB_MIC_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_CAB_MIC_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96270 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96271 (>L:CEVENT) } + + + + + MD11_OBS_AUDIO_PNL_IDENT_BT + 10 + + + (L:MD11_OBS_AUDIO_PNL_IDENT_BT, enum) 10 * + 100 + + + + HAND + LEFTSINGLE+LEFTRELEASE + (M:Event) 'LeftSingle' scmp 0 == if{ 96320 (>L:CEVENT) } (M:Event) + 'LeftRelease' scmp 0 == if{ 96321 (>L:CEVENT) } + + `; function convert(element) { diff --git a/convertToVOLKB.mjs b/convertToVOLKB.mjs new file mode 100644 index 0000000..3de4caa --- /dev/null +++ b/convertToVOLKB.mjs @@ -0,0 +1,319 @@ +import { XMLParser, XMLBuilder, XMLValidator } from "fast-xml-parser"; + +const input = ` + + MD11_OBS_AUDIO_PNL_VHF1_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF1_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96272 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96273 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96274 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VHF2_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF2_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96275 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96276 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96277 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VHF3_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_VHF3_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96278 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96279 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96280 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_HF1_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_HF1_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96281 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96282 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96283 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_HF2_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_HF2_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96284 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96285 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96286 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_SAT_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_SAT_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96287 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96288 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96289 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_INT_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_INT_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96290 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96291 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96292 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_CAB_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_CAB_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96293 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96294 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96295 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_PA_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_PA_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96296 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96297 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96298 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VOR1_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_VOR1_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96299 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96300 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96301 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_VOR2_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_VOR2_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96302 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96303 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96304 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_ILS1_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_ILS1_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96305 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96306 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96307 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_ILS2_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_ILS2_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96308 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96309 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96310 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_ADF1_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_ADF1_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96311 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96312 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96313 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_ADF2_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_ADF2_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96314 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96315 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96316 (>L:CEVENT) } + + + + MD11_OBS_AUDIO_PNL_MKR_VOL_KB + 10 + + + (L:MD11_OBS_AUDIO_PNL_MKR_VOL_KB, enum) 1 * + 100 + + + + HAND + WheelUp+WheelDown+LeftSingle + (M:Event) 'WheelUp' scmp 0 == if{ 96317 (>L:CEVENT) } (M:Event) + 'WheelDown' scmp 0 == if{ 96318 (>L:CEVENT) } (M:Event) 'LeftSingle' + scmp 0 == if{ 96319 (>L:CEVENT) } + + +`; + +function convert(element) { + const codes = [ + ...element.MouseRect.CallbackCode.matchAll(/([\d]*)[\s]*\(>L:CEVENT\)/gm), + ].map((m) => m[1]); + + return { + "@_Name": "MD11_Infinite_Knob_Push", + NODE_NAME: element.Name, + ANIM_LENGTH_KNOB: 10, + ANIM_CODE: `10 (L:${element.Name}) 1 * -`, + ANIM_NAME_PUSH: `${element.Name.replace("KB", "BT")}`, + ANIM_CODE_PUSH: `(L:${element.Name.replace("KB", "BT")}) 10 *`, + INC_CODE: `${codes[0]} (>L:CEVENT)`, + DEC_CODE: `${codes[1]} (>L:CEVENT)`, + PUSH_CODE: `${codes[2]} (>L:CEVENT)`, + REL_CODE: null, + }; +} + +const parser = new XMLParser({ + ignoreAttributes: false, +}); +let jObj = parser.parse(input); + +const output = []; + +if (Array.isArray(jObj.PartInfo)) { + jObj.PartInfo.forEach((element) => { + output.push(convert(element)); + }); +} else { + output.push(convert(jObj.PartInfo)); +} + +const builder = new XMLBuilder({ + ignoreAttributes: false, + arrayNodeName: "UseTemplate", + format: true, +}); +const xmlContent = builder.build(output); + +console.log(xmlContent);