Skip to content

Commit

Permalink
feat(a380x): Basic ECAM functionality with PseudoFWC v2 (flybywiresim…
Browse files Browse the repository at this point in the history
…#8750)

* add PseudoFWC from a32nx

* use a32nx fwc for ECAM

* a380x adaptions

* start division

* enable formatting

* abnormal procedures interface version 1

* format version 2

* update for ATA 22&23

* add ATA 22 ABN

* ATA 23 ABN proc items

* update PseudoFWC, add TO/LDG memos

* add PFD memos

* [ECAM] PFD MEMO fix

(cherry picked from commit 99bec8c)

* XML buttons update

* remove right side failures

* lint

* prep to split between MEMOs and alerts

* update FMS switching XML, sounds

* update FWC: Connect FMS & RMP failures, introduce structure for abnormal sensed procedures

* fix master warnings/cautions

* add INFOs, some more ECAM condition check preparation (INOP SYS, INFO)

* add STS page with INFO and INOP SYS

* ATA 34 MEMOs, some ABNs

* chore(a380x): Update Memos of ATA 24, 29 & 32 to reflect A380 (flybywiresim#8741)

* Update ATA32 ECAM memos

* remove BRK FAN & Ata32 ecam abnormals

* add hydraulc & elec memos

* Update missing / in Nose wheel steering messages

* update ids with new convention

* add ATA 24 abnormals

* add missing items & inop systems of ATA 24 abnormals

* add hyd 29 ecam abnormals

* finish ATA 29 abnormal items

* hookup logic of elec, hyd & brakes memos

* update N/W steer disc id on pfd memo

* rebase conflicts minor fix

* chore(a380x): add 380 ECAM memos for ATA 27, 28, 31, 33, and 70, and add remaining abnormal sensed procedures (flybywiresim#8749)

* Add 380 ECAM memos for ATA 27, 28, 31, 33, and 70

* Add ATA 21 abnormal sensed procedures

* fix spacing

* Add all remaining ATA 21 ECAM alerts (TODO: checklist items)

* Start adding ATA 27 abnormal procedures

* Add flap/slat ecam alerts

* Add fuel ecam alerts

* Fix fuel ecam alerts and add an ATA 33 alert

* Add ATA 31 abn proc

* Add engine abn proc's

* Start adding some checklist items

---------

Co-authored-by: Florian Gross <[email protected]>

* split up ABN into multiple files

* clean up

* fix NO MOBILE sign

* add T.O config cautions/warnings

* debug line on EWD for abnormals

* TO config fixes

* overspeed warnings

* add third RA; add RA faults

* change ATA 32 inop sys

* chore(a380x): add ATA 32 abnormal sensed items (flybywiresim#8779)

add ata 32 sensed abnormals & inop sys

Co-authored-by: flogross89 <[email protected]>

* ATA 34: ADR faults, EXTREME LATITUDE

* add LIMITATIONS to PseudoFWC, PFD and SD

* rename LIMITATIONS SimVars

* fix(gpws/ewd): A380x Flap 3 selection check (flybywiresim#8796)

fix too low flaps & ecam ldg flap with config 3

* update sounds, introduce indexed simvars

* move FWS to own directory

* add IR FAULT, IR IN ALIGN (excess motion)

* only unique keys for INFO, INOP SYS, LIMITATION

* add normal procedures / ECL definitions

* refactor PseudoFWC into multiple files

* move EcamMessages

* re-introduce abnormal debug line at bottom of WD

* update N1 more often in EWD

* add C/L button to FWS

* change attribute 'color' to 'style', and change to enum

* ECL, first version

* ECL navigation

* chore(a380): add a380 fire protection ECAM messages ATA26 (flybywiresim#8772)

* chore: fire detection abnormals

* feat: pseudofwc logic for fire abnormals

* feat: add limitations

* feat: cargo abnormals pt1

* feat: smoke abnormals pt2

* feat: smoke limitations

* feat: smoke info

* fix: merge conflicts and bring back pseudofwc logic

* fix: review comments

* ECL progress

* fix some errors

* finish ECL, first iteration

* chore(a380): Add surveillance memos (flybywiresim#8775)

* add surv memos

* add surv memos logic

* update alt reporting off memo logic

* update with new structure

* fix chopped off MEMOs and LIMITATIONs

* fix EGT gauge amber marker

* MEMOs for ATA chapters 35, 46

* ECL: remove colon for some items

* ABN sensed procedures iteration 1

* refactor checklists, reduce boilerplate

* update ECL

* abnormals improvement

* update font: checked boxes, underscore, quote single/double

* use new font, fix ECAM CP

* FMS/FUEL&LOAD fix FOB visibility

* FMS: use placeholder from font

* use LGCIU for gear downlocked

* add anti ice MEMOs

* update refueling memo

* chore(a380x): Finish adding checklist items and pseudoFWC logic for ATA 21, 27, 28, 31, 33, and 70 abnormal procedures (flybywiresim#8773)

* Add abnormal checklist for pack 1+2 fault

* Add some more abn proc's

* Add all abn proc's for ventilation

* Start adding cond abn items

* finish last of ATA 21 abn proc's

* feat(a380/fws): A380 flight phases (flybywiresim#8875)

* change flightphase check to enum, check for 4 engines running

* update eng takeoff power conditions

* fix formatting

* fix takeoff power setting condition

* hookup RA3, add extra phases to enum

* rename vars and add new phases

* use 3 RA for ldg memo

* change ecam conditions with new flight phases

* fix V1 speed check

* update takeoff memo & ldg memo flight phases

* disable autobrake off memo, fix phase 4 & 5 being active

* update fws phase where used in EWD

* update checklists flight phases

* update phases in fly by wire interface, toconf check & missing fws core

* fix ECAM TO abnormals after ENG start

* modify sounds for master warn/caution

* AUTO SD page

* feat(A380): HYD sensed ecam procedures (flybywiresim#8801)

* hook up G, Y & G+Y SYS LO PRESS

* hookup PMP A+B OFF & missing items in G+Y LO PRESS

* fix rebase conflicts

* add sys ovht, rsvr level lo & low air pressure ecams

* add engine pump vars

* hookup vars of pump lo pressure

* improve logic of pump fault signal

* use section pressure switch vars instead of hydraulic pressure

* fix wrong engine running conditions check

* fix vars not being properly read

* fix conflicts

* add eng pump faults, fix pmp A + B off logic

* inhibit Y PMP A + B off message if RSV lo pressure

* fix var names & add identiation in RSV LO AIR PRESS

* add ELEC HYD PMP fault messages

* fix elec pmp simvars, add confirmation timer to low press signal

* add power source checks to elec pump fault

* fix var typos in fws logic & wrong data type in ecam limitations

* md lint

* chore: add NOMINMAX to fbw, revert clang-format change for fbw (flybywiresim#8925)

* feat(a380/mfd): add automatic perf page switching depending on fms phase (flybywiresim#8907)

* feat(mfd): add automatic perf switching based on phase

* only change active perf page when the phase is the same as the selected page

* fix(BTV): Fix crash when BTV exit after runway end (flybywiresim#8874)

Fix crash when exit is beyond 300m before runway end

* fix(a380x): Various fixes pt.2: MFD, pitch trim switch, EFIS sync for LS button (flybywiresim#8926)

* check for valid xpdr code in MFD SURV

* fix ILS back course on POSITION/NAVAID

* systems-host: enable lint (no functional changes)

* disable back course

* fix deselect navaid

* add PITCH TRIM switch

* fix LS EFIS sync

* remove debug messages

* Revert "systems-host: enable lint (no functional changes)"

This reverts commit bc1258d.

* Update fbw-a380x/src/systems/instruments/src/MFD/pages/FMS/POSITION/MfdFmsPositionNavaids.tsx

Co-authored-by: Michael Corcoran <[email protected]>

* don't use min/max for squawk code

* pass only positive courses to MMR

---------

Co-authored-by: Michael Corcoran <[email protected]>

* fix link

* INOP sys update

---------

Co-authored-by: BravoMike99 <[email protected]>
Co-authored-by: Sai Sudarshan Barath <[email protected]>
Co-authored-by: Miquel Juhe <[email protected]>
Co-authored-by: lukecologne <[email protected]>
Co-authored-by: Croc <[email protected]>
Co-authored-by: Michael Corcoran <[email protected]>
  • Loading branch information
7 people authored Sep 19, 2024
1 parent e852527 commit 2f658a3
Show file tree
Hide file tree
Showing 81 changed files with 22,884 additions and 1,288 deletions.
1 change: 1 addition & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ module.exports = {
'fbw-ingamepanels-checklist-fix/*',
'!fbw-a380x/src/systems/instruments/src/PFD/*',
'!fbw-a380x/src/systems/instruments/src/MFD/*',
'!fbw-a380x/src/systems/instruments/src/Common/*',
],
rules: {
'prettier/prettier': ['error', {}, { usePrettierrc: true }],
Expand Down
8 changes: 7 additions & 1 deletion fbw-a380x/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,14 @@ These systems are currently not operational / these features are missing and sha
- EFIS CP: Multi-selection for some filters
- Independent QNH
- KCCU soft keyboard
- ECAM: Only basic abnormal sensed procedures
- ECAM: Only basic abnormal sensed procedures, only sensed items are complete
- ECAM abnormal sensed: No navigation up/down, only CLEAR selectable for manual completion
- ECAM: Abnormal non-sensed procedures
- ECAM Deferred procedures
- ECAM ABN secondary failures
- ECAM: Complete STS page implementation
- ECAM: AUTO RCL
- ECAM: Correct behavior of RCL / RCL LAST
- Video: ETACS due to sim limitation
- Latest FMA indications for landing modes (e.g. LAND3 instead of CAT3)
- SD VIDEO page
Expand Down
12 changes: 10 additions & 2 deletions fbw-a380x/docs/a380-simvars.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@

- [A380 Local SimVars](#a380-local-simvars)
- [Uncategorized](#uncategorized)
- [Air Conditioning / Pressurisation / Ventilation ATA 21](#air-conditioning-pressurisation-ventilation-ata-21)
- [Auto Flight System ATA 22](#afs-ata-22)
- [Air Conditioning / Pressurisation / Ventilation ATA 21](#air-conditioning-pressurisation-ventilation-ata-21)
- [Auto Flight System ATA 22](#auto-flight-system-ata-22)
- [Flight Management System ATA 22](#flight-management-system-ata-22)
- [Electrical ATA 24](#electrical-ata-24)
- [Fire and Smoke Protection ATA 26](#fire-and-smoke-protection-ata-26)
- [Flaps / Slats (ATA 27)](#flaps--slats-ata-27)
Expand Down Expand Up @@ -362,6 +363,13 @@
- Number
- Number of passengers entered on FMS/ACTIVE/FUEL&LOAD page

## Flight Management System ATA 22

- A32NX_FMS_SWITCHING_KNOB
- FMS used
- Position (0-2)
- 0 is BOTH ON 2, 1 is NORM, 2 is BOTH ON 1

## Electrical ATA 24

- A32NX_ELEC_CONTACTOR_{name}_IS_CLOSED
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ A32NX_CREW_HEAD_SET = 0
A32NX_DFDR_EVENT_ON = 0
A32NX_DLS_ON = 0
A32NX_ECAM_ND_XFR_SWITCHING_KNOB=1
A32NX_ECAM_SD_CURRENT_PAGE_INDEX=-1
A32NX_EFIS_L_NAVAID_1_MODE=2
A32NX_EFIS_L_NAVAID_2_MODE=2
A32NX_EFIS_L_ND_MODE=3
Expand All @@ -260,7 +261,6 @@ A32NX_EFIS_R_NAVAID_1_MODE=2
A32NX_EFIS_R_NAVAID_2_MODE=2
A32NX_EFIS_R_ND_MODE=3
A32NX_EFIS_R_ND_RANGE=1
A32NX_EIS_DMC_SWITCHING_KNOB=1
A32NX_ELEC_IDG1LOCK_TOGGLE=0
A32NX_ELEC_IDG2LOCK_TOGGLE=0
A32NX_ELEC_IDG3LOCK_TOGGLE=0
Expand All @@ -280,6 +280,7 @@ A32NX_EVAC_COMMAND_FAULT=0
A32NX_EVAC_COMMAND_TOGGLE=1
A32NX_FAC_1_PUSHBUTTON_PRESSED=1
A32NX_FAC_2_PUSHBUTTON_PRESSED=1
A32NX_FMS_SWITCHING_KNOB=1
A32NX_FWC_SKIP_STARTUP=1
A32NX_GEAR_LEVER_POSITION_REQUEST = 0
A32NX_HYD_ELECPUMPLOCK_TOGGLE=0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,7 @@ A32NX_DEVELOPER_STATE = 0
A32NX_DFDR_EVENT_ON = 0
A32NX_DLS_ON = 0
A32NX_ECAM_ND_XFR_SWITCHING_KNOB=1
A32NX_ECAM_SD_CURRENT_PAGE_INDEX=-1
A32NX_EFIS_L_NAVAID_1_MODE=0
A32NX_EFIS_L_NAVAID_2_MODE=0
A32NX_EFIS_L_ND_MODE=3
Expand All @@ -265,7 +266,6 @@ A32NX_EFIS_R_NAVAID_2_MODE=0
A32NX_EFIS_R_ND_MODE=3
A32NX_EFIS_R_ND_RANGE=1
A32NX_EFIS_R_OANS_RANGE=4
A32NX_EIS_DMC_SWITCHING_KNOB=1
A32NX_ELEC_IDG1LOCK_TOGGLE=0
A32NX_ELEC_IDG2LOCK_TOGGLE=0
A32NX_ELEC_IDG3LOCK_TOGGLE=0
Expand All @@ -285,6 +285,7 @@ A32NX_EVAC_COMMAND_FAULT=0
A32NX_EVAC_COMMAND_TOGGLE=1
A32NX_FAC_1_PUSHBUTTON_PRESSED=1
A32NX_FAC_2_PUSHBUTTON_PRESSED=1
A32NX_FMS_SWITCHING_KNOB=1
A32NX_GEAR_CENTER_POSITION = 100
A32NX_GEAR_LEFT_POSITION = 100
A32NX_GEAR_LEVER_POSITION_REQUEST = 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -264,6 +264,7 @@ A32NX_DEVELOPER_STATE=1
A32NX_DFDR_EVENT_ON = 0
A32NX_DLS_ON = 0
A32NX_ECAM_ND_XFR_SWITCHING_KNOB=1
A32NX_ECAM_SD_CURRENT_PAGE_INDEX=-1
A32NX_EFIS_L_NAVAID_1_MODE=2
A32NX_EFIS_L_NAVAID_2_MODE=2
A32NX_EFIS_L_ND_MODE=3
Expand All @@ -274,7 +275,6 @@ A32NX_EFIS_R_NAVAID_2_MODE=2
A32NX_EFIS_R_ND_MODE=3
A32NX_EFIS_R_ND_RANGE=5
A32NX_EFIS_R_OANS_RANGE=4
A32NX_EIS_DMC_SWITCHING_KNOB=1
A32NX_ELEC_IDG1LOCK_TOGGLE=0
A32NX_ELEC_IDG2LOCK_TOGGLE=0
A32NX_ELEC_IDG3LOCK_TOGGLE=0
Expand All @@ -294,6 +294,7 @@ A32NX_EVAC_COMMAND_FAULT=0
A32NX_EVAC_COMMAND_TOGGLE=1
A32NX_FAC_1_PUSHBUTTON_PRESSED=1
A32NX_FAC_2_PUSHBUTTON_PRESSED=1
A32NX_FMS_SWITCHING_KNOB=1
A32NX_FWC_SKIP_STARTUP=1
A32NX_GEAR_LEVER_POSITION_REQUEST = 0
A32NX_HYD_ELECPUMPLOCK_TOGGLE=0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,7 @@ A32NX_CREW_HEAD_SET = 0
A32NX_DFDR_EVENT_ON = 0
A32NX_DLS_ON = 0
A32NX_ECAM_ND_XFR_SWITCHING_KNOB=1
A32NX_ECAM_SD_CURRENT_PAGE_INDEX=-1
A32NX_EFIS_L_NAVAID_1_MODE=2
A32NX_EFIS_L_NAVAID_2_MODE=2
A32NX_EFIS_L_ND_MODE=3
Expand All @@ -273,7 +274,6 @@ A32NX_EFIS_R_NAVAID_2_MODE=2
A32NX_EFIS_R_ND_MODE=3
A32NX_EFIS_R_ND_RANGE=1
A32NX_EFIS_R_OANS_RANGE=4
A32NX_EIS_DMC_SWITCHING_KNOB=1
A32NX_ELEC_IDG1LOCK_TOGGLE=0
A32NX_ELEC_IDG2LOCK_TOGGLE=0
A32NX_ELEC_IDG3LOCK_TOGGLE=0
Expand All @@ -293,6 +293,7 @@ A32NX_EVAC_COMMAND_FAULT=0
A32NX_EVAC_COMMAND_TOGGLE=1
A32NX_FAC_1_PUSHBUTTON_PRESSED=1
A32NX_FAC_2_PUSHBUTTON_PRESSED=1
A32NX_FMS_SWITCHING_KNOB=1
A32NX_FWC_SKIP_STARTUP=1
A32NX_GEAR_LEVER_POSITION_REQUEST = 1
A32NX_HYD_ELECPUMPLOCK_TOGGLE=0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,9 +239,9 @@ A32NX_CARGOSMOKE_DISCH2LOCK_TOGGLE=0
A32NX_COLD_AND_DARK_SPAWN=1
A32NX_CRANK_PHASE_SKIPPED=1
A32NX_ECAM_ND_XFR_SWITCHING_KNOB=1
A32NX_ECAM_SD_CURRENT_PAGE_INDEX=-1
A32NX_EFIS_L_ND_MODE=3
A32NX_EFIS_R_ND_MODE=3
A32NX_EIS_DMC_SWITCHING_KNOB=1
A32NX_ELEC_ACESSFEED_FAULT=0
A32NX_ELEC_ACESSFEED_TOGGLE=1
A32NX_ELEC_BUSTIE_TOGGLE=1
Expand All @@ -265,6 +265,7 @@ A32NX_EVAC_COMMAND_FAULT=0
A32NX_EVAC_COMMAND_TOGGLE=1
A32NX_FAC_1_PUSHBUTTON_PRESSED=1
A32NX_FAC_2_PUSHBUTTON_PRESSED=1
A32NX_FMS_SWITCHING_KNOB=1
A32NX_GEAR_CENTER_POSITION = 100
A32NX_GEAR_LEFT_POSITION = 100
A32NX_GEAR_LEVER_POSITION_REQUEST = 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3924,7 +3924,7 @@
</UseTemplate>
<UseTemplate Name="FBW_Airbus_AntiIce_Engine">
<NODE_ID>PUSH_OVHD_ANTIICE_ENG3</NODE_ID>
<PART_ID>ANTIICE_ENG1</PART_ID>
<PART_ID>ANTIICE_ENG3</PART_ID>
<ID>3</ID>
<SEQ_POWERED>(L:A32NX_ELEC_AC_1_BUS_IS_POWERED, Bool)</SEQ_POWERED>
<SEQ2_EMISSIVE_DRIVES_VISIBILITY>False</SEQ2_EMISSIVE_DRIVES_VISIBILITY>
Expand All @@ -3933,7 +3933,7 @@
</UseTemplate>
<UseTemplate Name="FBW_Airbus_AntiIce_Engine">
<NODE_ID>PUSH_OVHD_ANTIICE_ENG4</NODE_ID>
<PART_ID>ANTIICE_ENG2</PART_ID>
<PART_ID>ANTIICE_ENG4</PART_ID>
<ID>4</ID>
<SEQ_POWERED>(L:A32NX_ELEC_AC_2_BUS_IS_POWERED, Bool)</SEQ_POWERED>
<SEQ2_EMISSIVE_DRIVES_VISIBILITY>False</SEQ2_EMISSIVE_DRIVES_VISIBILITY>
Expand Down Expand Up @@ -5033,8 +5033,8 @@
</UseTemplate>
<UseTemplate Name="A32NX_AIRBUS_DATA_SWITCHING_TEMPLATE">
<ID>3</ID>
<TYPE>EIS_DMC</TYPE>
<TIP_TEXT>EIS DMC</TIP_TEXT>
<TYPE>FMS</TYPE>
<TIP_TEXT>FMS</TIP_TEXT>
</UseTemplate>
<UseTemplate Name="A32NX_AIRBUS_DATA_SWITCHING_TEMPLATE">
<ID>4</ID>
Expand All @@ -5044,114 +5044,6 @@
</Component>
</Component>

<Component ID="SAFETY">
<UseTemplate Name="ASOBO_SAFETY_Push_Warning_Template">
<TYPE>AIRLINER</TYPE>
<PUSH_EVENT>
0 (&gt;L:A32NX_MASTER_WARNING)
1 (&gt;L:PUSH_AUTOPILOT_MASTERAWARN_L)
</PUSH_EVENT>
<RELEASE_EVENT>
0 (&gt;L:PUSH_AUTOPILOT_MASTERAWARN_L)
</RELEASE_EVENT>
<ALT_CODE>(L:A32NX_OVHD_INTLT_ANN, number) 2 == if{ 0.1 } els{ 1 } *</ALT_CODE>
<!-- As emissives aren't split between SEQ1 and SEQ2, we'll just require either bus
to power both lights. -->
<IS_STATE_ACTIVE>(L:Generic_Master_Warning_Active) (L:A32NX_OVHD_INTLT_ANN) 0 == or
(L:A32NX_ELEC_AC_ESS_SHED_BUS_IS_POWERED, Bool)
(L:A32NX_ELEC_AC_2_BUS_IS_POWERED, Bool) or and</IS_STATE_ACTIVE>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.MASTER_WARNING_ACKNOWLEDGE</TOOLTIPID>
<NODE_ID>PUSH_AUTOPILOT_MASTERAWARN_L</NODE_ID>
<NODE_ID_SEQ1>PUSH_AUTOPILOT_MASTERAWARN_L_SEQ1</NODE_ID_SEQ1>
<NODE_ID_SEQ2>PUSH_AUTOPILOT_MASTERAWARN_L_SEQ2</NODE_ID_SEQ2>
<ANIM_NAME>PUSH_AUTOPILOT_MASTERAWARN_L</ANIM_NAME>
<WWISE_EVENT_1>mpb1on</WWISE_EVENT_1>
<WWISE_EVENT_2>mpb1off</WWISE_EVENT_2>
<EMISSIVE_DRIVES_VISIBILITY>True</EMISSIVE_DRIVES_VISIBILITY>
<NO_SEQ2 />
<ID>1</ID>
</UseTemplate>
<UseTemplate Name="ASOBO_SAFETY_Push_Caution_Template">
<TYPE>AIRLINER</TYPE>
<PUSH_EVENT>
0 (&gt;L:A32NX_MASTER_CAUTION)
1 (&gt;L:PUSH_AUTOPILOT_MASTERCAUT_L)
</PUSH_EVENT>
<RELEASE_EVENT>
0 (&gt;L:PUSH_AUTOPILOT_MASTERCAUT_L)
</RELEASE_EVENT>
<ALT_CODE>(L:A32NX_OVHD_INTLT_ANN, number) 2 == if{ 0.1 } els{ 1 } *</ALT_CODE>
<!-- As emissives aren't split between SEQ1 and SEQ2, we'll just require either bus
to power both lights. -->
<IS_STATE_ACTIVE>(L:Generic_Master_Caution_Active) (L:A32NX_OVHD_INTLT_ANN) 0 == or
(L:A32NX_ELEC_AC_ESS_SHED_BUS_IS_POWERED, Bool)
(L:A32NX_ELEC_AC_2_BUS_IS_POWERED, Bool) or and</IS_STATE_ACTIVE>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.MASTER_CAUTION_ACKNOWLEDGE</TOOLTIPID>
<NODE_ID>PUSH_AUTOPILOT_MASTERCAUT_L</NODE_ID>
<NODE_ID_SEQ1>PUSH_AUTOPILOT_MASTERCAUT_L_SEQ1</NODE_ID_SEQ1>
<NODE_ID_SEQ2>PUSH_AUTOPILOT_MASTERCAUT_L_SEQ2</NODE_ID_SEQ2>
<ANIM_NAME>PUSH_AUTOPILOT_MASTERCAUT_L</ANIM_NAME>
<WWISE_EVENT_1>mpb1on</WWISE_EVENT_1>
<WWISE_EVENT_2>mpb1off</WWISE_EVENT_2>
<EMISSIVE_DRIVES_VISIBILITY>True</EMISSIVE_DRIVES_VISIBILITY>
<NO_SEQ2 />
<ID>1</ID>
</UseTemplate>
<UseTemplate Name="ASOBO_SAFETY_Push_Warning_Template">
<TYPE>AIRLINER</TYPE>
<PUSH_EVENT>
0 (&gt;L:A32NX_MASTER_WARNING)
1 (&gt;L:PUSH_AUTOPILOT_MASTERAWARN_R)
</PUSH_EVENT>
<RELEASE_EVENT>
0 (&gt;L:PUSH_AUTOPILOT_MASTERAWARN_R)
</RELEASE_EVENT>
<ALT_CODE>(L:A32NX_OVHD_INTLT_ANN, number) 2 == if{ 0.1 } els{ 1 } *</ALT_CODE>
<!-- As emissives aren't split between SEQ1 and SEQ2, we'll just require either bus
to power both lights. -->
<IS_STATE_ACTIVE>(L:Generic_Master_Warning_Active) (L:A32NX_OVHD_INTLT_ANN) 0 == or
(L:A32NX_ELEC_AC_ESS_SHED_BUS_IS_POWERED, Bool)
(L:A32NX_ELEC_AC_2_BUS_IS_POWERED, Bool) or and</IS_STATE_ACTIVE>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.MASTER_WARNING_ACKNOWLEDGE</TOOLTIPID>
<NODE_ID>PUSH_AUTOPILOT_MASTERAWARN_R</NODE_ID>
<NODE_ID_SEQ1>PUSH_AUTOPILOT_MASTERAWARN_R_SEQ1</NODE_ID_SEQ1>
<NODE_ID_SEQ2>PUSH_AUTOPILOT_MASTERAWARN_R_SEQ2</NODE_ID_SEQ2>
<ANIM_NAME>PUSH_AUTOPILOT_MASTERAWARN_R</ANIM_NAME>
<WWISE_EVENT_1>mpb1on</WWISE_EVENT_1>
<WWISE_EVENT_2>mpb1off</WWISE_EVENT_2>
<EMISSIVE_DRIVES_VISIBILITY>True</EMISSIVE_DRIVES_VISIBILITY>
<NO_SEQ2 />
<PUSH_ID>Warning</PUSH_ID>
<ID>2</ID>
</UseTemplate>
<UseTemplate Name="ASOBO_SAFETY_Push_Caution_Template">
<TYPE>AIRLINER</TYPE>
<PUSH_EVENT>
0 (&gt;L:A32NX_MASTER_CAUTION)
1 (&gt;L:PUSH_AUTOPILOT_MASTERCAUT_R)
</PUSH_EVENT>
<RELEASE_EVENT>
0 (&gt;L:PUSH_AUTOPILOT_MASTERCAUT_R)
</RELEASE_EVENT>
<ALT_CODE>(L:A32NX_OVHD_INTLT_ANN, number) 2 == if{ 0.1 } els{ 1 } *</ALT_CODE>
<!-- As emissives aren't split between SEQ1 and SEQ2, we'll just require either bus
to power both lights. -->
<IS_STATE_ACTIVE>(L:Generic_Master_Caution_Active) (L:A32NX_OVHD_INTLT_ANN) 0 == or
(L:A32NX_ELEC_AC_ESS_SHED_BUS_IS_POWERED, Bool)
(L:A32NX_ELEC_AC_2_BUS_IS_POWERED, Bool) or and</IS_STATE_ACTIVE>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.MASTER_CAUTION_ACKNOWLEDGE</TOOLTIPID>
<NODE_ID>PUSH_AUTOPILOT_MASTERCAUT_R</NODE_ID>
<NODE_ID_SEQ1>PUSH_AUTOPILOT_MASTERCAUT_R_SEQ1</NODE_ID_SEQ1>
<NODE_ID_SEQ2>PUSH_AUTOPILOT_MASTERCAUT_R_SEQ2</NODE_ID_SEQ2>
<ANIM_NAME>PUSH_AUTOPILOT_MASTERCAUT_R</ANIM_NAME>
<WWISE_EVENT_1>mpb1on</WWISE_EVENT_1>
<WWISE_EVENT_2>mpb1off</WWISE_EVENT_2>
<EMISSIVE_DRIVES_VISIBILITY>True</EMISSIVE_DRIVES_VISIBILITY>
<NO_SEQ2 />
<ID>2</ID>
</UseTemplate>
</Component>

<Component ID="DOOR_PANEL">
<UseTemplate Name="A32NX_SWITCH_DOORPANEL_LOCK">
<NODE_ID>LOCK_DOOR_LCKG_SYS</NODE_ID>
Expand Down
Loading

0 comments on commit 2f658a3

Please sign in to comment.