# Switch.xml [[Go back to index]](..\..\..\Template_Explorer.html) Asobo\(Generic\)Complex\\Switch.xml ----------------------------------- Source XML <ModelBehaviors> <Include RelativeFile="..\\\\..\\\(Common\)Inputs\\Common\_Inputs.xml"/> <!-- Simple switch (2 states) object. Required parameter: ANIM\_NAME ANIM\_SIMVAR EVENTID --> <Template Name = "ASOBO\_GT\_Switch"> <Parameters Type="Default"> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0.0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1.0</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <IS\_SWITCH>True</IS\_SWITCH> </Parameters> <Parameters Type="Override"> <ANIM\_SIMVAR\_UNITS>Bool</ANIM\_SIMVAR\_UNITS> </Parameters> <UseTemplate Name = "ASOBO\_GT\_Anim\_Sim"> <ANIM\_SIMVAR\_SCALE>100</ANIM\_SIMVAR\_SCALE> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> </UseTemplate> <Condition Valid="IS\_SWITCH"> <True> <UseTemplate Name = "ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <LEFT\_SINGLE\_CODE>(>K:\#EVENTID\#)</LEFT\_SINGLE\_CODE> <ANIM\_CODE>(A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) 100 \*</ANIM\_CODE> <EVENTID/> </UseTemplate> </True> <False> <UseTemplate Name = "ASOBO\_GT\_Interaction\_LeftSingle\_Event"> </UseTemplate> </False> </Condition> </Template> <Template Name = "ASOBO\_GT\_Component\_Switch"> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Switch"> </UseTemplate> </Component> </Template> <!-- Simple switch (2 states) object which requires Up/Down interaction. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 --> <Template Name = "ASOBO\_GT\_Switch\_2States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>2</NUM\_STATES> </UseTemplate> </Template> <!-- Simple switch (3 states) object. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 CODE\_POS\_2 --> <Template Name = "ASOBO\_GT\_Switch\_3States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>3</NUM\_STATES> </UseTemplate> </Template> <!-- Simple switch (4 states) object. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 CODE\_POS\_2 CODE\_POS\_3 --> <Template Name = "ASOBO\_GT\_Switch\_4States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>4</NUM\_STATES> </UseTemplate> </Template> <!-- Simple switch (5 states) object. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 CODE\_POS\_2 CODE\_POS\_3 CODE\_POS\_4 --> <Template Name = "ASOBO\_GT\_Switch\_5States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>5</NUM\_STATES> </UseTemplate> </Template> <!-- Simple switch (6 states) object. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 CODE\_POS\_2 CODE\_POS\_3 CODE\_POS\_4 CODE\_POS\_5 --> <Template Name = "ASOBO\_GT\_Switch\_6States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>6</NUM\_STATES> </UseTemplate> </Template> <!-- Simple switch (7 states) object. Required parameter: ANIM\_NAME CODE\_POS\_0 CODE\_POS\_1 CODE\_POS\_2 CODE\_POS\_3 CODE\_POS\_4 CODE\_POS\_5 CODE\_POS\_6 --> <Template Name = "ASOBO\_GT\_Switch\_7States"> <UseTemplate Name = "ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>7</NUM\_STATES> </UseTemplate> </Template> <Template Name = "ASOBO\_GT\_Switch\_XStates"> <Parameters Type="Default"> <NODE\_ID>\#ANIM\_NAME\#</NODE\_ID> <!-- Used to create an unique Variable Name - having a specified NODE\_ID is better but ANIM\_NAME can be a fallback --> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates\_SubTemplate"> </UseTemplate> </Template> <Template Name = "ASOBO\_GT\_Switch\_XStates\_SubTemplate"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <DRAG\_ANIMATION\_VARIABLE\_TYPE>O</DRAG\_ANIMATION\_VARIABLE\_TYPE> <DRAG\_ANIMATION\_VARIABLE\_NAME>XMLVAR\_\#NODE\_ID\#\_Animation\_Position</DRAG\_ANIMATION\_VARIABLE\_NAME> <DRAG\_ANIMATION\_TARGET\_VARIABLE\_TYPE>O</DRAG\_ANIMATION\_TARGET\_VARIABLE\_TYPE> <DRAG\_ANIMATION\_TARGET\_VARIABLE\_NAME>XMLVAR\_\#NODE\_ID\#\_Animation\_Target\_Position</DRAG\_ANIMATION\_TARGET\_VARIABLE\_NAME> <ANIM\_LAG>400</ANIM\_LAG> <UPARROW\_DRAG\_IM/> <DOWNARROW\_DRAG\_IM/> <LEFTARROW\_DRAG\_IM/> <RIGHTARROW\_DRAG\_IM/> <CURSOR\_CENTER\_DRAG\_IM/> <CURSOR\_DRAG\_IM>Grab</CURSOR\_DRAG\_IM> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMCURSOR\_MIN>0</ANIMCURSOR\_MIN> <ANIMCURSOR\_MAX>1</ANIMCURSOR\_MAX> <INVERT\_ANIM\_PUSH>False</INVERT\_ANIM\_PUSH> <Condition NotEmpty="ANIM\_NAME\_PUSH"> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> </Condition> </Parameters> <Parameters Type="Override"> <Condition Check="IS\_LOOPING"> <True> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH Process="Int">\#NUM\_STATES\# 100 \*</ANIM\_LENGTH> </True> <False> <ANIM\_LENGTH Process="Int">\#NUM\_STATES\# 1 - 100 \*</ANIM\_LENGTH> </False> </Condition> </Parameters> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <Condition Valid="OVERRIDE\_ANIM\_CODE"> <True> <ANIM\_CODE>\#OVERRIDE\_ANIM\_CODE\#</ANIM\_CODE> </True> <False> <ANIM\_CODE> (\#DRAG\_ANIMATION\_VARIABLE\_TYPE\#:\#DRAG\_ANIMATION\_VARIABLE\_NAME\#) </ANIM\_CODE> </False> </Condition> </UseTemplate> <Condition> <Test> <And> <Or> <Arg NotEmpty="ON\_PRIMARY\_EVENT"/> <Arg NotEmpty="ON\_SECONDARY\_EVENT"/> </Or> <Arg NotEmpty="ANIM\_NAME\_PUSH"/> </And> </Test> <True> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_CODE>\#ANIM\_CODE\_PUSH\#</ANIM\_CODE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <INVERT\_ANIM>\#INVERT\_ANIM\_PUSH\#</INVERT\_ANIM> <ANIM\_WRAP>0</ANIM\_WRAP> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <Condition Check="WWISE\_PUSH\_EVENT\_1"> <WWISE\_EVENT\_1>\#WWISE\_PUSH\_EVENT\_1\#</WWISE\_EVENT\_1> </Condition> <Condition Check="WWISE\_PUSH\_EVENT\_2"> <WWISE\_EVENT\_2>\#WWISE\_PUSH\_EVENT\_2\#</WWISE\_EVENT\_2> </Condition> </UseTemplate> </True> </Condition> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> <Condition Check="IS\_LOOPING"> <True> <COUNT Process="Int">\#NUM\_STATES\#</COUNT> </True> <False> <COUNT Process="Int">\#NUM\_STATES\# 1 -</COUNT> </False> </Condition> </UseTemplate> <Condition Valid="CONSISTENCY\_CHECKED\_BY\_INPUT\_EVENT"> <False> <UseTemplate Name = "ASOBO\_GT\_Update\_EnsureVariableConsistency\_MultiStates"/> </False> </Condition> <UseTemplate Name = "ASOBO\_GT\_Interaction\_LeftSingle\_MultiStates"> </UseTemplate> </Template> <!-- Simple switch (2 states) object, using code for anim and interaction. Required parameter: ANIM\_NAME : model animation name ANIM\_CODE : 0-100 animation value LEFT\_SINGLE\_CODE : executed when you click on component --> <Template Name = "ASOBO\_GT\_Switch\_Code"> <Parameters Type="Default"> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0.0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1.0</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <ANIM\_LENGTH>100</ANIM\_LENGTH> <IS\_SWITCH>True</IS\_SWITCH> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_TIME\_IN\_SEC>1</ANIM\_TIME\_IN\_SEC> </True> </Condition> <Condition Check="ANIM\_SIMVAR"> <ANIM\_SIMVAR\_SCALE>1</ANIM\_SIMVAR\_SCALE> <ANIM\_SIMVAR\_BIAS>0</ANIM\_SIMVAR\_BIAS> <ANIM\_SIMVAR\_UNITS>Bool</ANIM\_SIMVAR\_UNITS> </Condition> </Parameters> <Parameters Type="Override"> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_TARGET\_CODE>\#ANIM\_CODE\#</ANIM\_TARGET\_CODE> </True> </Condition> </Parameters> <UseTemplate Name = "ASOBO\_GT\_Anim"> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_CODE> \#ANIM\_TARGET\_CODE\# sp0 (O:XMLVAR\_CurrentAnimPosition) 0 == (O:XMLVAR\_CurrentAnimPosition) \#ANIM\_LENGTH\# == or if{ l0 (>O:XMLVAR\_CurrentAnimTargetPosition) } \#ANIM\_LENGTH\# \#ANIM\_TIME\_IN\_SEC\# / (A:ANIMATION DELTA TIME, seconds) \* s1 (O:XMLVAR\_CurrentAnimPosition) (O:XMLVAR\_CurrentAnimTargetPosition) - abs s2 < if{ (O:XMLVAR\_CurrentAnimPosition) (O:XMLVAR\_CurrentAnimTargetPosition) > if{ (O:XMLVAR\_CurrentAnimPosition) l1 - (>O:XMLVAR\_CurrentAnimPosition) } els{ (O:XMLVAR\_CurrentAnimPosition) l1 + (>O:XMLVAR\_CurrentAnimPosition) } } els{ (O:XMLVAR\_CurrentAnimTargetPosition) (>O:XMLVAR\_CurrentAnimPosition) } (O:XMLVAR\_CurrentAnimPosition) </ANIM\_CODE> </True> </Condition> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <Condition Valid="ANIM\_SIMVAR"> <ANIM\_CODE>(A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) \#ANIM\_SIMVAR\_SCALE\# \* \#ANIM\_SIMVAR\_BIAS\# +</ANIM\_CODE> </Condition> </UseTemplate> </Template> <Template Name = "ASOBO\_GT\_Component\_Switch\_Code"> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> </UseTemplate> </Component> </Template> <!-- Three state switch momentary switch which increases/decreases a LocalVar while held. Required parameters: CONTROLLED\_VAR --> <Template Name = "ASOBO\_GT\_Switch\_3States\_IncDec"> <Parameters Type="Default"> <MOMENTARY\_REPEAT\_FREQUENCY>5</MOMENTARY\_REPEAT\_FREQUENCY> <VAR\_CLAMP></VAR\_CLAMP> <INCREMENT>1</INCREMENT> <INCREMENT\_FAST>2</INCREMENT\_FAST> <INCREMENT\_FASTEST>5</INCREMENT\_FASTEST> <CODE\_POS\_1></CODE\_POS\_1> </Parameters> <Parameters Type="Override"> <Condition Valid="ACCELERATE\_ON\_HOLD"> <True> <INCREMENT\_VALUE>(O:XMLVAR\_IncrementCount) 10 > if{ (O:XMLVAR\_IncrementCount) 25 > if{ \#INCREMENT\_FASTEST\# } els{ \#INCREMENT\_FAST\# } } els{ \#INCREMENT\# }</INCREMENT\_VALUE> </True> <False> <INCREMENT\_VALUE>\#INCREMENT\#</INCREMENT\_VALUE> </False> </Condition> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <CODE\_POS\_0>(\#CONTROLLED\_VAR\#) \#INCREMENT\_VALUE\# - \#VAR\_CLAMP\# (>\#CONTROLLED\_VAR\#) (O:XMLVAR\_IncrementCount) 1 + (>O:XMLVAR\_IncrementCount)</CODE\_POS\_0> <CODE\_POS\_1>\#CODE\_POS\_1\# 0 (>O:XMLVAR\_IncrementCount)</CODE\_POS\_1> <CODE\_POS\_2>(\#CONTROLLED\_VAR\#) \#INCREMENT\_VALUE\# + \#VAR\_CLAMP\# (>\#CONTROLLED\_VAR\#) (O:XMLVAR\_IncrementCount) 1 + (>O:XMLVAR\_IncrementCount)</CODE\_POS\_2> <MOMENTARY\_SWITCH>True</MOMENTARY\_SWITCH> <STATE0\_TIMER>0.01</STATE0\_TIMER> <STATE\_MAX\_TIMER>0.01</STATE\_MAX\_TIMER> </UseTemplate> </Template> <!-- Simple dummy switch (2 states) object, using code for anim and interaction. Required parameter: ANIM\_NAME NODE\_ID --> <Template Name = "ASOBO\_GT\_Switch\_Dummy"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <LEFT\_SINGLE\_CODE></LEFT\_SINGLE\_CODE> <NUM\_STATES>2</NUM\_STATES> <INIT\_VALUE>0</INIT\_VALUE> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <IS\_SWITCH>True</IS\_SWITCH> </Parameters> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <Update Once="True"> \#INIT\_VALUE\# (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </Update> <Switch Param="NUM\_STATES"> <Case Value="2"> <UseTemplate Name = "ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 100 \*</ANIM\_CODE> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_AnimTriggers\_2SoundEvents"> </UseTemplate> <UseTemplate Name = "ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <IS\_SWITCH>True</IS\_SWITCH> <MouseFlags>LeftSingle+LeftRelease+LeftDrag</MouseFlags> <LEFT\_SINGLE\_CODE> (\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) ! (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) \#LEFT\_SINGLE\_CODE\# </LEFT\_SINGLE\_CODE> <ANIM\_CODE>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 100 \*</ANIM\_CODE> </UseTemplate> </Case> <Case Value="3"> <UseTemplate Name = "ASOBO\_GT\_Switch\_3States"> <CODE\_POS\_0> 0 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_0> <CODE\_POS\_1> 1 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_1> <CODE\_POS\_2> 2 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_2> <STATE0\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 0 ==</STATE0\_TEST> <STATE1\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 1 ==</STATE1\_TEST> <STATE2\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 1 ==</STATE2\_TEST> </UseTemplate> </Case> </Switch> </Component> </Template> <!-- Three state switch where one frame corresponds to the true value of a boolean simvar. Required parameters: SIMVAR SINGLE\_ID ANIM\_NAME KEY\_TOGGLE NONUNIQUE\_DEFAULT --> <Template Name = "ASOBO\_GT\_Switch\_3States\_SingleTrue"> <UseTemplate Name = "ASOBO\_GT\_Switch\_3States\_SingleFalse"> <POTENTIAL\_INVERSION> ! </POTENTIAL\_INVERSION> </UseTemplate> </Template> <!-- Three state switch where one frame corresponds to the false value of a boolean simvar. Required parameters: SIMVAR SINGLE\_ID ANIM\_NAME KEY\_TOGGLE NONUNIQUE\_DEFAULT --> <Template Name = "ASOBO\_GT\_Switch\_3States\_SingleFalse"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <POTENTIAL\_INVERSION> </POTENTIAL\_INVERSION> <KEY\_TOGGLE\_PARAM></KEY\_TOGGLE\_PARAM> </Parameters> <UseTemplate Name = "ASOBO\_GT\_Switch\_3States"> <INIT\_VARS> (A:\#SIMVAR\#, Bool) \#POTENTIAL\_INVERSION\# (>O:3States\_2\_1\_SimvarValue) (\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) \#SINGLE\_ID\# == (>O:IsOnSingleID) (O:IsOnSingleID) (O:3States\_2\_1\_SimvarValue) == (>O:NeedsToBeInverted) 0 \#SINGLE\_ID\# == (>O:IsState0Single) 1 \#SINGLE\_ID\# == (>O:IsState1Single) 2 \#SINGLE\_ID\# == (>O:IsState2Single) </INIT\_VARS> <STATE0\_TEST> (O:NeedsToBeInverted) (O:IsState0Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState0Single) (O:IsOnSingleID) or (O:IsState0Single) 0 \#NONUNIQUE\_DEFAULT\# == or and and </STATE0\_TEST> <STATE1\_TEST> (O:NeedsToBeInverted) (O:IsState1Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState1Single) (O:IsOnSingleID) or (O:IsState1Single) 1 \#NONUNIQUE\_DEFAULT\# == or and and </STATE1\_TEST> <STATE2\_TEST> (O:NeedsToBeInverted) (O:IsState2Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState2Single) (O:IsOnSingleID) or (O:IsState2Single) 2 \#NONUNIQUE\_DEFAULT\# == or and and </STATE2\_TEST> <CODE\_POS\_0> (O:IsState0Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_0> <CODE\_POS\_1> (O:IsState1Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_1> <CODE\_POS\_2> (O:IsState2Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_2> </UseTemplate> </Template> <!-- Toggle VAR\_NAME bool value \[REQUIRED\] VAR\_NAME(bool): variable name VAR\_SCOPE(Text, default:O): Scope of the variable --> <Template Name="ASOBO\_GT\_Toggle\_Variable"> <Parameters Type="Default"> <VAR\_SCOPE>O</VAR\_SCOPE> <TOGGLE\_CODE></TOGGLE\_CODE> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <Condition Check="VERIF\_STATE\_CODE"> <True> <LEFT\_SINGLE\_CODE> \#VERIF\_STATE\_CODE\# if{ (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#TOGGLE\_CODE\# } </LEFT\_SINGLE\_CODE> </True> <False> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#TOGGLE\_CODE\# </LEFT\_SINGLE\_CODE> </False> </Condition> </UseTemplate> </Template> <!-- Toggle VAR\_NAME bool value \[REQUIRED\] VAR\_NAME(bool): variable name VAR\_SCOPE(Text, default:L): Scope of the variable --> <Template Name="ASOBO\_GT\_Toggle\_Variable\_Anim"> <Parameters Type="Default"> <VAR\_NAME>XMLVAR\_Toggle</VAR\_NAME> <VAR\_SCOPE>O</VAR\_SCOPE> <ANIM\_CODE>(\#VAR\_SCOPE\#:\#VAR\_NAME\#) 100 \*</ANIM\_CODE> </Parameters> <UseTemplate Name="ASOBO\_GT\_Toggle\_Variable"> </UseTemplate> </Template> <!-- Toggle VAR\_NAME bool value for a set duration VAR\_NAME(bool): variable name VAR\_SCOPE(Text, default:L): Scope of the variable OPTION: CANCELLABLE: make the switch still work as a switch during duration --> <Template Name="ASOBO\_GT\_Toggle\_Variable\_ForDuration"> <Parameters Type="Default"> <VAR\_NAME>XMLVAR\_Toggle</VAR\_NAME> <VAR\_SCOPE>O</VAR\_SCOPE> <DURATION>1</DURATION> <CODE\_START\_TIMER></CODE\_START\_TIMER> <CODE\_AFTER\_DURATION></CODE\_AFTER\_DURATION> <Condition Check="CANCELLABLE"> <CODE\_CANCELLING></CODE\_CANCELLING> </Condition> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1</ANIMTIP\_1\_ON\_PERCENT> </Parameters> <Update Frequency = "5"> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (O:\_ActivationTime) \#DURATION\# + > and if{ 0 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#CODE\_AFTER\_DURATION\# } </Update> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <ANIM\_CODE>(\#VAR\_SCOPE\#:\#VAR\_NAME\#) 100 \*</ANIM\_CODE> <Condition Check="CANCELLABLE"> <True> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! if{ 1 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (>O:\_ActivationTime) \#CODE\_START\_TIMER\# } els{ 0 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) 0 (>O:\_ActivationTime) \#CODE\_CANCELLING\# } </LEFT\_SINGLE\_CODE> </True> <False> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! if{ 1 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (>O:\_ActivationTime) \#CODE\_START\_TIMER\# } </LEFT\_SINGLE\_CODE> </False> </Condition> </UseTemplate> </Template> <!-- For switch protected by a cover --> <Template Name="ASOBO\_GT\_Switch\_Covered"> <Parameters Type="Default"> <NUM\_STATES>2</NUM\_STATES> <WWISE\_COVER\_EVENT\_OPEN>covered\_open\_switch</WWISE\_COVER\_EVENT\_OPEN> <WWISE\_COVER\_EVENT\_CLOSE>covered\_close\_switch</WWISE\_COVER\_EVENT\_CLOSE> <COVER\_INIT\_VALUE>0</COVER\_INIT\_VALUE> <COVER\_IE\_NAME>Cover</COVER\_IE\_NAME> <COVER\_IE\_ID\_SOURCE>COMMON</COVER\_IE\_ID\_SOURCE> <COVER\_USE\_INPUT\_EVENT>COMMON</COVER\_USE\_INPUT\_EVENT> <COVER\_INVERT\_SWITCH\_ON\_CONDITION>False</COVER\_INVERT\_SWITCH\_ON\_CONDITION> <TT\_DESCRIPTION\_ID\_COVER>@TT\_Package.COMMON\_COVER\_ACTION</TT\_DESCRIPTION\_ID\_COVER> <TOOLTIP\_TITLE\_COVER>@TT\_Package.COMMON\_COVER\_TITLE</TOOLTIP\_TITLE\_COVER> <ON\_COVER\_OPENED/> <ON\_COVER\_CLOSED/> <TT\_ICON\_COVER>MOVE\_Y</TT\_ICON\_COVER> <NO\_INTERACTION\_WHEN\_COVERED>True</NO\_INTERACTION\_WHEN\_COVERED> <Condition NotEmpty="ANIM\_CODE"> <SWITCH\_ANIM\_CODE>\#ANIM\_CODE\#</SWITCH\_ANIM\_CODE> </Condition> <Condition NotEmpty="LEFT\_SINGLE\_CODE"> <TOGGLE\_STATE>\#LEFT\_SINGLE\_CODE\#</TOGGLE\_STATE> </Condition> </Parameters> <Parameters Type="Default"> <OFF\_POSITION Process="Int">\#NUM\_STATES\# 1 -</OFF\_POSITION> <IS\_COVER\_OPENED>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</IS\_COVER\_OPENED> <COVER\_VAR\_NAME>\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Position</COVER\_VAR\_NAME> <COVER\_VAR\_TYPE>O</COVER\_VAR\_TYPE> </Parameters> <Parameters Type="Override"> <Condition Valid="NO\_INTERACTION\_WHEN\_COVERED"> <Condition Check="SWITCH\_TYPE" Match="MOMENTARY"> <True> <SET\_SWITCH\_ON>\#IS\_COVER\_OPENED\# if{ \#SET\_SWITCH\_ON\# }</SET\_SWITCH\_ON> </True> <False> <Condition Check="NUM\_STATES" Match="2"> <True> <TOGGLE\_STATE>\#IS\_COVER\_OPENED\# if{ \#TOGGLE\_STATE\# }</TOGGLE\_STATE> </True> <False> <CODE\_POS\_0\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_0\_VERIF> <CODE\_POS\_1\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_1\_VERIF> <CODE\_POS\_2\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_2\_VERIF> </False> </Condition> </False> </Condition> </Condition> </Parameters> <Component ID="\#SWITCH\_NODE\_ID\#" Node="\#SWITCH\_NODE\_ID\#"> <Parameters Type="Override"> <Condition NotEmpty="INVERT\_SWITCH\_ANIM"> <INVERT\_ANIM>\#INVERT\_SWITCH\_ANIM\#</INVERT\_ANIM> </Condition> <Condition NotEmpty="SWITCH\_TT\_VALUE"> <TT\_VALUE>\#SWITCH\_TT\_VALUE\#</TT\_VALUE> </Condition> </Parameters> <Condition Check="INPUT\_EVENT\_ID"> <UseInputEvent ID="\#INPUT\_EVENT\_ID\#"/> </Condition> <Switch Param="SWITCH\_TYPE"> <Case Value="MOMENTARY"> <UseTemplate Name="ASOBO\_GT\_Push\_Button"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> <OVERRIDE\_ANIM\_CODE>\#SWITCH\_ANIM\_CODE\#</OVERRIDE\_ANIM\_CODE> <LEFT\_SINGLE\_CODE>\#SET\_SWITCH\_ON\#</LEFT\_SINGLE\_CODE> <LEFT\_LEAVE\_CODE>\#SET\_SWITCH\_OFF\#</LEFT\_LEAVE\_CODE> </UseTemplate> </Case> <Default> <Condition Check="NUM\_STATES" Match="2"> <True> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> <ANIM\_CODE>\#SWITCH\_ANIM\_CODE\#</ANIM\_CODE> <LEFT\_SINGLE\_CODE>\#TOGGLE\_STATE\#</LEFT\_SINGLE\_CODE> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> </UseTemplate> </False> </Condition> </Default> </Switch> </Component> <Component ID="\#COVER\_NODE\_ID\#" Node="\#COVER\_NODE\_ID\#"> <Parameters Type="Override"> <Condition NotEmpty="INVERT\_COVER\_ANIM"> <INVERT\_ANIM>\#INVERT\_COVER\_ANIM\#</INVERT\_ANIM> </Condition> <INVERT\_SWITCH\_ON\_CONDITION>\#COVER\_INVERT\_SWITCH\_ON\_CONDITION\#</INVERT\_SWITCH\_ON\_CONDITION> <ON\_STATE\_CHANGED\_EXTERNAL\_CODE/> </Parameters> <Condition NotEmpty="OPEN\_COVER\_CONDITION"> <UseTemplate Name="ASOBO\_GT\_Update"> <FREQUENCY>5</FREQUENCY> <UPDATE\_CODE>\#OPEN\_COVER\_CONDITION\# != if{ (>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Open) }</UPDATE\_CODE> </UseTemplate> </Condition> <UseTemplate Name="ASOBO\_GT\_Update"> <UPDATE\_ONCE>True</UPDATE\_ONCE> <UPDATE\_CODE>\#COVER\_INIT\_VALUE\# (>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Set)</UPDATE\_CODE> </UseTemplate> <UseInputEvent ID="\#COVER\_USE\_INPUT\_EVENT\#"> <BTN\_ID>\#COVER\_IE\_NAME\#</BTN\_ID> <INPUT\_EVENT\_ID\_SOURCE>\#COVER\_IE\_ID\_SOURCE\#</INPUT\_EVENT\_ID\_SOURCE> <TT\_ICON>\#TT\_ICON\_COVER\#</TT\_ICON> <Condition Check="NUM\_STATES" Match="3"> <True> <SET\_STATE\_1>1 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_OPENED\#</SET\_STATE\_1> <SET\_STATE\_0>0 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_CLOSED\#</SET\_STATE\_0> <SET\_STATE\_2/> </True> <False> <SET\_STATE\_ON>1 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_OPENED\#</SET\_STATE\_ON> <SET\_STATE\_OFF>0 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_CLOSED\#</SET\_STATE\_OFF> </False> </Condition> <ON\_BEFORE\_INC\_CODE/> <ON\_BEFORE\_DEC\_CODE/> <ON\_BEFORE\_SET\_CODE/> <ON\_AFTER\_INC\_CODE/> <ON\_AFTER\_DEC\_CODE/> <ON\_AFTER\_SET\_CODE/> <GET\_STATE\_EXTERNAL>(\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) sp0</GET\_STATE\_EXTERNAL> <SIM\_STATE\_IS\_ON\_EXTERNAL>l0</SIM\_STATE\_IS\_ON\_EXTERNAL> <TT\_DESCRIPTION\_ID>\#TT\_DESCRIPTION\_ID\_COVER\#</TT\_DESCRIPTION\_ID> <STR\_STATE\_OFF>Close</STR\_STATE\_OFF> <STR\_STATE\_ON>Open</STR\_STATE\_ON> <TT\_VALUE\_OFF>@TT\_Closed</TT\_VALUE\_OFF> <TT\_VALUE\_ON>@TT\_Open</TT\_VALUE\_ON> <NUM\_STATES>2</NUM\_STATES> <SIMVAR\_TO\_WATCH\_0/> <Condition Check="COVER\_VAR\_TYPE" Match="L"> <True> <LOCAL\_VAR\_TO\_WATCH\_0>\#COVER\_VAR\_NAME\#</LOCAL\_VAR\_TO\_WATCH\_0> </True> <False> <LOCAL\_VAR\_TO\_WATCH\_0/> </False> </Condition> </UseInputEvent> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <TOOLTIP\_TITLE>\#TOOLTIP\_TITLE\_COVER\#</TOOLTIP\_TITLE> <TOOLTIP\_ENTRY\_0>\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#</TOOLTIP\_ENTRY\_0> <ANIM\_NAME>\#COVER\_ANIM\_NAME\#</ANIM\_NAME> <ANIM\_CODE>\#IS\_COVER\_OPENED\# 100 \*</ANIM\_CODE> <LEFT\_SINGLE\_CODE>(>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Toggle)</LEFT\_SINGLE\_CODE> <WWISE\_EVENT\_1>\#WWISE\_COVER\_EVENT\_OPEN\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_COVER\_EVENT\_CLOSE\#</WWISE\_EVENT\_2> <Condition NotEmpty="COVER\_PART\_ID"> <PART\_ID>\#COVER\_PART\_ID\#</PART\_ID> </Condition> <Condition NotEmpty="COVER\_HIGHLIGHT\_NODE\_ID"> <HIGHLIGHT\_NODE\_ID>\#COVER\_HIGHLIGHT\_NODE\_ID\#</HIGHLIGHT\_NODE\_ID> </Condition> </UseTemplate> </Component> </Template> </ModelBehaviors>     ### Includes - RelativeFile: [..\\\\..\\\(Common\)Inputs\\Common\_Inputs.xml](../../common/inputs/common-inputs/) ### Templates Template list 1. [ASOBO\_GT\_Switch](#ASOBO_GT_Switch) 2. [ASOBO\_GT\_Component\_Switch](#ASOBO_GT_Component_Switch) 3. [ASOBO\_GT\_Switch\_2States](#ASOBO_GT_Switch_2States) 4. [ASOBO\_GT\_Switch\_3States](#ASOBO_GT_Switch_3States) 5. [ASOBO\_GT\_Switch\_4States](#ASOBO_GT_Switch_4States) 6. [ASOBO\_GT\_Switch\_5States](#ASOBO_GT_Switch_5States) 7. [ASOBO\_GT\_Switch\_6States](#ASOBO_GT_Switch_6States) 8. [ASOBO\_GT\_Switch\_7States](#ASOBO_GT_Switch_7States) 9. [ASOBO\_GT\_Switch\_XStates](#ASOBO_GT_Switch_XStates) 10. [ASOBO\_GT\_Switch\_XStates\_SubTemplate](#ASOBO_GT_Switch_XStates_SubTemplate) 11. [ASOBO\_GT\_Switch\_Code](#ASOBO_GT_Switch_Code) 12. [ASOBO\_GT\_Component\_Switch\_Code](#ASOBO_GT_Component_Switch_Code) 13. [ASOBO\_GT\_Switch\_3States\_IncDec](#ASOBO_GT_Switch_3States_IncDec) 14. [ASOBO\_GT\_Switch\_Dummy](#ASOBO_GT_Switch_Dummy) 15. [ASOBO\_GT\_Switch\_3States\_SingleTrue](#ASOBO_GT_Switch_3States_SingleTrue) 16. [ASOBO\_GT\_Switch\_3States\_SingleFalse](#ASOBO_GT_Switch_3States_SingleFalse) 17. [ASOBO\_GT\_Toggle\_Variable](#ASOBO_GT_Toggle_Variable) 18. [ASOBO\_GT\_Toggle\_Variable\_Anim](#ASOBO_GT_Toggle_Variable_Anim) 19. [ASOBO\_GT\_Toggle\_Variable\_ForDuration](#ASOBO_GT_Toggle_Variable_ForDuration) 20. [ASOBO\_GT\_Switch\_Covered](#ASOBO_GT_Switch_Covered) - #### ASOBO\_GT\_Switch Definition from XML <Template Name="ASOBO\_GT\_Switch"> <Parameters Type="Default"> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0.0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1.0</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <IS\_SWITCH>True</IS\_SWITCH> </Parameters> <Parameters Type="Override"> <ANIM\_SIMVAR\_UNITS>Bool</ANIM\_SIMVAR\_UNITS> </Parameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Sim"> <ANIM\_SIMVAR\_SCALE>100</ANIM\_SIMVAR\_SCALE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"/> <Condition Valid="IS\_SWITCH"> <True> <UseTemplate Name="ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <LEFT\_SINGLE\_CODE>(>K:\#EVENTID\#)</LEFT\_SINGLE\_CODE> <ANIM\_CODE>(A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) 100 \*</ANIM\_CODE> <EVENTID/> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO\_GT\_Interaction\_LeftSingle\_Event"/> </False> </Condition> </Template> Parameters initialization: - Default Parameters set: - ANIMREF\_ID - ANIMTIP\_0\_ON\_PERCENT - ANIMTIP\_1\_ON\_PERCENT - ANIM\_LAG - IS\_SWITCH - Override Parameters set: - ANIM\_SIMVAR\_UNITS   Templates used: - [ASOBO\_GT\_Anim\_Sim](../animations/#ASOBO_GT_Anim_Sim) Parameters set: - ANIM\_SIMVAR\_SCALE - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Condition: Valid(IS\_SWITCH) - Case: True   Templates used: - [ASOBO\_GT\_Interaction\_LeftSingle\_Code](../interactions/#ASOBO_GT_Interaction_LeftSingle_Code) Parameters set: - LEFT\_SINGLE\_CODE (using EVENTID) - ANIM\_CODE (using ANIM\_SIMVAR, ANIM\_SIMVAR\_UNITS) - EVENTID - Case: False   Templates used: - [ASOBO\_GT\_Interaction\_LeftSingle\_Event](../interactions/#ASOBO_GT_Interaction_LeftSingle_Event) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Component\_Switch Definition from XML <Template Name="ASOBO\_GT\_Component\_Switch"> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Switch"/> </Component> </Template> Parameters read: - NODE\_ID Components: - \#NODE\_ID\# (Node: \#NODE\_ID\#)   Templates used: - [ASOBO\_GT\_Switch](switch/#ASOBO_GT_Switch) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_2States Definition from XML <Template Name="ASOBO\_GT\_Switch\_2States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>2</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_3States Definition from XML <Template Name="ASOBO\_GT\_Switch\_3States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>3</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_4States Definition from XML <Template Name="ASOBO\_GT\_Switch\_4States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>4</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_5States Definition from XML <Template Name="ASOBO\_GT\_Switch\_5States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>5</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_6States Definition from XML <Template Name="ASOBO\_GT\_Switch\_6States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>6</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_7States Definition from XML <Template Name="ASOBO\_GT\_Switch\_7States"> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates"> <NUM\_STATES>7</NUM\_STATES> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_XStates](switch/#ASOBO_GT_Switch_XStates) Parameters set: - NUM\_STATES [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_XStates Definition from XML <Template Name="ASOBO\_GT\_Switch\_XStates"> <Parameters Type="Default"> <NODE\_ID>\#ANIM\_NAME\#</NODE\_ID> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_XStates\_SubTemplate"/> </Template> Parameters initialization: - Default Parameters set: - NODE\_ID (using ANIM\_NAME)   Templates used: - [ASOBO\_GT\_Switch\_XStates\_SubTemplate](switch/#ASOBO_GT_Switch_XStates_SubTemplate) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_XStates\_SubTemplate Definition from XML <Template Name="ASOBO\_GT\_Switch\_XStates\_SubTemplate"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <DRAG\_ANIMATION\_VARIABLE\_TYPE>O</DRAG\_ANIMATION\_VARIABLE\_TYPE> <DRAG\_ANIMATION\_VARIABLE\_NAME>XMLVAR\_\#NODE\_ID\#\_Animation\_Position</DRAG\_ANIMATION\_VARIABLE\_NAME> <DRAG\_ANIMATION\_TARGET\_VARIABLE\_TYPE>O</DRAG\_ANIMATION\_TARGET\_VARIABLE\_TYPE> <DRAG\_ANIMATION\_TARGET\_VARIABLE\_NAME>XMLVAR\_\#NODE\_ID\#\_Animation\_Target\_Position</DRAG\_ANIMATION\_TARGET\_VARIABLE\_NAME> <ANIM\_LAG>400</ANIM\_LAG> <UPARROW\_DRAG\_IM/> <DOWNARROW\_DRAG\_IM/> <LEFTARROW\_DRAG\_IM/> <RIGHTARROW\_DRAG\_IM/> <CURSOR\_CENTER\_DRAG\_IM/> <CURSOR\_DRAG\_IM>Grab</CURSOR\_DRAG\_IM> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMCURSOR\_MIN>0</ANIMCURSOR\_MIN> <ANIMCURSOR\_MAX>1</ANIMCURSOR\_MAX> <INVERT\_ANIM\_PUSH>False</INVERT\_ANIM\_PUSH> <Condition NotEmpty="ANIM\_NAME\_PUSH"> <ANIM\_LENGTH\_PUSH>100</ANIM\_LENGTH\_PUSH> </Condition> </Parameters> <Parameters Type="Override"> <Condition Check="IS\_LOOPING"> <True> <ANIM\_WRAP>1</ANIM\_WRAP> <ANIM\_LENGTH Process="Int">\#NUM\_STATES\# 100 \*</ANIM\_LENGTH> </True> <False> <ANIM\_LENGTH Process="Int">\#NUM\_STATES\# 1 - 100 \*</ANIM\_LENGTH> </False> </Condition> </Parameters> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <Condition Valid="OVERRIDE\_ANIM\_CODE"> <True> <ANIM\_CODE>\#OVERRIDE\_ANIM\_CODE\#</ANIM\_CODE> </True> <False> <ANIM\_CODE> (\#DRAG\_ANIMATION\_VARIABLE\_TYPE\#:\#DRAG\_ANIMATION\_VARIABLE\_NAME\#) </ANIM\_CODE> </False> </Condition> </UseTemplate> <Condition> <Test> <And> <Or> <Arg NotEmpty="ON\_PRIMARY\_EVENT"/> <Arg NotEmpty="ON\_SECONDARY\_EVENT"/> </Or> <Arg NotEmpty="ANIM\_NAME\_PUSH"/> </And> </Test> <True> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <ANIM\_CODE>\#ANIM\_CODE\_PUSH\#</ANIM\_CODE> <ANIM\_LENGTH>\#ANIM\_LENGTH\_PUSH\#</ANIM\_LENGTH> <INVERT\_ANIM>\#INVERT\_ANIM\_PUSH\#</INVERT\_ANIM> <ANIM\_WRAP>0</ANIM\_WRAP> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"> <ANIM\_NAME>\#ANIM\_NAME\_PUSH\#</ANIM\_NAME> <Condition Check="WWISE\_PUSH\_EVENT\_1"> <WWISE\_EVENT\_1>\#WWISE\_PUSH\_EVENT\_1\#</WWISE\_EVENT\_1> </Condition> <Condition Check="WWISE\_PUSH\_EVENT\_2"> <WWISE\_EVENT\_2>\#WWISE\_PUSH\_EVENT\_2\#</WWISE\_EVENT\_2> </Condition> </UseTemplate> </True> </Condition> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same"> <Condition Check="IS\_LOOPING"> <True> <COUNT Process="Int">\#NUM\_STATES\#</COUNT> </True> <False> <COUNT Process="Int">\#NUM\_STATES\# 1 -</COUNT> </False> </Condition> </UseTemplate> <Condition Valid="CONSISTENCY\_CHECKED\_BY\_INPUT\_EVENT"> <False> <UseTemplate Name="ASOBO\_GT\_Update\_EnsureVariableConsistency\_MultiStates"/> </False> </Condition> <UseTemplate Name="ASOBO\_GT\_Interaction\_LeftSingle\_MultiStates"/> </Template> Parameters initialization: - Default Parameters set: - SWITCH\_POSITION\_TYPE - SWITCH\_POSITION\_VAR - DRAG\_ANIMATION\_VARIABLE\_TYPE - DRAG\_ANIMATION\_VARIABLE\_NAME (using NODE\_ID) - DRAG\_ANIMATION\_TARGET\_VARIABLE\_TYPE - DRAG\_ANIMATION\_TARGET\_VARIABLE\_NAME (using NODE\_ID) - ANIM\_LAG - UPARROW\_DRAG\_IM - DOWNARROW\_DRAG\_IM - LEFTARROW\_DRAG\_IM - RIGHTARROW\_DRAG\_IM - CURSOR\_CENTER\_DRAG\_IM - CURSOR\_DRAG\_IM - ANIMREF\_ID - ANIMCURSOR\_MIN - ANIMCURSOR\_MAX - INVERT\_ANIM\_PUSH Condition: NotEmpty(ANIM\_NAME\_PUSH) - Case: True Parameters set: - ANIM\_LENGTH\_PUSH - Override Condition: Check(IS\_LOOPING) - Case: True Parameters set: - ANIM\_WRAP - ANIM\_LENGTH (using NUM\_STATES) - Case: False Parameters set: - ANIM\_LENGTH (using NUM\_STATES)   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Condition: Valid(OVERRIDE\_ANIM\_CODE) - Case: True Parameters set: - ANIM\_CODE (using OVERRIDE\_ANIM\_CODE) - Case: False Parameters set: - ANIM\_CODE (using DRAG\_ANIMATION\_VARIABLE\_TYPE, DRAG\_ANIMATION\_VARIABLE\_NAME) - [ASOBO\_GT\_AnimTriggers\_SoundEvents\_Same](../animationtriggers/#ASOBO_GT_AnimTriggers_SoundEvents_Same) Condition: Check(IS\_LOOPING) - Case: True Parameters set: - COUNT (using NUM\_STATES) - Case: False Parameters set: - COUNT (using NUM\_STATES) - [ASOBO\_GT\_Interaction\_LeftSingle\_MultiStates](../interactions/#ASOBO_GT_Interaction_LeftSingle_MultiStates) Condition: Test(ON\_PRIMARY\_EVENT, ON\_SECONDARY\_EVENT, ANIM\_NAME\_PUSH) - Case: True   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) - ANIM\_CODE (using ANIM\_CODE\_PUSH) - ANIM\_LENGTH (using ANIM\_LENGTH\_PUSH) - INVERT\_ANIM (using INVERT\_ANIM\_PUSH) - ANIM\_WRAP - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) Parameters set: - ANIM\_NAME (using ANIM\_NAME\_PUSH) Condition: Check(WWISE\_PUSH\_EVENT\_1) - Case: True Parameters set: - WWISE\_EVENT\_1 (using WWISE\_PUSH\_EVENT\_1) Condition: Check(WWISE\_PUSH\_EVENT\_2) - Case: True Parameters set: - WWISE\_EVENT\_2 (using WWISE\_PUSH\_EVENT\_2) Condition: Valid(CONSISTENCY\_CHECKED\_BY\_INPUT\_EVENT) - Case: False   Templates used: - [ASOBO\_GT\_Update\_EnsureVariableConsistency\_MultiStates](../updates/#ASOBO_GT_Update_EnsureVariableConsistency_MultiStates) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_Code Definition from XML <Template Name="ASOBO\_GT\_Switch\_Code"> <Parameters Type="Default"> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0.0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1.0</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <ANIM\_LENGTH>100</ANIM\_LENGTH> <IS\_SWITCH>True</IS\_SWITCH> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_TIME\_IN\_SEC>1</ANIM\_TIME\_IN\_SEC> </True> </Condition> <Condition Check="ANIM\_SIMVAR"> <ANIM\_SIMVAR\_SCALE>1</ANIM\_SIMVAR\_SCALE> <ANIM\_SIMVAR\_BIAS>0</ANIM\_SIMVAR\_BIAS> <ANIM\_SIMVAR\_UNITS>Bool</ANIM\_SIMVAR\_UNITS> </Condition> </Parameters> <Parameters Type="Override"> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_TARGET\_CODE>\#ANIM\_CODE\#</ANIM\_TARGET\_CODE> </True> </Condition> </Parameters> <UseTemplate Name="ASOBO\_GT\_Anim"> <Condition Valid="FORCE\_FULL\_ANIM"> <True> <ANIM\_CODE> \#ANIM\_TARGET\_CODE\# sp0 (O:XMLVAR\_CurrentAnimPosition) 0 == (O:XMLVAR\_CurrentAnimPosition) \#ANIM\_LENGTH\# == or if{ l0 (>O:XMLVAR\_CurrentAnimTargetPosition) } \#ANIM\_LENGTH\# \#ANIM\_TIME\_IN\_SEC\# / (A:ANIMATION DELTA TIME, seconds) \* s1 (O:XMLVAR\_CurrentAnimPosition) (O:XMLVAR\_CurrentAnimTargetPosition) - abs s2 < if{ (O:XMLVAR\_CurrentAnimPosition) (O:XMLVAR\_CurrentAnimTargetPosition) > if{ (O:XMLVAR\_CurrentAnimPosition) l1 - (>O:XMLVAR\_CurrentAnimPosition) } els{ (O:XMLVAR\_CurrentAnimPosition) l1 + (>O:XMLVAR\_CurrentAnimPosition) } } els{ (O:XMLVAR\_CurrentAnimTargetPosition) (>O:XMLVAR\_CurrentAnimPosition) } (O:XMLVAR\_CurrentAnimPosition) </ANIM\_CODE> </True> </Condition> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"/> <UseTemplate Name="ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <Condition Valid="ANIM\_SIMVAR"> <ANIM\_CODE>(A:\#ANIM\_SIMVAR\#, \#ANIM\_SIMVAR\_UNITS\#) \#ANIM\_SIMVAR\_SCALE\# \* \#ANIM\_SIMVAR\_BIAS\# +</ANIM\_CODE> </Condition> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - ANIMREF\_ID - ANIMTIP\_0\_ON\_PERCENT - ANIMTIP\_1\_ON\_PERCENT - ANIM\_LAG - ANIM\_LENGTH - IS\_SWITCH Condition: Valid(FORCE\_FULL\_ANIM) - Case: True Parameters set: - ANIM\_TIME\_IN\_SEC Condition: Check(ANIM\_SIMVAR) - Case: True Parameters set: - ANIM\_SIMVAR\_SCALE - ANIM\_SIMVAR\_BIAS - ANIM\_SIMVAR\_UNITS - Override Condition: Valid(FORCE\_FULL\_ANIM) - Case: True Parameters set: - ANIM\_TARGET\_CODE (using ANIM\_CODE)   Templates used: - [ASOBO\_GT\_Anim](../animations/#ASOBO_GT_Anim) Condition: Valid(FORCE\_FULL\_ANIM) - Case: True Parameters set: - ANIM\_CODE (using ANIM\_TARGET\_CODE, ANIM\_LENGTH, ANIM\_TIME\_IN\_SEC) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) - [ASOBO\_GT\_Interaction\_LeftSingle\_Code](../interactions/#ASOBO_GT_Interaction_LeftSingle_Code) Condition: Valid(ANIM\_SIMVAR) - Case: True Parameters set: - ANIM\_CODE (using ANIM\_SIMVAR, ANIM\_SIMVAR\_UNITS, ANIM\_SIMVAR\_SCALE, ANIM\_SIMVAR\_BIAS) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Component\_Switch\_Code Definition from XML <Template Name="ASOBO\_GT\_Component\_Switch\_Code"> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"/> </Component> </Template> Parameters read: - NODE\_ID Components: - \#NODE\_ID\# (Node: \#NODE\_ID\#)   Templates used: - [ASOBO\_GT\_Switch\_Code](switch/#ASOBO_GT_Switch_Code) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_3States\_IncDec Definition from XML <Template Name="ASOBO\_GT\_Switch\_3States\_IncDec"> <Parameters Type="Default"> <MOMENTARY\_REPEAT\_FREQUENCY>5</MOMENTARY\_REPEAT\_FREQUENCY> <VAR\_CLAMP/> <INCREMENT>1</INCREMENT> <INCREMENT\_FAST>2</INCREMENT\_FAST> <INCREMENT\_FASTEST>5</INCREMENT\_FASTEST> <CODE\_POS\_1/> </Parameters> <Parameters Type="Override"> <Condition Valid="ACCELERATE\_ON\_HOLD"> <True> <INCREMENT\_VALUE>(O:XMLVAR\_IncrementCount) 10 > if{ (O:XMLVAR\_IncrementCount) 25 > if{ \#INCREMENT\_FASTEST\# } els{ \#INCREMENT\_FAST\# } } els{ \#INCREMENT\# }</INCREMENT\_VALUE> </True> <False> <INCREMENT\_VALUE>\#INCREMENT\#</INCREMENT\_VALUE> </False> </Condition> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <CODE\_POS\_0>(\#CONTROLLED\_VAR\#) \#INCREMENT\_VALUE\# - \#VAR\_CLAMP\# (>\#CONTROLLED\_VAR\#) (O:XMLVAR\_IncrementCount) 1 + (>O:XMLVAR\_IncrementCount)</CODE\_POS\_0> <CODE\_POS\_1>\#CODE\_POS\_1\# 0 (>O:XMLVAR\_IncrementCount)</CODE\_POS\_1> <CODE\_POS\_2>(\#CONTROLLED\_VAR\#) \#INCREMENT\_VALUE\# + \#VAR\_CLAMP\# (>\#CONTROLLED\_VAR\#) (O:XMLVAR\_IncrementCount) 1 + (>O:XMLVAR\_IncrementCount)</CODE\_POS\_2> <MOMENTARY\_SWITCH>True</MOMENTARY\_SWITCH> <STATE0\_TIMER>0.01</STATE0\_TIMER> <STATE\_MAX\_TIMER>0.01</STATE\_MAX\_TIMER> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - MOMENTARY\_REPEAT\_FREQUENCY - VAR\_CLAMP - INCREMENT - INCREMENT\_FAST - INCREMENT\_FASTEST - CODE\_POS\_1 - Override Condition: Valid(ACCELERATE\_ON\_HOLD) - Case: True Parameters set: - INCREMENT\_VALUE (using INCREMENT\_FASTEST, INCREMENT\_FAST, INCREMENT) - Case: False Parameters set: - INCREMENT\_VALUE (using INCREMENT)   Templates used: - [ASOBO\_GT\_Switch\_3States](switch/#ASOBO_GT_Switch_3States) Parameters set: - CODE\_POS\_0 (using CONTROLLED\_VAR, INCREMENT\_VALUE, VAR\_CLAMP) - CODE\_POS\_1 (using CODE\_POS\_1) - CODE\_POS\_2 (using CONTROLLED\_VAR, INCREMENT\_VALUE, VAR\_CLAMP) - MOMENTARY\_SWITCH - STATE0\_TIMER - STATE\_MAX\_TIMER [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_Dummy Definition from XML <Template Name="ASOBO\_GT\_Switch\_Dummy"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <LEFT\_SINGLE\_CODE/> <NUM\_STATES>2</NUM\_STATES> <INIT\_VALUE>0</INIT\_VALUE> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1</ANIMTIP\_1\_ON\_PERCENT> <ANIM\_LAG>400</ANIM\_LAG> <IS\_SWITCH>True</IS\_SWITCH> </Parameters> <Component ID="\#NODE\_ID\#" Node="\#NODE\_ID\#"> <Update Once="True"> \#INIT\_VALUE\# (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </Update> <Switch Param="NUM\_STATES"> <Case Value="2"> <UseTemplate Name="ASOBO\_GT\_Anim\_Code"> <ANIM\_CODE>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 100 \*</ANIM\_CODE> </UseTemplate> <UseTemplate Name="ASOBO\_GT\_AnimTriggers\_2SoundEvents"/> <UseTemplate Name="ASOBO\_GT\_Interaction\_LeftSingle\_Code"> <IS\_SWITCH>True</IS\_SWITCH> <MouseFlags>LeftSingle+LeftRelease+LeftDrag</MouseFlags> <LEFT\_SINGLE\_CODE> (\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) ! (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) \#LEFT\_SINGLE\_CODE\# </LEFT\_SINGLE\_CODE> <ANIM\_CODE>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 100 \*</ANIM\_CODE> </UseTemplate> </Case> <Case Value="3"> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <CODE\_POS\_0> 0 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_0> <CODE\_POS\_1> 1 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_1> <CODE\_POS\_2> 2 (>\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) </CODE\_POS\_2> <STATE0\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 0 ==</STATE0\_TEST> <STATE1\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 1 ==</STATE1\_TEST> <STATE2\_TEST>(\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) 1 ==</STATE2\_TEST> </UseTemplate> </Case> </Switch> </Component> </Template> Parameters initialization: - Default Parameters set: - SWITCH\_POSITION\_TYPE - SWITCH\_POSITION\_VAR - LEFT\_SINGLE\_CODE - NUM\_STATES - INIT\_VALUE - ANIMREF\_ID - ANIMTIP\_0\_ON\_PERCENT - ANIMTIP\_1\_ON\_PERCENT - ANIM\_LAG - IS\_SWITCH Parameters read: - NODE\_ID Components: - \#NODE\_ID\# (Node: \#NODE\_ID\#) Parameters read: - INIT\_VALUE - SWITCH\_POSITION\_TYPE - SWITCH\_POSITION\_VAR Condition: Switch(NUM\_STATES) - Case: 2   Templates used: - [ASOBO\_GT\_Anim\_Code](../animations/#ASOBO_GT_Anim_Code) Parameters set: - ANIM\_CODE (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - [ASOBO\_GT\_AnimTriggers\_2SoundEvents](../animationtriggers/#ASOBO_GT_AnimTriggers_2SoundEvents) - [ASOBO\_GT\_Interaction\_LeftSingle\_Code](../interactions/#ASOBO_GT_Interaction_LeftSingle_Code) Parameters set: - IS\_SWITCH - MouseFlags - LEFT\_SINGLE\_CODE (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR, LEFT\_SINGLE\_CODE) - ANIM\_CODE (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - Case: 3   Templates used: - [ASOBO\_GT\_Switch\_3States](switch/#ASOBO_GT_Switch_3States) Parameters set: - CODE\_POS\_0 (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - CODE\_POS\_1 (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - CODE\_POS\_2 (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - STATE0\_TEST (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - STATE1\_TEST (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) - STATE2\_TEST (using SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_3States\_SingleTrue Definition from XML <Template Name="ASOBO\_GT\_Switch\_3States\_SingleTrue"> <UseTemplate Name="ASOBO\_GT\_Switch\_3States\_SingleFalse"> <POTENTIAL\_INVERSION> ! </POTENTIAL\_INVERSION> </UseTemplate> </Template>   Templates used: - [ASOBO\_GT\_Switch\_3States\_SingleFalse](switch/#ASOBO_GT_Switch_3States_SingleFalse) Parameters set: - POTENTIAL\_INVERSION [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_3States\_SingleFalse Definition from XML <Template Name="ASOBO\_GT\_Switch\_3States\_SingleFalse"> <Parameters Type="Default"> <SWITCH\_POSITION\_TYPE>O</SWITCH\_POSITION\_TYPE> <SWITCH\_POSITION\_VAR>SwitchState</SWITCH\_POSITION\_VAR> <POTENTIAL\_INVERSION/> <KEY\_TOGGLE\_PARAM/> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <INIT\_VARS> (A:\#SIMVAR\#, Bool) \#POTENTIAL\_INVERSION\# (>O:3States\_2\_1\_SimvarValue) (\#SWITCH\_POSITION\_TYPE\#:\#SWITCH\_POSITION\_VAR\#) \#SINGLE\_ID\# == (>O:IsOnSingleID) (O:IsOnSingleID) (O:3States\_2\_1\_SimvarValue) == (>O:NeedsToBeInverted) 0 \#SINGLE\_ID\# == (>O:IsState0Single) 1 \#SINGLE\_ID\# == (>O:IsState1Single) 2 \#SINGLE\_ID\# == (>O:IsState2Single) </INIT\_VARS> <STATE0\_TEST> (O:NeedsToBeInverted) (O:IsState0Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState0Single) (O:IsOnSingleID) or (O:IsState0Single) 0 \#NONUNIQUE\_DEFAULT\# == or and and </STATE0\_TEST> <STATE1\_TEST> (O:NeedsToBeInverted) (O:IsState1Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState1Single) (O:IsOnSingleID) or (O:IsState1Single) 1 \#NONUNIQUE\_DEFAULT\# == or and and </STATE1\_TEST> <STATE2\_TEST> (O:NeedsToBeInverted) (O:IsState2Single) (O:3States\_2\_1\_SimvarValue) != (O:IsState2Single) (O:IsOnSingleID) or (O:IsState2Single) 2 \#NONUNIQUE\_DEFAULT\# == or and and </STATE2\_TEST> <CODE\_POS\_0> (O:IsState0Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_0> <CODE\_POS\_1> (O:IsState1Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_1> <CODE\_POS\_2> (O:IsState2Single) (O:3States\_2\_1\_SimvarValue) == if{ \#KEY\_TOGGLE\_PARAM\# (>K:\#KEY\_TOGGLE\#) } </CODE\_POS\_2> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - SWITCH\_POSITION\_TYPE - SWITCH\_POSITION\_VAR - POTENTIAL\_INVERSION - KEY\_TOGGLE\_PARAM   Templates used: - [ASOBO\_GT\_Switch\_3States](switch/#ASOBO_GT_Switch_3States) Parameters set: - INIT\_VARS (using SIMVAR, POTENTIAL\_INVERSION, SWITCH\_POSITION\_TYPE, SWITCH\_POSITION\_VAR, SINGLE\_ID) - STATE0\_TEST (using NONUNIQUE\_DEFAULT) - STATE1\_TEST (using NONUNIQUE\_DEFAULT) - STATE2\_TEST (using NONUNIQUE\_DEFAULT) - CODE\_POS\_0 (using KEY\_TOGGLE\_PARAM, KEY\_TOGGLE) - CODE\_POS\_1 (using KEY\_TOGGLE\_PARAM, KEY\_TOGGLE) - CODE\_POS\_2 (using KEY\_TOGGLE\_PARAM, KEY\_TOGGLE) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Toggle\_Variable Definition from XML <Template Name="ASOBO\_GT\_Toggle\_Variable"> <Parameters Type="Default"> <VAR\_SCOPE>O</VAR\_SCOPE> <TOGGLE\_CODE/> </Parameters> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <Condition Check="VERIF\_STATE\_CODE"> <True> <LEFT\_SINGLE\_CODE> \#VERIF\_STATE\_CODE\# if{ (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#TOGGLE\_CODE\# } </LEFT\_SINGLE\_CODE> </True> <False> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#TOGGLE\_CODE\# </LEFT\_SINGLE\_CODE> </False> </Condition> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - VAR\_SCOPE - TOGGLE\_CODE   Templates used: - [ASOBO\_GT\_Switch\_Code](switch/#ASOBO_GT_Switch_Code) Condition: Check(VERIF\_STATE\_CODE) - Case: True Parameters set: - LEFT\_SINGLE\_CODE (using VERIF\_STATE\_CODE, VAR\_SCOPE, VAR\_NAME, TOGGLE\_CODE) - Case: False Parameters set: - LEFT\_SINGLE\_CODE (using VAR\_SCOPE, VAR\_NAME, TOGGLE\_CODE) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Toggle\_Variable\_Anim Definition from XML <Template Name="ASOBO\_GT\_Toggle\_Variable\_Anim"> <Parameters Type="Default"> <VAR\_NAME>XMLVAR\_Toggle</VAR\_NAME> <VAR\_SCOPE>O</VAR\_SCOPE> <ANIM\_CODE>(\#VAR\_SCOPE\#:\#VAR\_NAME\#) 100 \*</ANIM\_CODE> </Parameters> <UseTemplate Name="ASOBO\_GT\_Toggle\_Variable"/> </Template> Parameters initialization: - Default Parameters set: - VAR\_NAME - VAR\_SCOPE - ANIM\_CODE (using VAR\_SCOPE, VAR\_NAME)   Templates used: - [ASOBO\_GT\_Toggle\_Variable](switch/#ASOBO_GT_Toggle_Variable) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Toggle\_Variable\_ForDuration Definition from XML <Template Name="ASOBO\_GT\_Toggle\_Variable\_ForDuration"> <Parameters Type="Default"> <VAR\_NAME>XMLVAR\_Toggle</VAR\_NAME> <VAR\_SCOPE>O</VAR\_SCOPE> <DURATION>1</DURATION> <CODE\_START\_TIMER/> <CODE\_AFTER\_DURATION/> <Condition Check="CANCELLABLE"> <CODE\_CANCELLING/> </Condition> <ANIMREF\_ID>0</ANIMREF\_ID> <ANIMTIP\_0\_ON\_PERCENT>0</ANIMTIP\_0\_ON\_PERCENT> <ANIMTIP\_1\_ON\_PERCENT>1</ANIMTIP\_1\_ON\_PERCENT> </Parameters> <Update Frequency="5"> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (O:\_ActivationTime) \#DURATION\# + > and if{ 0 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) \#CODE\_AFTER\_DURATION\# } </Update> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <ANIM\_CODE>(\#VAR\_SCOPE\#:\#VAR\_NAME\#) 100 \*</ANIM\_CODE> <Condition Check="CANCELLABLE"> <True> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! if{ 1 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (>O:\_ActivationTime) \#CODE\_START\_TIMER\# } els{ 0 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) 0 (>O:\_ActivationTime) \#CODE\_CANCELLING\# } </LEFT\_SINGLE\_CODE> </True> <False> <LEFT\_SINGLE\_CODE> (\#VAR\_SCOPE\#:\#VAR\_NAME\#) ! if{ 1 (>\#VAR\_SCOPE\#:\#VAR\_NAME\#) (E:SIMULATION TIME, second) (>O:\_ActivationTime) \#CODE\_START\_TIMER\# } </LEFT\_SINGLE\_CODE> </False> </Condition> </UseTemplate> </Template> Parameters initialization: - Default Parameters set: - VAR\_NAME - VAR\_SCOPE - DURATION - CODE\_START\_TIMER - CODE\_AFTER\_DURATION - ANIMREF\_ID - ANIMTIP\_0\_ON\_PERCENT - ANIMTIP\_1\_ON\_PERCENT Condition: Check(CANCELLABLE) - Case: True Parameters set: - CODE\_CANCELLING Parameters read: - VAR\_SCOPE - VAR\_NAME - DURATION - CODE\_AFTER\_DURATION   Templates used: - [ASOBO\_GT\_Switch\_Code](switch/#ASOBO_GT_Switch_Code) Parameters set: - ANIM\_CODE (using VAR\_SCOPE, VAR\_NAME) Condition: Check(CANCELLABLE) - Case: True Parameters set: - LEFT\_SINGLE\_CODE (using VAR\_SCOPE, VAR\_NAME, CODE\_START\_TIMER, CODE\_CANCELLING) - Case: False Parameters set: - LEFT\_SINGLE\_CODE (using VAR\_SCOPE, VAR\_NAME, CODE\_START\_TIMER) [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html) - #### ASOBO\_GT\_Switch\_Covered Definition from XML <Template Name="ASOBO\_GT\_Switch\_Covered"> <Parameters Type="Default"> <NUM\_STATES>2</NUM\_STATES> <WWISE\_COVER\_EVENT\_OPEN>covered\_open\_switch</WWISE\_COVER\_EVENT\_OPEN> <WWISE\_COVER\_EVENT\_CLOSE>covered\_close\_switch</WWISE\_COVER\_EVENT\_CLOSE> <COVER\_INIT\_VALUE>0</COVER\_INIT\_VALUE> <COVER\_IE\_NAME>Cover</COVER\_IE\_NAME> <COVER\_IE\_ID\_SOURCE>COMMON</COVER\_IE\_ID\_SOURCE> <COVER\_USE\_INPUT\_EVENT>COMMON</COVER\_USE\_INPUT\_EVENT> <COVER\_INVERT\_SWITCH\_ON\_CONDITION>False</COVER\_INVERT\_SWITCH\_ON\_CONDITION> <TT\_DESCRIPTION\_ID\_COVER>@TT\_Package.COMMON\_COVER\_ACTION</TT\_DESCRIPTION\_ID\_COVER> <TOOLTIP\_TITLE\_COVER>@TT\_Package.COMMON\_COVER\_TITLE</TOOLTIP\_TITLE\_COVER> <ON\_COVER\_OPENED/> <ON\_COVER\_CLOSED/> <TT\_ICON\_COVER>MOVE\_Y</TT\_ICON\_COVER> <NO\_INTERACTION\_WHEN\_COVERED>True</NO\_INTERACTION\_WHEN\_COVERED> <Condition NotEmpty="ANIM\_CODE"> <SWITCH\_ANIM\_CODE>\#ANIM\_CODE\#</SWITCH\_ANIM\_CODE> </Condition> <Condition NotEmpty="LEFT\_SINGLE\_CODE"> <TOGGLE\_STATE>\#LEFT\_SINGLE\_CODE\#</TOGGLE\_STATE> </Condition> </Parameters> <Parameters Type="Default"> <OFF\_POSITION Process="Int">\#NUM\_STATES\# 1 -</OFF\_POSITION> <IS\_COVER\_OPENED>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</IS\_COVER\_OPENED> <COVER\_VAR\_NAME>\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Position</COVER\_VAR\_NAME> <COVER\_VAR\_TYPE>O</COVER\_VAR\_TYPE> </Parameters> <Parameters Type="Override"> <Condition Valid="NO\_INTERACTION\_WHEN\_COVERED"> <Condition Check="SWITCH\_TYPE" Match="MOMENTARY"> <True> <SET\_SWITCH\_ON>\#IS\_COVER\_OPENED\# if{ \#SET\_SWITCH\_ON\# }</SET\_SWITCH\_ON> </True> <False> <Condition Check="NUM\_STATES" Match="2"> <True> <TOGGLE\_STATE>\#IS\_COVER\_OPENED\# if{ \#TOGGLE\_STATE\# }</TOGGLE\_STATE> </True> <False> <CODE\_POS\_0\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_0\_VERIF> <CODE\_POS\_1\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_1\_VERIF> <CODE\_POS\_2\_VERIF>(B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#, Bool)</CODE\_POS\_2\_VERIF> </False> </Condition> </False> </Condition> </Condition> </Parameters> <Component ID="\#SWITCH\_NODE\_ID\#" Node="\#SWITCH\_NODE\_ID\#"> <Parameters Type="Override"> <Condition NotEmpty="INVERT\_SWITCH\_ANIM"> <INVERT\_ANIM>\#INVERT\_SWITCH\_ANIM\#</INVERT\_ANIM> </Condition> <Condition NotEmpty="SWITCH\_TT\_VALUE"> <TT\_VALUE>\#SWITCH\_TT\_VALUE\#</TT\_VALUE> </Condition> </Parameters> <Condition Check="INPUT\_EVENT\_ID"> <UseInputEvent ID="\#INPUT\_EVENT\_ID\#"/> </Condition> <Switch Param="SWITCH\_TYPE"> <Case Value="MOMENTARY"> <UseTemplate Name="ASOBO\_GT\_Push\_Button"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> <OVERRIDE\_ANIM\_CODE>\#SWITCH\_ANIM\_CODE\#</OVERRIDE\_ANIM\_CODE> <LEFT\_SINGLE\_CODE>\#SET\_SWITCH\_ON\#</LEFT\_SINGLE\_CODE> <LEFT\_LEAVE\_CODE>\#SET\_SWITCH\_OFF\#</LEFT\_LEAVE\_CODE> </UseTemplate> </Case> <Default> <Condition Check="NUM\_STATES" Match="2"> <True> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> <ANIM\_CODE>\#SWITCH\_ANIM\_CODE\#</ANIM\_CODE> <LEFT\_SINGLE\_CODE>\#TOGGLE\_STATE\#</LEFT\_SINGLE\_CODE> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO\_GT\_Switch\_3States"> <ANIM\_NAME>\#SWITCH\_ANIM\_NAME\#</ANIM\_NAME> </UseTemplate> </False> </Condition> </Default> </Switch> </Component> <Component ID="\#COVER\_NODE\_ID\#" Node="\#COVER\_NODE\_ID\#"> <Parameters Type="Override"> <Condition NotEmpty="INVERT\_COVER\_ANIM"> <INVERT\_ANIM>\#INVERT\_COVER\_ANIM\#</INVERT\_ANIM> </Condition> <INVERT\_SWITCH\_ON\_CONDITION>\#COVER\_INVERT\_SWITCH\_ON\_CONDITION\#</INVERT\_SWITCH\_ON\_CONDITION> <ON\_STATE\_CHANGED\_EXTERNAL\_CODE/> </Parameters> <Condition NotEmpty="OPEN\_COVER\_CONDITION"> <UseTemplate Name="ASOBO\_GT\_Update"> <FREQUENCY>5</FREQUENCY> <UPDATE\_CODE>\#OPEN\_COVER\_CONDITION\# != if{ (>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Open) }</UPDATE\_CODE> </UseTemplate> </Condition> <UseTemplate Name="ASOBO\_GT\_Update"> <UPDATE\_ONCE>True</UPDATE\_ONCE> <UPDATE\_CODE>\#COVER\_INIT\_VALUE\# (>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Set)</UPDATE\_CODE> </UseTemplate> <UseInputEvent ID="\#COVER\_USE\_INPUT\_EVENT\#"> <BTN\_ID>\#COVER\_IE\_NAME\#</BTN\_ID> <INPUT\_EVENT\_ID\_SOURCE>\#COVER\_IE\_ID\_SOURCE\#</INPUT\_EVENT\_ID\_SOURCE> <TT\_ICON>\#TT\_ICON\_COVER\#</TT\_ICON> <Condition Check="NUM\_STATES" Match="3"> <True> <SET\_STATE\_1>1 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_OPENED\#</SET\_STATE\_1> <SET\_STATE\_0>0 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_CLOSED\#</SET\_STATE\_0> <SET\_STATE\_2/> </True> <False> <SET\_STATE\_ON>1 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_OPENED\#</SET\_STATE\_ON> <SET\_STATE\_OFF>0 (>\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) \#ON\_COVER\_CLOSED\#</SET\_STATE\_OFF> </False> </Condition> <ON\_BEFORE\_INC\_CODE/> <ON\_BEFORE\_DEC\_CODE/> <ON\_BEFORE\_SET\_CODE/> <ON\_AFTER\_INC\_CODE/> <ON\_AFTER\_DEC\_CODE/> <ON\_AFTER\_SET\_CODE/> <GET\_STATE\_EXTERNAL>(\#COVER\_VAR\_TYPE\#:\#COVER\_VAR\_NAME\#) sp0</GET\_STATE\_EXTERNAL> <SIM\_STATE\_IS\_ON\_EXTERNAL>l0</SIM\_STATE\_IS\_ON\_EXTERNAL> <TT\_DESCRIPTION\_ID>\#TT\_DESCRIPTION\_ID\_COVER\#</TT\_DESCRIPTION\_ID> <STR\_STATE\_OFF>Close</STR\_STATE\_OFF> <STR\_STATE\_ON>Open</STR\_STATE\_ON> <TT\_VALUE\_OFF>@TT\_Closed</TT\_VALUE\_OFF> <TT\_VALUE\_ON>@TT\_Open</TT\_VALUE\_ON> <NUM\_STATES>2</NUM\_STATES> <SIMVAR\_TO\_WATCH\_0/> <Condition Check="COVER\_VAR\_TYPE" Match="L"> <True> <LOCAL\_VAR\_TO\_WATCH\_0>\#COVER\_VAR\_NAME\#</LOCAL\_VAR\_TO\_WATCH\_0> </True> <False> <LOCAL\_VAR\_TO\_WATCH\_0/> </False> </Condition> </UseInputEvent> <UseTemplate Name="ASOBO\_GT\_Switch\_Code"> <TOOLTIP\_TITLE>\#TOOLTIP\_TITLE\_COVER\#</TOOLTIP\_TITLE> <TOOLTIP\_ENTRY\_0>\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#</TOOLTIP\_ENTRY\_0> <ANIM\_NAME>\#COVER\_ANIM\_NAME\#</ANIM\_NAME> <ANIM\_CODE>\#IS\_COVER\_OPENED\# 100 \*</ANIM\_CODE> <LEFT\_SINGLE\_CODE>(>B:\#COVER\_IE\_ID\_SOURCE\#\_\#COVER\_IE\_NAME\#\_Toggle)</LEFT\_SINGLE\_CODE> <WWISE\_EVENT\_1>\#WWISE\_COVER\_EVENT\_OPEN\#</WWISE\_EVENT\_1> <WWISE\_EVENT\_2>\#WWISE\_COVER\_EVENT\_CLOSE\#</WWISE\_EVENT\_2> <Condition NotEmpty="COVER\_PART\_ID"> <PART\_ID>\#COVER\_PART\_ID\#</PART\_ID> </Condition> <Condition NotEmpty="COVER\_HIGHLIGHT\_NODE\_ID"> <HIGHLIGHT\_NODE\_ID>\#COVER\_HIGHLIGHT\_NODE\_ID\#</HIGHLIGHT\_NODE\_ID> </Condition> </UseTemplate> </Component> </Template> Parameters initialization: - Default Parameters set: - NUM\_STATES - WWISE\_COVER\_EVENT\_OPEN - WWISE\_COVER\_EVENT\_CLOSE - COVER\_INIT\_VALUE - COVER\_IE\_NAME - COVER\_IE\_ID\_SOURCE - COVER\_USE\_INPUT\_EVENT - COVER\_INVERT\_SWITCH\_ON\_CONDITION - TT\_DESCRIPTION\_ID\_COVER - TOOLTIP\_TITLE\_COVER - ON\_COVER\_OPENED - ON\_COVER\_CLOSED - TT\_ICON\_COVER - NO\_INTERACTION\_WHEN\_COVERED Condition: NotEmpty(ANIM\_CODE) - Case: True Parameters set: - SWITCH\_ANIM\_CODE (using ANIM\_CODE) Condition: NotEmpty(LEFT\_SINGLE\_CODE) - Case: True Parameters set: - TOGGLE\_STATE (using LEFT\_SINGLE\_CODE) - Default Parameters set: - OFF\_POSITION (using NUM\_STATES) - IS\_COVER\_OPENED (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - COVER\_VAR\_NAME (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - COVER\_VAR\_TYPE - Override Condition: Valid(NO\_INTERACTION\_WHEN\_COVERED) - Case: True Condition: Check(SWITCH\_TYPE) - Case: True Parameters set: - SET\_SWITCH\_ON (using IS\_COVER\_OPENED, SET\_SWITCH\_ON) - Case: False Condition: Check(NUM\_STATES) - Case: True Parameters set: - TOGGLE\_STATE (using IS\_COVER\_OPENED, TOGGLE\_STATE) - Case: False Parameters set: - CODE\_POS\_0\_VERIF (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - CODE\_POS\_1\_VERIF (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - CODE\_POS\_2\_VERIF (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) Parameters read: - SWITCH\_NODE\_ID - COVER\_NODE\_ID Components: - \#SWITCH\_NODE\_ID\# (Node: \#SWITCH\_NODE\_ID\#) Condition: NotEmpty(INVERT\_SWITCH\_ANIM) - Case: True Parameters set: - INVERT\_ANIM (using INVERT\_SWITCH\_ANIM) Condition: NotEmpty(SWITCH\_TT\_VALUE) - Case: True Parameters set: - TT\_VALUE (using SWITCH\_TT\_VALUE) Condition: Check(INPUT\_EVENT\_ID) - Case: True Parameters read: - INPUT\_EVENT\_ID Condition: Switch(SWITCH\_TYPE) - Case: MOMENTARY   Templates used: - [ASOBO\_GT\_Push\_Button](pushbutton/#ASOBO_GT_Push_Button) Parameters set: - ANIM\_NAME (using SWITCH\_ANIM\_NAME) - OVERRIDE\_ANIM\_CODE (using SWITCH\_ANIM\_CODE) - LEFT\_SINGLE\_CODE (using SET\_SWITCH\_ON) - LEFT\_LEAVE\_CODE (using SET\_SWITCH\_OFF) - Default case: Condition: Check(NUM\_STATES) - Case: True   Templates used: - [ASOBO\_GT\_Switch\_Code](switch/#ASOBO_GT_Switch_Code) Parameters set: - ANIM\_NAME (using SWITCH\_ANIM\_NAME) - ANIM\_CODE (using SWITCH\_ANIM\_CODE) - LEFT\_SINGLE\_CODE (using TOGGLE\_STATE) - Case: False   Templates used: - [ASOBO\_GT\_Switch\_3States](switch/#ASOBO_GT_Switch_3States) Parameters set: - ANIM\_NAME (using SWITCH\_ANIM\_NAME) - \#COVER\_NODE\_ID\# (Node: \#COVER\_NODE\_ID\#) Parameters read: - COVER\_USE\_INPUT\_EVENT Parameters set: - INVERT\_SWITCH\_ON\_CONDITION (using COVER\_INVERT\_SWITCH\_ON\_CONDITION) - ON\_STATE\_CHANGED\_EXTERNAL\_CODE - BTN\_ID (using COVER\_IE\_NAME) - INPUT\_EVENT\_ID\_SOURCE (using COVER\_IE\_ID\_SOURCE) - TT\_ICON (using TT\_ICON\_COVER) - ON\_BEFORE\_INC\_CODE - ON\_BEFORE\_DEC\_CODE - ON\_BEFORE\_SET\_CODE - ON\_AFTER\_INC\_CODE - ON\_AFTER\_DEC\_CODE - ON\_AFTER\_SET\_CODE - GET\_STATE\_EXTERNAL (using COVER\_VAR\_TYPE, COVER\_VAR\_NAME) - SIM\_STATE\_IS\_ON\_EXTERNAL - TT\_DESCRIPTION\_ID (using TT\_DESCRIPTION\_ID\_COVER) - STR\_STATE\_OFF - STR\_STATE\_ON - TT\_VALUE\_OFF - TT\_VALUE\_ON - NUM\_STATES - SIMVAR\_TO\_WATCH\_0   Templates used: - [ASOBO\_GT\_Update](../updates/#ASOBO_GT_Update) Parameters set: - UPDATE\_ONCE - UPDATE\_CODE (using COVER\_INIT\_VALUE, COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - [ASOBO\_GT\_Switch\_Code](switch/#ASOBO_GT_Switch_Code) Parameters set: - TOOLTIP\_TITLE (using TOOLTIP\_TITLE\_COVER) - TOOLTIP\_ENTRY\_0 (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - ANIM\_NAME (using COVER\_ANIM\_NAME) - ANIM\_CODE (using IS\_COVER\_OPENED) - LEFT\_SINGLE\_CODE (using COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) - WWISE\_EVENT\_1 (using WWISE\_COVER\_EVENT\_OPEN) - WWISE\_EVENT\_2 (using WWISE\_COVER\_EVENT\_CLOSE) Condition: NotEmpty(COVER\_PART\_ID) - Case: True Parameters set: - PART\_ID (using COVER\_PART\_ID) Condition: NotEmpty(COVER\_HIGHLIGHT\_NODE\_ID) - Case: True Parameters set: - HIGHLIGHT\_NODE\_ID (using COVER\_HIGHLIGHT\_NODE\_ID) Condition: NotEmpty(INVERT\_COVER\_ANIM) - Case: True Parameters set: - INVERT\_ANIM (using INVERT\_COVER\_ANIM) Condition: NotEmpty(OPEN\_COVER\_CONDITION) - Case: True   Templates used: - [ASOBO\_GT\_Update](../updates/#ASOBO_GT_Update) Parameters set: - FREQUENCY - UPDATE\_CODE (using OPEN\_COVER\_CONDITION, COVER\_IE\_ID\_SOURCE, COVER\_IE\_NAME) Condition: Check(NUM\_STATES) - Case: True Parameters set: - SET\_STATE\_1 (using COVER\_VAR\_TYPE, COVER\_VAR\_NAME, ON\_COVER\_OPENED) - SET\_STATE\_0 (using COVER\_VAR\_TYPE, COVER\_VAR\_NAME, ON\_COVER\_CLOSED) - SET\_STATE\_2 - Case: False Parameters set: - SET\_STATE\_ON (using COVER\_VAR\_TYPE, COVER\_VAR\_NAME, ON\_COVER\_OPENED) - SET\_STATE\_OFF (using COVER\_VAR\_TYPE, COVER\_VAR\_NAME, ON\_COVER\_CLOSED) Condition: Check(COVER\_VAR\_TYPE) - Case: True Parameters set: - LOCAL\_VAR\_TO\_WATCH\_0 (using COVER\_VAR\_NAME) - Case: False Parameters set: - LOCAL\_VAR\_TO\_WATCH\_0 [[Go back to top]](#top) [[Go back to index]](..\..\..\Template_Explorer.html)