|
1 | 1 | <!-- Copyright (c) 2026 FlyByWire Simulations --> |
2 | 2 | <!-- SPDX-License-Identifier: GPL-3.0 --> |
3 | | - |
4 | | -<Template Name="FBW_A32NX_NAV_LOGO_LT_SW_Template"> |
5 | | - <Parameters Type="Default"> |
6 | | - <INPUT_EVENT_ID_SOURCE>A32NX_OVH_LIGHTS</INPUT_EVENT_ID_SOURCE> |
7 | | - <STATE_VAR_NAME>A32NX_LIGHTS_NAV_LOGO</STATE_VAR_NAME> |
8 | | - <ANIM_NAME>#NODE_ID#</ANIM_NAME> |
9 | | - <ANIM_LAG>1000</ANIM_LAG> |
10 | | - <ANIM_LENGTH>3</ANIM_LENGTH> |
11 | | - <WWISE_EVENT>lswitch</WWISE_EVENT> |
12 | | - <TOOLTIP_TITLE>A32NX.TOOLTIPS.LIGHTS_NAV_LOGO_TITLE</TOOLTIP_TITLE> |
13 | | - <TT_DESCRIPTION_ID>A32NX.TOOLTIPS.LIGHTS_NAV_LOGO_ACTION</TT_DESCRIPTION_ID> |
14 | | - </Parameters> |
15 | | - <Parameters Type="Override"> |
16 | | - <POS_OFF>0</POS_OFF> |
17 | | - <POS_SYS1>1</POS_SYS1> |
18 | | - <POS_SYS2>2</POS_SYS2> |
19 | | - </Parameters> |
20 | | - <Component ID="#NODE_ID#" Node="#NODE_ID#"> |
21 | | - <UseTemplate Name="ASOBO_Interaction_Base_Template"> |
22 | | - <USE_INPUT_EVENT_ID>#INPUT_EVENT_ID_SOURCE#</USE_INPUT_EVENT_ID> |
| 3 | +<ModelBehaviors> |
| 4 | + <Template Name="FBW_A32NX_NAV_LOGO_LT_SW_Template"> |
| 5 | + <Parameters Type="Default"> |
| 6 | + <INPUT_EVENT_ID_SOURCE>A32NX_OVH_LIGHTS</INPUT_EVENT_ID_SOURCE> |
23 | 7 | <IE_NAME>NAV_LOGO_SW</IE_NAME> |
24 | | - <INTERACTION_TYPE>Switch</INTERACTION_TYPE> |
25 | | - <NUM_STATES>3</NUM_STATES> |
26 | | - <STR_STATE_0>OFF</STR_STATE_0> |
27 | | - <STR_STATE_1>SYS_1</STR_STATE_1> |
28 | | - <STR_STATE_2>SYS_2</STR_STATE_2> |
29 | | - <TT_VALUE_0>@TT_Package.GT_STATE_OFF</TT_VALUE_0> |
30 | | - <TT_VALUE_1>A32NX.TOOLTIPS.STATE_SYS_1</TT_VALUE_1> |
31 | | - <TT_VALUE_2>A32NX.TOOLTIPS.STATE_SYS_2</TT_VALUE_2> |
32 | | - <SET_STATE_0>#POS_OFF# (>L:#STATE_VAR_NAME#)</SET_STATE_0> |
33 | | - <SET_STATE_1>#POS_SYS1# (>L:#STATE_VAR_NAME#)</SET_STATE_1> |
34 | | - <SET_STATE_2>#POS_SYS2# (>L:#STATE_VAR_NAME#)</SET_STATE_2> |
35 | | - <LOCAL_VAR_TO_WATCH_0>#STATE_VAR_NAME#</LOCAL_VAR_TO_WATCH_0> |
36 | | - <SIMVAR_TO_WATCH_0>LIGHT NAV</SIMVAR_TO_WATCH_0> |
37 | | - <SIMVAR_TO_WATCH_1>LIGHT LOGO</SIMVAR_TO_WATCH_1> |
38 | | - <GET_STATE_EXTERNAL>(L:#STATE_VAR_NAME#) sp0</GET_STATE_EXTERNAL> |
39 | | - <ENUM_VAL_TO_POS_EXTERNAL> |
40 | | - l0 #POS_OFF# == if{ |
41 | | - 0 (>A:LIGHT NAV) |
42 | | - 0 (>A:LIGHT LOGO) |
43 | | - 0 0 (>K:2:NAV_LIGHTS_SET) |
44 | | - 0 0 (>K:2:LOGO_LIGHTS_SET) |
45 | | - } els{ |
46 | | - 1 (>A:LIGHT NAV) |
47 | | - 1 (>A:LIGHT LOGO) |
48 | | - 0 1 (>K:2:LOGO_LIGHTS_SET) |
49 | | - |
50 | | - l0 #POS_SYS1# == if{ |
51 | | - 4 0 (>K:2:NAV_LIGHTS_SET) |
52 | | - 5 0 (>K:2:NAV_LIGHTS_SET) |
53 | | - 6 0 (>K:2:NAV_LIGHTS_SET) |
54 | | - 1 1 (>K:2:NAV_LIGHTS_SET) |
55 | | - 2 1 (>K:2:NAV_LIGHTS_SET) |
56 | | - 3 1 (>K:2:NAV_LIGHTS_SET) |
| 8 | + <STATE_VAR_NAME>A32NX_LIGHTS_NAV_LOGO</STATE_VAR_NAME> |
| 9 | + <ANIM_NAME>#NODE_ID#</ANIM_NAME> |
| 10 | + <ANIM_LAG>1000</ANIM_LAG> |
| 11 | + <ANIM_LENGTH>3</ANIM_LENGTH> |
| 12 | + <WWISE_EVENT>lswitch</WWISE_EVENT> |
| 13 | + <TOOLTIP_TITLE>A32NX.TOOLTIPS.LIGHTS_NAV_LOGO_TITLE</TOOLTIP_TITLE> |
| 14 | + <TT_DESCRIPTION_ID>A32NX.TOOLTIPS.LIGHTS_NAV_LOGO_ACTION</TT_DESCRIPTION_ID> |
| 15 | + </Parameters> |
| 16 | + <Parameters Type="Override"> |
| 17 | + <IE_TO_USE>#INPUT_EVENT_ID_SOURCE#_#IE_NAME#</IE_TO_USE> |
| 18 | + </Parameters> |
| 19 | + <Component ID="#NODE_ID#" Node="#NODE_ID#"> |
| 20 | + <UseInputEvent ID="A32NX_OVH_LIGHTS"> |
| 21 | + <EXTEND_TARGET>ASOBO_GIE_Base</EXTEND_TARGET> |
| 22 | + <IE_NAME>NAV_LOGO_SW</IE_NAME> |
| 23 | + <INC_ARG_COUNT>0</INC_ARG_COUNT> |
| 24 | + <DEC_ARG_COUNT>0</DEC_ARG_COUNT> |
| 25 | + <SET_ARG_COUNT>1</SET_ARG_COUNT> |
| 26 | + <INC_CODE>(B:#IE_TO_USE#) 1 + (>B:#IE_TO_USE#_Set)</INC_CODE> |
| 27 | + <DEC_CODE>(B:#IE_TO_USE#) 1 - (>B:#IE_TO_USE#_Set)</DEC_CODE> |
| 28 | + <SET_CODE> |
| 29 | + p0 0 max 2 min (>L:A32NX_LIGHTS_NAV_LOGO) |
| 30 | + </SET_CODE> |
| 31 | + <INIT_CODE> |
| 32 | + (L:A32NX_LIGHTS_NAV_LOGO) 0 == if{ |
| 33 | + 0 (>A:LIGHT NAV) |
| 34 | + 0 (>A:LIGHT LOGO) |
| 35 | + 0 0 (>K:2:NAV_LIGHTS_SET) |
| 36 | + 0 0 (>K:2:LOGO_LIGHTS_SET) |
57 | 37 | } els{ |
58 | | - 1 0 (>K:2:NAV_LIGHTS_SET) |
59 | | - 2 0 (>K:2:NAV_LIGHTS_SET) |
60 | | - 3 0 (>K:2:NAV_LIGHTS_SET) |
61 | | - 4 1 (>K:2:NAV_LIGHTS_SET) |
62 | | - 5 1 (>K:2:NAV_LIGHTS_SET) |
63 | | - 6 1 (>K:2:NAV_LIGHTS_SET) |
| 38 | + 1 (>A:LIGHT NAV) |
| 39 | + 1 (>A:LIGHT LOGO) |
| 40 | + 0 1 (>K:2:LOGO_LIGHTS_SET) |
| 41 | + |
| 42 | + l0 1 == if{ |
| 43 | + 4 0 (>K:2:NAV_LIGHTS_SET) |
| 44 | + 5 0 (>K:2:NAV_LIGHTS_SET) |
| 45 | + 6 0 (>K:2:NAV_LIGHTS_SET) |
| 46 | + 1 1 (>K:2:NAV_LIGHTS_SET) |
| 47 | + 2 1 (>K:2:NAV_LIGHTS_SET) |
| 48 | + 3 1 (>K:2:NAV_LIGHTS_SET) |
| 49 | + } els{ |
| 50 | + 1 0 (>K:2:NAV_LIGHTS_SET) |
| 51 | + 2 0 (>K:2:NAV_LIGHTS_SET) |
| 52 | + 3 0 (>K:2:NAV_LIGHTS_SET) |
| 53 | + 4 1 (>K:2:NAV_LIGHTS_SET) |
| 54 | + 5 1 (>K:2:NAV_LIGHTS_SET) |
| 55 | + 6 1 (>K:2:NAV_LIGHTS_SET) |
| 56 | + } |
64 | 57 | } |
65 | | - } |
66 | | - l0 |
67 | | - </ENUM_VAL_TO_POS_EXTERNAL> |
68 | | - <SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION> |
69 | | - </UseTemplate> |
70 | | - </Component> |
71 | | -</Template> |
| 58 | + </INIT_CODE> |
| 59 | + <SET_PARAM_0_IS_DYNAMIC>False</SET_PARAM_0_IS_DYNAMIC> |
| 60 | + <TT_ICON>MOVE_AXIS_Y</TT_ICON> |
| 61 | + <TT_INTERACTION>PRIMARY_DOWN+Y_AXIS</TT_INTERACTION> |
| 62 | + <TT_INTERACTION_LOCKABLE>Y_AXIS</TT_INTERACTION_LOCKABLE> |
| 63 | + <TT_DESCRIPTION>#TT_DESCRIPTION_ID#</TT_DESCRIPTION> |
| 64 | + <TT_DESCRIPTION_IS_DYNAMIC>False</TT_DESCRIPTION_IS_DYNAMIC> |
| 65 | + <TT_VALUE> |
| 66 | + (L:A32NX_LIGHTS_NAV_LOGO) |
| 67 | + s0 0 == if{ (R:1:@TT_Package.GT_STATE_OFF) quit } |
| 68 | + l0 1 == if{ (R:1:A32NX.TOOLTIPS.STATE_SYS_1) quit } |
| 69 | + l0 2 == if{ (R:1:A32NX.TOOLTIPS.STATE_SYS_2) quit } |
| 70 | + </TT_VALUE> |
| 71 | + <TT_VALUE_IS_DYNAMIC>True</TT_VALUE_IS_DYNAMIC> |
| 72 | + <VALUE_UNITS/> |
| 73 | + <VALUE_CODE>(L:A32NX_LIGHTS_NAV_LOGO)</VALUE_CODE> |
| 74 | + <LOCAL_VAR_TO_WATCH_0>A32NX_LIGHTS_NAV_LOGO</LOCAL_VAR_TO_WATCH_0> |
| 75 | + <SIMVAR_TO_WATCH_0>LIGHT NAV</SIMVAR_TO_WATCH_0> |
| 76 | + <SIMVAR_TO_WATCH_1>LIGHT LOGO</SIMVAR_TO_WATCH_1> |
| 77 | + <BINDING_SET_0>Off</BINDING_SET_0> |
| 78 | + <BINDING_SET_0_EVENT_ID/> |
| 79 | + <BINDING_SET_0_PARAM_0>0</BINDING_SET_0_PARAM_0> |
| 80 | + <BINDING_SET_0_PARAM_0_IS_DYNAMIC>False</BINDING_SET_0_PARAM_0_IS_DYNAMIC> |
| 81 | + <BINDING_SET_1>SYS1</BINDING_SET_1> |
| 82 | + <BINDING_SET_1_EVENT_ID/> |
| 83 | + <BINDING_SET_1_PARAM_0>1</BINDING_SET_1_PARAM_0> |
| 84 | + <BINDING_SET_1_PARAM_0_IS_DYNAMIC>False</BINDING_SET_1_PARAM_0_IS_DYNAMIC> |
| 85 | + <BINDING_SET_2>SYS2</BINDING_SET_2> |
| 86 | + <BINDING_SET_2_EVENT_ID/> |
| 87 | + <BINDING_SET_2_PARAM_0>2</BINDING_SET_2_PARAM_0> |
| 88 | + <BINDING_SET_2_PARAM_0_IS_DYNAMIC>False</BINDING_SET_2_PARAM_0_IS_DYNAMIC> |
| 89 | + </UseInputEvent> |
| 90 | + <UseTemplate Name="ASOBO_GT_Part_ID"/> |
| 91 | + <UseTemplate Name="ASOBO_GT_Switch_3States"> |
| 92 | + <TOOLTIP_ENTRY_0>#IE_TO_USE#</TOOLTIP_ENTRY_0> |
| 93 | + <ANIM_NAME>#ANIM_NAME#</ANIM_NAME> |
| 94 | + <ANIM_LAG>#ANIM_LAG#</ANIM_LAG> |
| 95 | + <ANIM_LENGTH>#ANIM_LENGTH#</ANIM_LENGTH> |
| 96 | + <SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION> |
| 97 | + <WWISE_EVENT>#WWISE_EVENT#</WWISE_EVENT> |
| 98 | + <CODE_POS_0>2 (>B:#IE_TO_USE#_Set)</CODE_POS_0> |
| 99 | + <CODE_POS_1>1 (>B:#IE_TO_USE#_Set)</CODE_POS_1> |
| 100 | + <CODE_POS_2>0 (>B:#IE_TO_USE#_Set)</CODE_POS_2> |
| 101 | + <STATE0_TEST>(B:#IE_TO_USE#) 2 ==</STATE0_TEST> |
| 102 | + <STATE1_TEST>(B:#IE_TO_USE#) 1 ==</STATE1_TEST> |
| 103 | + <STATE2_TEST>(B:#IE_TO_USE#) 0 ==</STATE2_TEST> |
| 104 | + </UseTemplate> |
| 105 | + </Component> |
| 106 | + </Template> |
| 107 | +</ModelBehaviors> |
0 commit comments