[Go back to index]
Asobo\Misc\ASPropeller.xml
Source XML
<ModelBehaviors>
<Include RelativeFile="Inputs\\Misc_Inputs.xml"/>
<Template Name="ASOBO_ASPropeller_Template">
<Parameters Type="Default">
<SWITCH_AUTO_MANUAL_NODE_ID>ASPropeller_Switch_Propeller_AutoManual</SWITCH_AUTO_MANUAL_NODE_ID>
<SWITCH_AUTO_MANUAL_ANIM_NAME>ASPropeller_Switch_Propeller_AutoManual</SWITCH_AUTO_MANUAL_ANIM_NAME>
<KNOB_INC_DEC_NODE_ID>ASPropeller_Knob_Propeller_RPM</KNOB_INC_DEC_NODE_ID>
<KNOB_INC_DEC_ANIM_NAME>ASPropeller_Knob_Propeller_RPM</KNOB_INC_DEC_ANIM_NAME>
<SWITCH_INC_DEC_NODE_ID>ASPropeller_Switch_Propeller_RPM</SWITCH_INC_DEC_NODE_ID>
<SWITCH_INC_DEC_ANIM_NAME>ASPropellerSwitch_Propeller_RPM</SWITCH_INC_DEC_ANIM_NAME>
<MIN_EMISSIVE_NODE_ID>ASPropeller_Emissive_Pitch_Min</MIN_EMISSIVE_NODE_ID>
<MAX_EMISSIVE_NODE_ID>ASPropeller_Emissive_Pitch_Max</MAX_EMISSIVE_NODE_ID>
<SCREEN_NODE_ID>ASPropeller_Screen</SCREEN_NODE_ID>
<AS_PROPELLER>ASPropeller</AS_PROPELLER>
<UPDATE_FREQ>10</UPDATE_FREQ>
<UPDATE_COUNT_BEFORE_REPEAT>5</UPDATE_COUNT_BEFORE_REPEAT>
<ADDITIONAL_TESTS/>
<MOMENTARY_MIN_DURATION>0.1</MOMENTARY_MIN_DURATION>
</Parameters>
<Component ID="ASPropeller_Switch_Propeller_AutoManual" Node="#SWITCH_AUTO_MANUAL_NODE_ID#">
<UseTemplate Name="ASOBO_GT_Interaction_Tooltip">
<NODE_ID>#SWITCH_AUTO_MANUAL_NODE_ID#</NODE_ID><!-- no time for this feature as of now, stick to auto -->
<ANIM_POS>0</ANIM_POS>
<ANIM_NAME>#SWITCH_AUTO_MANUAL_ANIM_NAME#</ANIM_NAME>
</UseTemplate>
</Component>
<Component ID="ASPropeller_Knob_Propeller_RPM" Node="#KNOB_INC_DEC_NODE_ID#">
<UseTemplate Name="ASOBO_GT_Interaction_Tooltip">
<NODE_ID>#KNOB_INC_DEC_NODE_ID#</NODE_ID><!-- no time for this feature as of now, stick to auto -->
<ANIM_POS>0</ANIM_POS>
<ANIM_NAME>#KNOB_INC_DEC_ANIM_NAME#</ANIM_NAME>
</UseTemplate>
</Component>
<Component ID="ASPropeller_Switch_Propeller_RPM" Node="#SWITCH_INC_DEC_NODE_ID#">
<Parameters Type="Override">
<POS_INC>0</POS_INC>
<POS_STATIC>1</POS_STATIC>
<POS_DEC>2</POS_DEC>
<BTN_ID>RPM_Switch</BTN_ID>
</Parameters>
<UseTemplate Name="ASOBO_GT_Update">
<FREQUENCY>#UPDATE_FREQ#</FREQUENCY>
<UPDATE_CODE>
(O:_Delta) 0 != #ADDITIONAL_TESTS# if{
(O:_UPDATE_Count) #UPDATE_COUNT_BEFORE_REPEAT# >= if{
(O:_Delta) 0 > if{
(>H:#AS_PROPELLER#_Switch_Inc)
} els{
(>H:#AS_PROPELLER#_Switch_Dec)
}
}
(O:_UPDATE_Count) 1 + (>O:_UPDATE_Count)
}
</UPDATE_CODE>
</UseTemplate>
<UseInputEvent ID="AS_Propeller">
<NUM_STATES>3</NUM_STATES>
<ENUM_VAL_TO_POS_EXTERNAL>l0</ENUM_VAL_TO_POS_EXTERNAL>
<GET_STATE_EXTERNAL>(O:_Delta) 1 - abs sp0</GET_STATE_EXTERNAL>
<TT_DESCRIPTION_ID>@TT_Package.AS_PROPELLER_SWITCH_ACTION</TT_DESCRIPTION_ID>
<TT_VALUE>(L:#AS_PROPELLER#_Commanded_RPM) '%d RPM' @sprintf</TT_VALUE>
<!-- INC -->
<SET_STATE_#POS_INC#>(>H:#AS_PROPELLER#_Switch_Inc) 1 (>O:_Delta)</SET_STATE_#POS_INC#>
<STR_STATE_#POS_INC#>Increase</STR_STATE_#POS_INC#>
<!-- STATIC -->
<SET_STATE_#POS_STATIC#>0 (>O:_Delta) 0 (>O:_UPDATE_Count)</SET_STATE_#POS_STATIC#>
<STR_STATE_#POS_STATIC#>Static</STR_STATE_#POS_STATIC#>
<!-- DEC -->
<SET_STATE_#POS_DEC#>(>H:#AS_PROPELLER#_Switch_Dec) -1 (>O:_Delta)</SET_STATE_#POS_DEC#>
<STR_STATE_#POS_DEC#>Decrease</STR_STATE_#POS_DEC#>
</UseInputEvent>
<UseTemplate Name="ASOBO_GT_Switch_3States">
<ANIM_NAME>#SWITCH_INC_DEC_ANIM_NAME#</ANIM_NAME>
<MOMENTARY_SWITCH/>
<STATE_MAX_TIMER>#MOMENTARY_MIN_DURATION#</STATE_MAX_TIMER>
<STATE0_TIMER>#MOMENTARY_MIN_DURATION#</STATE0_TIMER>
<SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION>
<THRESHOLD_INPUT>0.00025</THRESHOLD_INPUT>
<THRESHOLD_MOUSE>0.005</THRESHOLD_MOUSE>
<TOOLTIP_TITLE>@TT_Package.AS_PROPELLER_SWITCH_TITLE</TOOLTIP_TITLE>
<TOOLTIP_ENTRY_0>AS_Propeller_#BTN_ID#</TOOLTIP_ENTRY_0>
<WWISE_EVENT>lever_propeller_switch</WWISE_EVENT>
<!-- INC -->
<CODE_POS_#POS_INC#>(>B:AS_Propeller_#BTN_ID#_Increase)</CODE_POS_#POS_INC#>
<STATE#POS_INC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_INC# ==</STATE#POS_INC#_TEST>
<!-- STATIC -->
<CODE_POS_#POS_STATIC#>(>B:AS_Propeller_#BTN_ID#_Static)</CODE_POS_#POS_STATIC#>
<STATE#POS_STATIC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_STATIC# ==</STATE#POS_STATIC#_TEST>
<!-- DEC -->
<CODE_POS_#POS_DEC#>(>B:AS_Propeller_#BTN_ID#_Decrease) -1 (>O:_Delta)</CODE_POS_#POS_DEC#>
<STATE#POS_DEC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_DEC# ==</STATE#POS_DEC#_TEST>
</UseTemplate>
</Component>
<UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge">
<NODE_ID>#MIN_EMISSIVE_NODE_ID#</NODE_ID>
<EMISSIVE_CODE>(L:#AS_PROPELLER#_Pitch_Min) 0 ></EMISSIVE_CODE>
</UseTemplate>
<UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge">
<NODE_ID>#MAX_EMISSIVE_NODE_ID#</NODE_ID>
<EMISSIVE_CODE>(L:#AS_PROPELLER#_Pitch_Max) 0 ></EMISSIVE_CODE>
</UseTemplate>
<UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge">
<NODE_ID>#SCREEN_NODE_ID#</NODE_ID>
<EMISSIVE_CODE>0.5</EMISSIVE_CODE>
</UseTemplate>
</Template>
</ModelBehaviors>
Includes
- RelativeFile: Inputs\\Misc_Inputs.xml
Templates
Template list
-
ASOBO_ASPropeller_Template
Definition from XML<Template Name="ASOBO_ASPropeller_Template"> <Parameters Type="Default"> <SWITCH_AUTO_MANUAL_NODE_ID>ASPropeller_Switch_Propeller_AutoManual</SWITCH_AUTO_MANUAL_NODE_ID> <SWITCH_AUTO_MANUAL_ANIM_NAME>ASPropeller_Switch_Propeller_AutoManual</SWITCH_AUTO_MANUAL_ANIM_NAME> <KNOB_INC_DEC_NODE_ID>ASPropeller_Knob_Propeller_RPM</KNOB_INC_DEC_NODE_ID> <KNOB_INC_DEC_ANIM_NAME>ASPropeller_Knob_Propeller_RPM</KNOB_INC_DEC_ANIM_NAME> <SWITCH_INC_DEC_NODE_ID>ASPropeller_Switch_Propeller_RPM</SWITCH_INC_DEC_NODE_ID> <SWITCH_INC_DEC_ANIM_NAME>ASPropellerSwitch_Propeller_RPM</SWITCH_INC_DEC_ANIM_NAME> <MIN_EMISSIVE_NODE_ID>ASPropeller_Emissive_Pitch_Min</MIN_EMISSIVE_NODE_ID> <MAX_EMISSIVE_NODE_ID>ASPropeller_Emissive_Pitch_Max</MAX_EMISSIVE_NODE_ID> <SCREEN_NODE_ID>ASPropeller_Screen</SCREEN_NODE_ID> <AS_PROPELLER>ASPropeller</AS_PROPELLER> <UPDATE_FREQ>10</UPDATE_FREQ> <UPDATE_COUNT_BEFORE_REPEAT>5</UPDATE_COUNT_BEFORE_REPEAT> <ADDITIONAL_TESTS/> <MOMENTARY_MIN_DURATION>0.1</MOMENTARY_MIN_DURATION> </Parameters> <Component ID="ASPropeller_Switch_Propeller_AutoManual" Node="#SWITCH_AUTO_MANUAL_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Interaction_Tooltip"> <NODE_ID>#SWITCH_AUTO_MANUAL_NODE_ID#</NODE_ID> <ANIM_POS>0</ANIM_POS> <ANIM_NAME>#SWITCH_AUTO_MANUAL_ANIM_NAME#</ANIM_NAME> </UseTemplate> </Component> <Component ID="ASPropeller_Knob_Propeller_RPM" Node="#KNOB_INC_DEC_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Interaction_Tooltip"> <NODE_ID>#KNOB_INC_DEC_NODE_ID#</NODE_ID> <ANIM_POS>0</ANIM_POS> <ANIM_NAME>#KNOB_INC_DEC_ANIM_NAME#</ANIM_NAME> </UseTemplate> </Component> <Component ID="ASPropeller_Switch_Propeller_RPM" Node="#SWITCH_INC_DEC_NODE_ID#"> <Parameters Type="Override"> <POS_INC>0</POS_INC> <POS_STATIC>1</POS_STATIC> <POS_DEC>2</POS_DEC> <BTN_ID>RPM_Switch</BTN_ID> </Parameters> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>#UPDATE_FREQ#</FREQUENCY> <UPDATE_CODE> (O:_Delta) 0 != #ADDITIONAL_TESTS# if{ (O:_UPDATE_Count) #UPDATE_COUNT_BEFORE_REPEAT# >= if{ (O:_Delta) 0 > if{ (>H:#AS_PROPELLER#_Switch_Inc) } els{ (>H:#AS_PROPELLER#_Switch_Dec) } } (O:_UPDATE_Count) 1 + (>O:_UPDATE_Count) } </UPDATE_CODE> </UseTemplate> <UseInputEvent ID="AS_Propeller"> <NUM_STATES>3</NUM_STATES> <ENUM_VAL_TO_POS_EXTERNAL>l0</ENUM_VAL_TO_POS_EXTERNAL> <GET_STATE_EXTERNAL>(O:_Delta) 1 - abs sp0</GET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>@TT_Package.AS_PROPELLER_SWITCH_ACTION</TT_DESCRIPTION_ID> <TT_VALUE>(L:#AS_PROPELLER#_Commanded_RPM) '%d RPM' @sprintf</TT_VALUE> <SET_STATE_#POS_INC#>(>H:#AS_PROPELLER#_Switch_Inc) 1 (>O:_Delta)</SET_STATE_#POS_INC#> <STR_STATE_#POS_INC#>Increase</STR_STATE_#POS_INC#> <SET_STATE_#POS_STATIC#>0 (>O:_Delta) 0 (>O:_UPDATE_Count)</SET_STATE_#POS_STATIC#> <STR_STATE_#POS_STATIC#>Static</STR_STATE_#POS_STATIC#> <SET_STATE_#POS_DEC#>(>H:#AS_PROPELLER#_Switch_Dec) -1 (>O:_Delta)</SET_STATE_#POS_DEC#> <STR_STATE_#POS_DEC#>Decrease</STR_STATE_#POS_DEC#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <ANIM_NAME>#SWITCH_INC_DEC_ANIM_NAME#</ANIM_NAME> <MOMENTARY_SWITCH/> <STATE_MAX_TIMER>#MOMENTARY_MIN_DURATION#</STATE_MAX_TIMER> <STATE0_TIMER>#MOMENTARY_MIN_DURATION#</STATE0_TIMER> <SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION> <THRESHOLD_INPUT>0.00025</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.005</THRESHOLD_MOUSE> <TOOLTIP_TITLE>@TT_Package.AS_PROPELLER_SWITCH_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>AS_Propeller_#BTN_ID#</TOOLTIP_ENTRY_0> <WWISE_EVENT>lever_propeller_switch</WWISE_EVENT> <CODE_POS_#POS_INC#>(>B:AS_Propeller_#BTN_ID#_Increase)</CODE_POS_#POS_INC#> <STATE#POS_INC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_INC# ==</STATE#POS_INC#_TEST> <CODE_POS_#POS_STATIC#>(>B:AS_Propeller_#BTN_ID#_Static)</CODE_POS_#POS_STATIC#> <STATE#POS_STATIC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_STATIC# ==</STATE#POS_STATIC#_TEST> <CODE_POS_#POS_DEC#>(>B:AS_Propeller_#BTN_ID#_Decrease) -1 (>O:_Delta)</CODE_POS_#POS_DEC#> <STATE#POS_DEC#_TEST>(B:AS_Propeller_#BTN_ID#) #POS_DEC# ==</STATE#POS_DEC#_TEST> </UseTemplate> </Component> <UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge"> <NODE_ID>#MIN_EMISSIVE_NODE_ID#</NODE_ID> <EMISSIVE_CODE>(L:#AS_PROPELLER#_Pitch_Min) 0 ></EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge"> <NODE_ID>#MAX_EMISSIVE_NODE_ID#</NODE_ID> <EMISSIVE_CODE>(L:#AS_PROPELLER#_Pitch_Max) 0 ></EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge"> <NODE_ID>#SCREEN_NODE_ID#</NODE_ID> <EMISSIVE_CODE>0.5</EMISSIVE_CODE> </UseTemplate> </Template>Parameters initialization:
-
Default
Parameters set:
- SWITCH_AUTO_MANUAL_NODE_ID
- SWITCH_AUTO_MANUAL_ANIM_NAME
- KNOB_INC_DEC_NODE_ID
- KNOB_INC_DEC_ANIM_NAME
- SWITCH_INC_DEC_NODE_ID
- SWITCH_INC_DEC_ANIM_NAME
- MIN_EMISSIVE_NODE_ID
- MAX_EMISSIVE_NODE_ID
- SCREEN_NODE_ID
- AS_PROPELLER
- UPDATE_FREQ
- UPDATE_COUNT_BEFORE_REPEAT
- ADDITIONAL_TESTS
- MOMENTARY_MIN_DURATION
Parameters read:
- SWITCH_AUTO_MANUAL_NODE_ID
- KNOB_INC_DEC_NODE_ID
- SWITCH_INC_DEC_NODE_ID
Components:
-
ASPropeller_Switch_Propeller_AutoManual (Node: #SWITCH_AUTO_MANUAL_NODE_ID#)
Templates used:
-
ASOBO_GT_Interaction_Tooltip
Parameters set:
- NODE_ID (using SWITCH_AUTO_MANUAL_NODE_ID)
- ANIM_POS
- ANIM_NAME (using SWITCH_AUTO_MANUAL_ANIM_NAME)
-
ASOBO_GT_Interaction_Tooltip
-
ASPropeller_Knob_Propeller_RPM (Node: #KNOB_INC_DEC_NODE_ID#)
Templates used:
-
ASOBO_GT_Interaction_Tooltip
Parameters set:
- NODE_ID (using KNOB_INC_DEC_NODE_ID)
- ANIM_POS
- ANIM_NAME (using KNOB_INC_DEC_ANIM_NAME)
-
ASOBO_GT_Interaction_Tooltip
-
ASPropeller_Switch_Propeller_RPM (Node: #SWITCH_INC_DEC_NODE_ID#)
Parameters set:
- POS_INC
- POS_STATIC
- POS_DEC
- BTN_ID
- NUM_STATES
- ENUM_VAL_TO_POS_EXTERNAL
- GET_STATE_EXTERNAL
- TT_DESCRIPTION_ID
- TT_VALUE (using AS_PROPELLER)
- SET_STATE_#POS_INC# (using AS_PROPELLER)
- STR_STATE_#POS_INC#
- SET_STATE_#POS_STATIC#
- STR_STATE_#POS_STATIC#
- SET_STATE_#POS_DEC# (using AS_PROPELLER)
- STR_STATE_#POS_DEC#
Templates used:
-
ASOBO_GT_Update
Parameters set:
- FREQUENCY (using UPDATE_FREQ)
- UPDATE_CODE (using ADDITIONAL_TESTS, UPDATE_COUNT_BEFORE_REPEAT, AS_PROPELLER)
-
ASOBO_GT_Switch_3States
Parameters set:
- ANIM_NAME (using SWITCH_INC_DEC_ANIM_NAME)
- MOMENTARY_SWITCH
- STATE_MAX_TIMER (using MOMENTARY_MIN_DURATION)
- STATE0_TIMER (using MOMENTARY_MIN_DURATION)
- SWITCH_DIRECTION
- THRESHOLD_INPUT
- THRESHOLD_MOUSE
- TOOLTIP_TITLE
- TOOLTIP_ENTRY_0 (using BTN_ID)
- WWISE_EVENT
- CODE_POS_#POS_INC# (using BTN_ID)
- STATE#POS_INC#_TEST (using BTN_ID, POS_INC)
- CODE_POS_#POS_STATIC# (using BTN_ID)
- STATE#POS_STATIC#_TEST (using BTN_ID, POS_STATIC)
- CODE_POS_#POS_DEC# (using BTN_ID)
- STATE#POS_DEC#_TEST (using BTN_ID, POS_DEC)
Templates used:
-
ASOBO_GT_Component_Emissive_Gauge
Parameters set:
- NODE_ID (using MIN_EMISSIVE_NODE_ID)
- EMISSIVE_CODE (using AS_PROPELLER)
-
ASOBO_GT_Component_Emissive_Gauge
Parameters set:
- NODE_ID (using MAX_EMISSIVE_NODE_ID)
- EMISSIVE_CODE (using AS_PROPELLER)
-
ASOBO_GT_Component_Emissive_Gauge
Parameters set:
- NODE_ID (using SCREEN_NODE_ID)
- EMISSIVE_CODE
-
Default