Slipt templates into files

This commit is contained in:
Kilian Hofmann 2025-01-24 20:06:11 +01:00
parent 0b2e17cfd4
commit b7aa6f0329
15 changed files with 2093 additions and 2114 deletions

View File

@ -0,0 +1,331 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Template Name="MD11_GT_Interaction_WheelAndContinuousLeft_PushPull">
<Parameters Type="Default">
<CURSOR_LEFT>TurnLeft</CURSOR_LEFT>
<CURSOR_RIGHT>TurnRight</CURSOR_RIGHT>
<CENTER_RADIUS>0.004</CENTER_RADIUS>
<HELPID />
<TOOLTIPID />
<LEFT_LEAVE_CODE />
<THRESHOLD_X_INPUT>0.2</THRESHOLD_X_INPUT>
<THRESHOLD_X_MOUSE>0.01</THRESHOLD_X_MOUSE>
<THRESHOLD_Y_INPUT>0.05</THRESHOLD_Y_INPUT>
<THRESHOLD_Y_MOUSE>0.025</THRESHOLD_Y_MOUSE>
<CURSOR_UP>UpArrow</CURSOR_UP>
<CURSOR_DOWN>DownArrow</CURSOR_DOWN>
<UPDATE_FREQUENCY>10</UPDATE_FREQUENCY>
<Condition NotEmpty="CLOCKWISE_CODE">
<True>
<CLOCKWISE_CODE_DEFAULT_IM>#CLOCKWISE_CODE#</CLOCKWISE_CODE_DEFAULT_IM>
<CLOCKWISE_CODE_DRAG_IM>#CLOCKWISE_CODE#</CLOCKWISE_CODE_DRAG_IM>
</True>
<False>
<CLOCKWISE_CODE_DEFAULT_IM />
<CLOCKWISE_CODE_DRAG_IM />
</False>
</Condition>
<Condition NotEmpty="ANTICLOCKWISE_CODE">
<True>
<ANTICLOCKWISE_CODE_DEFAULT_IM>#ANTICLOCKWISE_CODE#</ANTICLOCKWISE_CODE_DEFAULT_IM>
<ANTICLOCKWISE_CODE_DRAG_IM>#ANTICLOCKWISE_CODE#</ANTICLOCKWISE_CODE_DRAG_IM>
</True>
<False>
<ANTICLOCKWISE_CODE_DEFAULT_IM />
<ANTICLOCKWISE_CODE_DRAG_IM />
</False>
</Condition>
<Condition Valid="NO_PUSH_PULL_LOCK">
<True>
<RESET_LOCK />
<UPDATE_LAST_PUSH_TIME />
<UPDATE_LAST_PULL_TIME />
<CAN_BE_PUSHED>1</CAN_BE_PUSHED>
<CAN_BE_PULLED>1</CAN_BE_PULLED>
<LOCK_PUSH />
<LOCK_PULL />
<RESET_PUSH />
<RESET_PULL />
</True>
<False>
<PUSH_RESET_DELAY>0.15</PUSH_RESET_DELAY>
<PULL_RESET_DELAY>0.15</PULL_RESET_DELAY>
<RESET_LOCK>
(O:IsPushed) if{ 0 (&gt;O:IsPushed) }
(O:IsPulled) if{ 0 (&gt;O:IsPulled) }
</RESET_LOCK>
<UPDATE_LAST_PUSH_TIME>
(M:InputType) 1 == if{
(E:SIMULATION TIME, second) (&gt;O:_LastPushTime)
}
</UPDATE_LAST_PUSH_TIME>
<UPDATE_LAST_PULL_TIME>
(M:InputType) 1 == if{
(E:SIMULATION TIME, second) (&gt;O:_LastPullTime)
}
</UPDATE_LAST_PULL_TIME>
<CAN_BE_PUSHED>(O:IsPushed) ! @IsUsingRelativePos and</CAN_BE_PUSHED>
<CAN_BE_PULLED>(O:IsPulled) ! @IsUsingRelativePos and</CAN_BE_PULLED>
<LOCK_PUSH>1 (&gt;O:IsPushed)</LOCK_PUSH>
<LOCK_PULL>1 (&gt;O:IsPulled)</LOCK_PULL>
<RESET_PUSH>(O:IsPushed) if{ 0 (&gt;O:IsPushed) }</RESET_PUSH>
<RESET_PULL>(O:IsPulled) if{ 0 (&gt;O:IsPulled) }</RESET_PULL>
</False>
</Condition>
<ON_DOWN_EVENT />
<ADDITIONAL_EVENT_HANDLING />
<ON_BEFORE_DELTA_X_THRESHOLD_TEST />
<ON_BEFORE_DELTA_Y_THRESHOLD_TEST />
<UPARROW_DRAG_IM />
<DOWNARROW_DRAG_IM />
<LEFTARROW_DRAG_IM />
<RIGHTARROW_DRAG_IM />
<CURSOR_CENTER_DRAG_IM />
<CURSOR_DRAG_IM>Grab</CURSOR_DRAG_IM>
<ALWAYS_USE_ANIM_LAG>False</ALWAYS_USE_ANIM_LAG>
<LOCKABLE_HANDLE_CODE_UP />
<NO_LOCK_HANDLE_CODE_UP />
<LOCKABLE_HANDLE_CODE_DN />
<NO_LOCK_HANDLE_CODE_DN />
</Parameters>
<Parameters Type="Override">
<THRESHOLD_X>#THRESHOLD_X_INPUT# #THRESHOLD_X_MOUSE# (M:InputType) 1 == ?</THRESHOLD_X>
<THRESHOLD_Y>#THRESHOLD_Y_INPUT# #THRESHOLD_Y_MOUSE# (M:InputType) 1 == ?</THRESHOLD_Y>
<Condition Valid="INVERT_AXIS_CODE">
<True>
<Condition NotEmpty="CODE_UP">
<False>
<CODE_UP>#PULL_CODE#</CODE_UP>
</False>
</Condition>
<Condition NotEmpty="CODE_DN">
<False>
<CODE_DN>#PUSH_CODE#</CODE_DN>
</False>
</Condition>
<Condition NotEmpty="CODE_LEFT">
<False>
<CODE_LEFT>#CLOCKWISE_CODE_DRAG_IM#</CODE_LEFT>
</False>
</Condition>
<Condition NotEmpty="CODE_RIGHT">
<False>
<CODE_RIGHT>#ANTICLOCKWISE_CODE_DRAG_IM#</CODE_RIGHT>
</False>
</Condition>
</True>
<False>
<Condition NotEmpty="CODE_UP">
<False>
<CODE_UP>#PUSH_CODE#</CODE_UP>
</False>
</Condition>
<Condition NotEmpty="CODE_DN">
<False>
<CODE_DN>#PULL_CODE#</CODE_DN>
</False>
</Condition>
<Condition NotEmpty="CODE_LEFT">
<False>
<CODE_LEFT>#ANTICLOCKWISE_CODE_DRAG_IM#</CODE_LEFT>
</False>
</Condition>
<Condition NotEmpty="CODE_RIGHT">
<False>
<CODE_RIGHT>#CLOCKWISE_CODE_DRAG_IM#</CODE_RIGHT>
</False>
</Condition>
</False>
</Condition>
</Parameters>
<Parameters Type="Override">
<Condition NotEmpty="CODE_UP">
<LOCKABLE_HANDLE_CODE_UP>(M:Event) &apos;LeftSingle&apos; scmi 0 == if{ #CODE_UP# quit }</LOCKABLE_HANDLE_CODE_UP>
<NO_LOCK_HANDLE_CODE_UP>(M:Event) &apos;RightSingle&apos; scmi 0 == if{ #CODE_UP# quit }</NO_LOCK_HANDLE_CODE_UP>
</Condition>
<Condition NotEmpty="CODE_DN">
<LOCKABLE_HANDLE_CODE_DN>(M:Event) &apos;RightSingle&apos; scmi 0 == if{ #CODE_DN# quit }</LOCKABLE_HANDLE_CODE_DN>
<NO_LOCK_HANDLE_CODE_DN>(M:Event) &apos;MiddleSingle&apos; scmi 0 == if{ #CODE_DN# quit }</NO_LOCK_HANDLE_CODE_DN>
</Condition>
</Parameters>
<Parameters Type="Default">
<LOCKABLE_INPUTS_HANDLING>
#LOCKABLE_HANDLE_CODE_UP#
#LOCKABLE_HANDLE_CODE_DN#
</LOCKABLE_INPUTS_HANDLING>
<NO_LOCK_INPUTS_HANDLING>
#NO_LOCK_HANDLE_CODE_UP#
#NO_LOCK_HANDLE_CODE_DN#
</NO_LOCK_INPUTS_HANDLING>
</Parameters>
<Parameters Type="Default">
<IM_DRAG_ADDITIONAL_EVENT_HANDLING>
(M:InputType) 1 == if{
#LOCKABLE_INPUTS_HANDLING#
} els{
#NO_LOCK_INPUTS_HANDLING#
}
</IM_DRAG_ADDITIONAL_EVENT_HANDLING>
<MOUSEFLAGS_DEFAULT_IM>LeftSingle+LeftRelease+WheelUp+WheelDown</MOUSEFLAGS_DEFAULT_IM>
<MOUSEFLAGS_DRAG_IM>MiddleAll+RightAll+LeftAll+Wheel+Lock+Unlock</MOUSEFLAGS_DRAG_IM>
</Parameters>
<Update Frequency="#UPDATE_FREQUENCY#" InteractionModel="Default">
(O:_MouseDownRelativePosX) 0 &gt; if{ #CLOCKWISE_CODE_DEFAULT_IM# } els{
(O:_MouseDownRelativePosX) 0 &lt; if{ #ANTICLOCKWISE_CODE_DEFAULT_IM# } }
</Update>
<Condition Valid="NO_PUSH_PULL_LOCK">
<False>
<Update Frequency="#UPDATE_FREQUENCY#" InteractionModel="Drag">
(O:IsPushed) (O:_LastPushTime) 0 &gt; and if{
(E:SIMULATION TIME, second) (O:_LastPushTime) - #PUSH_RESET_DELAY# &gt; if{
0 (&gt;O:IsPushed)
0 (&gt;O:_LastPushTime)
}
}
(O:IsPulled) (O:_LastPullTime) 0 &gt; and if{
(E:SIMULATION TIME, second) (O:_LastPullTime) - #PULL_RESET_DELAY# &gt; if{
0 (&gt;O:IsPulled)
0 (&gt;O:_LastPullTime)
}
}
</Update>
</False>
</Condition>
<UseTemplate Name="ASOBO_GT_MouseRect">
<LEFTARROW>#CURSOR_LEFT#</LEFTARROW>
<RIGHTARROW>#CURSOR_RIGHT#</RIGHTARROW>
<UPARROW>#CURSOR_UP#</UPARROW>
<DOWNARROW>#CURSOR_DOWN#</DOWNARROW>
<CALLBACKCODE_DEFAULT_IM>
(M:Event) &apos;WheelUp&apos; scmi 0 == if{ #CLOCKWISE_CODE_DEFAULT_IM# } els{
(M:Event) &apos;WheelDown&apos; scmi 0 == if{ #ANTICLOCKWISE_CODE_DEFAULT_IM# } els{
(M:Event) &apos;LeftRelease&apos; scmi 0 == if{ 0 (&gt;O:_MouseDownRelativePosX) }
(M:RelativeX) abs #CENTER_RADIUS# &gt;
(M:RelativeY) abs #CENTER_RADIUS# &gt; or if{
(M:RelativeX) abs (M:RelativeY) abs &gt; if{
(M:Event) &apos;LeftSingle&apos; scmi 0 ==
if{ (M:RelativeX) (&gt;O:_MouseDownRelativePosX) }
} els{
0 (&gt;O:_MouseDownRelativePosX)
(M:Event) &apos;LeftSingle&apos; scmi 0 ==
if{
(M:RelativeY) 0 &gt; if{
#PUSH_CODE#
1 (&gt;O:IsPushed)
} els{
#PULL_CODE#
1 (&gt;O:IsPulled)
}
}
els{ (M:Event) &apos;LeftRelease&apos; scmi 0 == if{
#LEFT_LEAVE_CODE#
0 (&gt;O:IsPulled)
0 (&gt;O:IsPushed)
}
}
}
}
}
}
</CALLBACKCODE_DEFAULT_IM>
<CALLBACKCODE_DRAG_IM>
#ADDITIONAL_EVENT_HANDLING#
#IM_DRAG_ADDITIONAL_EVENT_HANDLING#
(M:Event) &apos;WheelUp&apos; scmi 0 == if{ #CLOCKWISE_CODE_DRAG_IM# } els{
(M:Event) &apos;WheelDown&apos; scmi 0 == if{ #ANTICLOCKWISE_CODE_DRAG_IM# } els{
(M:Event) &apos;Lock&apos; scmi 0 == if{
(M:RelativeX) (&gt;O:_LastX)
(M:RelativeY) (&gt;O:_LastY)
#ON_DOWN_EVENT#
} els{
(M:Event) &apos;Unlock&apos; scmi 0 ==
(M:Event) &apos;LeftRelease&apos; scmi 0 == ||
(M:Event) &apos;MiddleRelease&apos; scmi 0 == ||
(M:Event) &apos;RightRelease&apos; scmi 0 == ||
if{
0 (&gt;O:_LastX)
0 (&gt;O:_LastY)
#RESET_LOCK#
#LEFT_LEAVE_CODE#
} els{
(M:Event) &apos;LeftDrag&apos; scmi 0 == if{
(M:RelativeX) (O:_LastX) - sp0
#THRESHOLD_X# (&gt;O:_InputThresholdX)
#ON_BEFORE_DELTA_X_THRESHOLD_TEST#
l0 abs (O:_InputThresholdX) &gt; if{
l0 (O:_InputThresholdX) / abs flr sp1
l0 (O:_InputThresholdX) % abs sp2
:1 (* for loop *)
l1 0 &lt;= if{ g2 }
l1 -- sp1
l0 0 &gt; if{
#CODE_RIGHT#
} els{
#CODE_LEFT#
}
g1
:2
l0 0 &gt; if{
(M:RelativeX) l2 - (&gt;O:_LastX)
} els{
(M:RelativeX) l2 + (&gt;O:_LastX)
}
}
(M:RelativeY) (O:_LastY) - sp0
#THRESHOLD_Y# (&gt;O:_InputThresholdY)
#ON_BEFORE_DELTA_Y_THRESHOLD_TEST#
l0 abs (O:_InputThresholdY) &gt; if{
l0 (O:_InputThresholdY) / abs flr sp1
l0 (O:_InputThresholdY) % abs sp2
:3 (* for loop *)
l1 0 &lt;= if{ g4 }
l1 -- sp1
l0 0 &gt; if{
#UPDATE_LAST_PUSH_TIME#
#CAN_BE_PUSHED# if{
#LOCK_PUSH#
#CODE_UP#
}
#RESET_PULL#
} els{
#UPDATE_LAST_PULL_TIME#
#CAN_BE_PULLED# if{
#LOCK_PULL#
#CODE_DN#
}
#RESET_PUSH#
}
g3
:4
l0 0 &gt; if{
(M:RelativeY) l2 - (&gt;O:_LastY)
} els{
(M:RelativeY) l2 + (&gt;O:_LastY)
}
}
}
}
}
}
}
quit
</CALLBACKCODE_DRAG_IM>
</UseTemplate>
</Template>
<Template Name="MD11_GT_Push_Button">
<Parameters Type="Default">
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_DURATION>0.5</ANIM_DURATION>
<LEFT_SINGLE_CODE_DEFAULT_IM>#LEFT_SINGLE_CODE#</LEFT_SINGLE_CODE_DEFAULT_IM>
<LEFT_SINGLE_CODE_DRAG_IM>#LEFT_SINGLE_CODE#</LEFT_SINGLE_CODE_DRAG_IM>
<DISABLE_INTERACTION_LOCK>True</DISABLE_INTERACTION_LOCK>
</Parameters>
<UseTemplate Name="ASOBO_GT_Anim_Code" />
<UseTemplate Name="ASOBO_GT_Interaction_LeftSingle_Leave_Code">
<LEFT_SINGLE_CODE>#LEFT_SINGLE_CODE#</LEFT_SINGLE_CODE>
<LEFT_LEAVE_CODE> #LEFT_LEAVE_CODE#</LEFT_LEAVE_CODE>
</UseTemplate>
</Template>
</ModelBehaviors>

View File

@ -0,0 +1,740 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Template Name="MD11_Volume_Knob">
<Parameters Type="Default">
<VAR_NAME>MD11_LTS_BRT_DIM</VAR_NAME>
<INTENSITY>0.5</INTENSITY>
</Parameters>
<Parameters Type="Override">
<Condition Check="VIS_VAR">
<False>
<VIS_VAR>#NODE_ID#</VIS_VAR>
</False>
</Condition>
</Parameters>
<Component ID="MD11_Annunciator_#NODE_ID#" Node="#NODE_ID#">
<UseTemplate Name="ASOBO_GT_Part_ID" />
<Material>
<EmissiveFactor>
<Parameter>
<Code>(L:#VAR_NAME#, percent over 100) 2.7 pow #INTENSITY# * (L:#VIS_VAR#) *</Code>
</Parameter>
<OverrideBaseEmissive>True</OverrideBaseEmissive>
</EmissiveFactor>
</Material>
</Component>
</Template>
<Template Name="MD11_Finite_Knob">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<DRAG_THRESHOLD>0.075</DRAG_THRESHOLD>
</Parameters>
<Parameters Type="Override">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) #ANIM_LENGTH# #NUM_POS# 1 - / *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<Condition Check="START_POS">
<False>
<START_POS>0</START_POS>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorLeft>TurnLeft</CursorLeft>
<CursorRight>TurnRight</CursorRight>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 ==
if{
(M:RelativeX) 0 &gt;
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{ #INC_CODE# }
(M:RelativeX) 0 &lt;
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{ #DEC_CODE# }
}
(M:Event) 'WheelUp' scmi 0 ==
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{ #INC_CODE# }
(M:Event) 'WheelDown' scmi 0 ==
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{ #DEC_CODE# }
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 ==
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp; if{
#INC_CODE#
}
(M:Event) 'WheelDown' scmi 0 ==
(L:#NODE_NAME#) 0 &gt;
&amp;&amp; if{
#DEC_CODE#
}
(M:Event) 'Lock' scmi 0 == if{
(M:RelativeX) (&gt;O:InitialPosition)
}
(M:Event) 'LeftDrag' scmi 0 == if{
(M:RelativeX) (O:PreviousPosition) &gt; if{
(M:RelativeX) (O:InitialPosition) - #DRAG_THRESHOLD# &gt;
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{
#INC_CODE#
(M:RelativeX) (&gt;O:InitialPosition)
}
} els{
(O:InitialPosition) (M:RelativeX) - abs #DRAG_THRESHOLD# &gt;
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{
#DEC_CODE#
(M:RelativeX) (&gt;O:InitialPosition)
}
}
(M:RelativeX) (&gt;O:PreviousPosition)
}
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>X</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
</Component>
</Template>
<Template Name="MD11_Finite_Knob_Inverted">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<DRAG_THRESHOLD>0.075</DRAG_THRESHOLD>
</Parameters>
<Parameters Type="Override">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) #ANIM_LENGTH# #NUM_POS# 1 - / *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<Condition Check="START_POS">
<False>
<START_POS>0</START_POS>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorLeft>TurnLeft</CursorLeft>
<CursorRight>TurnRight</CursorRight>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 ==
if{
(M:RelativeX) 0 &gt;
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{ #INC_CODE# }
(M:RelativeX) 0 &lt;
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{ #DEC_CODE# }
}
(M:Event) 'WheelUp' scmi 0 ==
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{ #INC_CODE# }
(M:Event) 'WheelDown' scmi 0 ==
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{ #DEC_CODE# }
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 ==
(L:#NODE_NAME#) 0 &gt;
&amp;&amp; if{
#INC_CODE#
}
(M:Event) 'WheelDown' scmi 0 ==
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp; if{
#DEC_CODE#
}
(M:Event) 'Lock' scmi 0 == if{
(M:RelativeX) (&gt;O:InitialPosition)
}
(M:Event) 'LeftDrag' scmi 0 == if{
(M:RelativeX) (O:PreviousPosition) &gt; if{
(M:RelativeX) (O:InitialPosition) - #DRAG_THRESHOLD# &gt;
(L:#NODE_NAME#) 0 &gt;
&amp;&amp;
if{
#INC_CODE#
(M:RelativeX) (&gt;O:InitialPosition)
}
} els{
(O:InitialPosition) (M:RelativeX) - abs #DRAG_THRESHOLD# &gt;
(L:#NODE_NAME#) #NUM_POS# 1 - &lt;
&amp;&amp;
if{
#DEC_CODE#
(M:RelativeX) (&gt;O:InitialPosition)
}
}
(M:RelativeX) (&gt;O:PreviousPosition)
}
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>X</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
</Component>
</Template>
<Template Name="MD11_Infinite_Knob">
<Parameters Type="Default">
<ANIM_LENGTH>72</ANIM_LENGTH>
<ANIM_LAG>0</ANIM_LAG>
<ANIM_WRAP>True</ANIM_WRAP>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="ASOBO_GT_Knob_Infinite">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<True>
<OVERRIDE_ANIM_CODE>#ANIM_CODE#</OVERRIDE_ANIM_CODE>
</True>
<False>
<OVERRIDE_ANIM_CODE>(L:#NODE_NAME#)</OVERRIDE_ANIM_CODE>
</False>
</Condition>
<CLOCKWISE_CODE>#INC_CODE#</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>#DEC_CODE#</ANTICLOCKWISE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Infinite_Knob_Push">
<Parameters Type="Default">
<ANIM_LENGTH_KNOB>72</ANIM_LENGTH_KNOB>
<ANIM_LENGTH_PUSH>10</ANIM_LENGTH_PUSH>
<ANIM_LAG>0</ANIM_LAG>
<ANIM_WRAP>True</ANIM_WRAP>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="ASOBO_GT_Knob_Infinite_Push">
<Condition Check="ANIM_NAME_KNOB">
<False>
<ANIM_NAME_KNOB>#NODE_NAME#</ANIM_NAME_KNOB>
</False>
</Condition>
<Condition Check="ANIM_NAME_PUSH">
<False>
<ANIM_NAME_PUSH>#NODE_NAME#</ANIM_NAME_PUSH>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<True>
<OVERRIDE_ANIM_CODE>#ANIM_CODE#</OVERRIDE_ANIM_CODE>
</True>
<False>
<OVERRIDE_ANIM_CODE>(L:#NODE_NAME#)</OVERRIDE_ANIM_CODE>
</False>
</Condition>
<Condition Check="ANIM_CODE_PUSH">
<True>
<OVERRIDE_PUSH_ANIM_CODE>#ANIM_CODE_PUSH#</OVERRIDE_PUSH_ANIM_CODE>
</True>
<False>
<OVERRIDE_PUSH_ANIM_CODE>(L:#NODE_NAME#)</OVERRIDE_PUSH_ANIM_CODE>
</False>
</Condition>
<CLOCKWISE_CODE>#INC_CODE#</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>#DEC_CODE#</ANTICLOCKWISE_CODE>
<LEFT_SINGLE_CODE>#PUSH_CODE#</LEFT_SINGLE_CODE>
<LEFT_LEAVE_CODE>#REL_CODE#</LEFT_LEAVE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Infinite_Knob_Pull">
<Parameters Type="Default">
<ANIM_LENGTH_KNOB>72</ANIM_LENGTH_KNOB>
<ANIM_LENGTH_PUSH>10</ANIM_LENGTH_PUSH>
<ANIM_LAG>0</ANIM_LAG>
<ANIM_WRAP>True</ANIM_WRAP>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="ASOBO_GT_Knob_Infinite_Push">
<Condition Check="ANIM_NAME_PULL">
<True>
<ANIM_NAME_PUSH>#ANIM_NAME_PULL#</ANIM_NAME_PUSH>
</True>
<False>
<ANIM_NAME_PUSH>#NODE_NAME#</ANIM_NAME_PUSH>
</False>
</Condition>
<Condition Check="ANIM_NAME_KNOB">
<False>
<ANIM_NAME_KNOB>#NODE_NAME#</ANIM_NAME_KNOB>
</False>
</Condition>
<Condition Check="ANIM_CODE_KNOB">
<True>
<OVERRIDE_ANIM_CODE>#ANIM_CODE_KNOB#</OVERRIDE_ANIM_CODE>
</True>
<False>
<OVERRIDE_ANIM_CODE>(L:#NODE_NAME#)</OVERRIDE_ANIM_CODE>
</False>
</Condition>
<Condition Check="ANIM_CODE_PULL">
<True>
<OVERRIDE_PUSH_ANIM_CODE>#ANIM_CODE_PULL#</OVERRIDE_PUSH_ANIM_CODE>
</True>
<False>
<OVERRIDE_PUSH_ANIM_CODE>(L:#NODE_NAME#)</OVERRIDE_PUSH_ANIM_CODE>
</False>
</Condition>
<CLOCKWISE_CODE>#INC_CODE#</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>#DEC_CODE#</ANTICLOCKWISE_CODE>
<LEFT_SINGLE_CODE>#PULL_CODE#</LEFT_SINGLE_CODE>
<LEFT_LEAVE_CODE>#REL_CODE#</LEFT_LEAVE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Infinite_Knob_PushPull">
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Parameters Type="Default">
<ANIM_LENGTH_PUSHPULL>10</ANIM_LENGTH_PUSHPULL>
<ANIM_LENGTH_KNOB>72</ANIM_LENGTH_KNOB>
<ANIM_LAG_KNOB>0</ANIM_LAG_KNOB>
<ANIM_LAG_PUSHPULL>100</ANIM_LAG_PUSHPULL>
<ROTATION_SPEED>10</ROTATION_SPEED>
<CENTER_RADIUS>0</CENTER_RADIUS>
<NORMALIZED_TIME_PUSH_ON>0.6</NORMALIZED_TIME_PUSH_ON>
<NORMALIZED_TIME_PUSH_OFF>0.9</NORMALIZED_TIME_PUSH_OFF>
<NORMALIZED_TIME_PULL_ON>0.4</NORMALIZED_TIME_PULL_ON>
<NORMALIZED_TIME_PULL_OFF>0.1</NORMALIZED_TIME_PULL_OFF>
</Parameters>
<UseTemplate Name="ASOBO_GT_Anim">
<Condition Check="ANIM_NAME_PUSHPULL">
<True>
<ANIM_NAME>#ANIM_NAME_PUSHPULL#</ANIM_NAME>
</True>
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE_PUSHPULL">
<True>
<ANIM_CODE>#ANIM_CODE_PUSHPULL#</ANIM_CODE>
</True>
<False>
<ANIM_CODE>(L:#NODE_NAME#)</ANIM_CODE>
</False>
</Condition>
<ANIM_LENGTH>#ANIM_LENGTH_PUSHPULL#</ANIM_LENGTH>
</UseTemplate>
<UseTemplate Name="ASOBO_GT_Anim">
<Condition Check="ANIM_NAME_KNOB">
<True>
<ANIM_NAME>#ANIM_NAME_KNOB#</ANIM_NAME>
</True>
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE_KNOB">
<True>
<ANIM_CODE>#ANIM_CODE_KNOB#</ANIM_CODE>
</True>
<False>
<ANIM_CODE>(L:#NODE_NAME#)</ANIM_CODE>
</False>
</Condition>
<ANIM_LENGTH>#ANIM_LENGTH_KNOB#</ANIM_LENGTH>
<ROTATION_SPEED>10</ROTATION_SPEED>
<EXTRA_INTERACTION />
<CLOCKWISE_CONDITION> 1 </CLOCKWISE_CONDITION>
<ANTICLOCKWISE_CONDITION> 1 </ANTICLOCKWISE_CONDITION>
<ANIM_WRAP>True</ANIM_WRAP>
</UseTemplate>
<UseTemplate Name="MD11_GT_Interaction_WheelAndContinuousLeft_PushPull">
<PUSH_CODE>#PUSH_CODE#</PUSH_CODE>
<PULL_CODE>#PULL_CODE#</PULL_CODE>
<LEFT_LEAVE_CODE>#REL_CODE#</LEFT_LEAVE_CODE>
<CLOCKWISE_CODE>#INC_CODE#</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>#DEC_CODE#</ANTICLOCKWISE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Rudder_Trim_Knob">
<Parameters Type="Default">
<ANIM_LENGTH>50</ANIM_LENGTH>
<ANIM_LAG>500</ANIM_LAG>
<RESET_DELAY>0.15</RESET_DELAY>
<DRAG_THRESHOLD>0.35</DRAG_THRESHOLD>
</Parameters>
<Parameters Type="Override">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) 5 *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorLeft>TurnLeft</CursorLeft>
<CursorRight>TurnRight</CursorRight>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 == if{
(M:RelativeX) 0 &gt; if{
#INC_CODE#
}
(M:RelativeX) 0 &lt; if{
#DEC_CODE#
}
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'LeftRelease' scmi 0 == if{
1 (&gt;O:HasReleased)
}
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME,seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
1(&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'Lock' scmi 0 == if{
(L:#VAR_NAME#) 2 / (&gt;O:InitialPosition)
}
(M:Event) 'Unlock' scmi 0 == if{
1 (&gt;O:HasReleased)
0 (&gt;O:IsThresholdExceeded)
}
(M:Event) 'LeftDrag' scmi 0 == if{
(O:IsThresholdExceeded) ! if{
(M:DragPercent)
(O:InitialPosition) - (&gt;O:DragChange)
(O:DragChange) #DRAG_THRESHOLD# &gt;= if{
#INC_CODE#
1 (&gt;O:IsThresholdExceeded)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(O:DragChange) -#DRAG_THRESHOLD# &lt;= if{
#DEC_CODE#
1 (&gt;O:IsThresholdExceeded) (E:SIMULATION TIME, seconds)
(&gt;O:UpdateTime)
}
}
}
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>X</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
<Update InteractionModel="All" Frequency="5">
(O:HasReleased) if{
(E:SIMULATION TIME, seconds) (O:UpdateTime) - #RESET_DELAY# &gt; if{
#REL_CODE#
0 (&gt;O:HasReleased)
}
}
</Update>
</Component>
</Template>
<Template Name="MD11_Aileron_Trim_Knob">
<Parameters Type="Default">
<ANIM_LENGTH>50</ANIM_LENGTH>
<ANIM_LAG>500</ANIM_LAG>
<RESET_DELAY>0.15</RESET_DELAY>
<DRAG_THRESHOLD>0.35</DRAG_THRESHOLD>
</Parameters>
<Parameters Type="Override">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) 5 *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorLeft>LeftArrow</CursorLeft>
<CursorRight>RightArrow</CursorRight>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 == if{
(M:RelativeX) 0 &gt; if{
#INC_CODE#
}
(M:RelativeX) 0 &lt; if{
#DEC_CODE#
}
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
(E:SIMULATION TIME,seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'Lock' scmi 0 == if{
(L:#VAR_NAME#) 2 / (&gt;O:InitialPosition)
}
(M:Event) 'Unlock' scmi 0 == if{
0 (&gt;O:IsThresholdExceeded)
}
(M:Event) 'LeftDrag' scmi 0 == if{
(O:IsThresholdExceeded) ! if{
(M:DragPercent)
(O:InitialPosition) - (&gt;O:DragChange)
(O:DragChange) #DRAG_THRESHOLD# &gt;= if{
#INC_CODE#
1 (&gt;O:IsThresholdExceeded)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(O:DragChange) -#DRAG_THRESHOLD# &lt;= if{
#DEC_CODE#
1 (&gt;O:IsThresholdExceeded) (E:SIMULATION TIME, seconds)
(&gt;O:UpdateTime)
}
}
}
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>X</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
</Component>
</Template>
</ModelBehaviors>

View File

@ -0,0 +1,162 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Template Name="MD11_IntegralLighting_Template">
<DefaultTemplateParameters>
<NODE_ID />
<VAR_NAME />
<INTENSITY>0.3</INTENSITY>
</DefaultTemplateParameters>
<Component ID="MD11_IntegralLighting_#NODE_ID#" Node="#NODE_ID#">
<UseTemplate Name="ASOBO_GT_Part_ID" />
<Material>
<EmissiveFactor>
<Parameter>
<Code>(L:#VAR_NAME#, enum) 0.1 * #INTENSITY# * </Code>
</Parameter>
<OverrideBaseEmissive>True</OverrideBaseEmissive>
</EmissiveFactor>
</Material>
</Component>
</Template>
<Template Name="MD11_Floodlight_bulbs">
<DefaultTemplateParameters>
<NODE_ID />
<VAR_NAME />
<INDEX />
<UNITS />
<INTENSITY>3.0</INTENSITY>
</DefaultTemplateParameters>
<Component ID="MD11_Flood_#NODE_ID#" Node="#NODE_ID#">
<UseTemplate Name="ASOBO_GT_Part_ID" />
<Material>
<EmissiveFactor>
<Parameter>
<Code>(A:#VAR_NAME#:#INDEX#, #UNITS#) 1.3 pow 0.1 * #INTENSITY# *</Code>
</Parameter>
<OverrideBaseEmissive>True</OverrideBaseEmissive>
</EmissiveFactor>
</Material>
</Component>
</Template>
<Template Name="MD11_Annunciator">
<Parameters Type="Default">
<VAR_NAME>MD11_LTS_BRT_DIM</VAR_NAME>
<INTENSITY>1.8</INTENSITY>
</Parameters>
<Parameters Type="Override">
<Condition Check="VIS_VAR">
<False>
<VIS_VAR>#NODE_ID#</VIS_VAR>
</False>
</Condition>
</Parameters>
<Component ID="MD11_Annunciator_#NODE_ID#" Node="#NODE_ID#">
<UseTemplate Name="ASOBO_GT_Part_ID" />
<Visibility>
<Parameter>
<Code>(L:#VIS_VAR#, bool)</Code>
</Parameter>
</Visibility>
<Material>
<EmissiveFactor>
<Parameter>
<Code>(L:#VAR_NAME#, percent over 100) 2.7 pow #INTENSITY# *</Code>
</Parameter>
<OverrideBaseEmissive>True</OverrideBaseEmissive>
</EmissiveFactor>
</Material>
</Component>
</Template>
<Template Name="MD11_Animation">
<Parameters Type="Default">
<ANIM_LENGTH>50</ANIM_LENGTH>
<ANIM_LAG>500</ANIM_LAG>
</Parameters>
<Parameters Type="Override">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<False>
<ANIM_CODE>(L:#NODE_NAME#)</ANIM_CODE>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</Component>
</Template>
<Template Name="MD11_APU_Fire_Handle">
<Parameters type="Default">
<TURN_ANIM_LENGTH>10</TURN_ANIM_LENGTH>
<TURN_ANIM_LAG>100</TURN_ANIM_LAG>
<PULL_ANIM_LENGTH>10</PULL_ANIM_LENGTH>
<PULL_ANIM_LAG>100</PULL_ANIM_LAG>
<THRESHOLD_X_INPUT>0.2</THRESHOLD_X_INPUT>
<THRESHOLD_X_MOUSE>0.075</THRESHOLD_X_MOUSE>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Animation Name="#TURN_ANIM_NAME#" Length="#TURN_ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>(L:#TURN_ANIM_VAR#) 5 *</Code>
<Lag>#TURN_ANIM_LAG#</Lag>
</Parameter>
</Animation>
<Animation Name="#PULL_ANIM_NAME#" Length="#PULL_ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>(L:#PULL_ANIM_VAR#) 10 *</Code>
<Lag>#PULL_ANIM_LAG#</Lag>
</Parameter>
</Animation>
<UseTemplate Name="ASOBO_GT_Interaction_WheelAndContinuousLeft_LeftSingle">
<CLOCKWISE_CODE>(L:#PULL_ANIM_VAR#) 1 == if{ #INC_CODE# }</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>(L:#PULL_ANIM_VAR#) 1 == if{ #DEC_CODE# }</ANTICLOCKWISE_CODE>
<LEFT_SINGLE_CODE>(L:#TURN_ANIM_VAR#) 1 == if{ #PULL_CODE# }</LEFT_SINGLE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_ENG_Fire_Handle">
<Parameters type="Default">
<TURN_ANIM_LENGTH>10</TURN_ANIM_LENGTH>
<TURN_ANIM_LAG>100</TURN_ANIM_LAG>
<PULL_ANIM_LENGTH>10</PULL_ANIM_LENGTH>
<PULL_ANIM_LAG>100</PULL_ANIM_LAG>
<THRESHOLD_X_INPUT>0.2</THRESHOLD_X_INPUT>
<THRESHOLD_X_MOUSE>0.075</THRESHOLD_X_MOUSE>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Animation Name="#TURN_ANIM_NAME#" Length="#TURN_ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>(L:#TURN_ANIM_VAR#) 5 *</Code>
<Lag>#TURN_ANIM_LAG#</Lag>
</Parameter>
</Animation>
<Animation Name="#PULL_ANIM_NAME#" Length="#PULL_ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>(L:#PULL_ANIM_VAR#) 5 *</Code>
<Lag>#PULL_ANIM_LAG#</Lag>
</Parameter>
</Animation>
<UseTemplate Name="ASOBO_GT_Interaction_WheelAndContinuousLeft_PushPull">
<CLOCKWISE_CODE>(L:#PULL_ANIM_VAR#) 2 == if{ #INC_CODE# }</CLOCKWISE_CODE>
<ANTICLOCKWISE_CODE>(L:#PULL_ANIM_VAR#) 2 == if{ #DEC_CODE# }</ANTICLOCKWISE_CODE>
<PULL_CODE>(L:#TURN_ANIM_VAR#) 1 == if{ #PULL_CODE# }</PULL_CODE>
<PUSH_CODE>(L:#TURN_ANIM_VAR#) 1 == if{ #PUSH_CODE# }</PUSH_CODE>
</UseTemplate>
</Component>
</Template>
</ModelBehaviors>

View File

@ -0,0 +1,417 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Template Name="MD11_Guard">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<ANIM_DURATION>0.1</ANIM_DURATION>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="ASOBO_GT_Switch_Code">
<Condition Check="ANIM_NAME">
<True>
<ANIM_NAME>#ANIM_NAME#</ANIM_NAME>
</True>
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<True>
<ANIM_CODE>#ANIM_CODE#</ANIM_CODE>
</True>
<False>
<ANIM_CODE>(L:#NODE_NAME#) 10 *</ANIM_CODE>
</False>
</Condition>
<ANIM_LENGTH>#ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#ANIM_LAG#</ANIM_LAG>
<ANIM_DURATION>#ANIM_DURATION#</ANIM_DURATION>
<LEFT_SINGLE_CODE>#CODE#</LEFT_SINGLE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Button">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<ANIM_DURATION>0.1</ANIM_DURATION>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="MD11_GT_Push_Button">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<False>
<ANIM_CODE>(L:#NODE_NAME#) 10 *</ANIM_CODE>
</False>
</Condition>
<Condition Check="ANIM_VAR">
<False>
<SWITCH_POSITION_TYPE>L</SWITCH_POSITION_TYPE>
<SWITCH_POSITION_VAR>#NODE_NAME#</SWITCH_POSITION_VAR>
</False>
</Condition>
<ANIM_LENGTH>#ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#ANIM_LAG#</ANIM_LAG>
<ANIM_DURATION>#ANIM_DURATION#</ANIM_DURATION>
<LEFT_SINGLE_CODE>#CODE_PRESS#</LEFT_SINGLE_CODE>
<LEFT_LEAVE_CODE>#CODE_RELEASE#</LEFT_LEAVE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_Button_Guarded">
<Parameters Type="Default">
<GUARD_ANIM_LENGTH>10</GUARD_ANIM_LENGTH>
<GUARD_ANIM_LAG>100</GUARD_ANIM_LAG>
<GUARD_ANIM_DURATION>0.1</GUARD_ANIM_DURATION>
<BUTTON_ANIM_LENGTH>10</BUTTON_ANIM_LENGTH>
<BUTTON_ANIM_LAG>100</BUTTON_ANIM_LAG>
<BUTTON_ANIM_DURATION>0.1</BUTTON_ANIM_DURATION>
<BUTTON_MIN_HELD_DURATION>0.1</BUTTON_MIN_HELD_DURATION>
</Parameters>
<Component ID="#GUARD_NODE_NAME##BUTTON_NODE_NAME#">
<UseTemplate Name="MD11_Guard">
<NODE_NAME>#GUARD_NODE_NAME#</NODE_NAME>
<ANIM_LENGTH>#GUARD_ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#GUARD_ANIM_LAG#</ANIM_LAG>
<ANIM_DURATION>#GUARD_ANIM_DURATION#</ANIM_DURATION>
<CODE>#GUARD_CODE#</CODE>
</UseTemplate>
<UseTemplate Name="MD11_Button">
<NODE_NAME>#BUTTON_NODE_NAME#</NODE_NAME>
<ANIM_LENGTH>#BUTTON_ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#BUTTON_ANIM_LAG#</ANIM_LAG>
<ANIM_DURATION>#BUTTON_ANIM_DURATION#</ANIM_DURATION>
<CODE_PRESS>#BUTTON_CODE_PRESS#</CODE_PRESS>
<CODE_RELEASE>#BUTTON_CODE_RELEASE#</CODE_RELEASE>
<MIN_HELD_DURATION>#BUTTON_MIN_HELD_DURATION#</MIN_HELD_DURATION>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_2Pos_Switch">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<UseTemplate Name="ASOBO_GT_Switch_Code">
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="ANIM_CODE">
<False>
<ANIM_CODE>(L:#NODE_NAME#) 10 *</ANIM_CODE>
</False>
</Condition>
<ANIM_LENGTH>#ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#ANIM_LAG#</ANIM_LAG>
<LEFT_SINGLE_CODE>#CODE#</LEFT_SINGLE_CODE>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_3Pos_Switch">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<DRAG_THRESHOLD>0.35</DRAG_THRESHOLD>
<SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION>
</Parameters>
<Parameters Type="Override">
<Switch Param="SWITCH_DIRECTION">
<Case Value="Vertical">
<AXIS>Y</AXIS>
</Case>
<Case Value="Horizontal">
<AXIS>X</AXIS>
</Case>
</Switch>
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) 5 *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorUp>UpArrow</CursorUp>
<CursorDown>DownArrow</CursorDown>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 == if{ (M:Relative#AXIS#) 0 &gt; if{ #INC_CODE# }
(M:Relative#AXIS#) 0 &lt; if{ #DEC_CODE# } }
(M:Event) 'WheelUp' scmi 0 == if{ #INC_CODE# }
(M:Event) 'WheelDown' scmi 0 == if{ #DEC_CODE# }
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 == if{ #INC_CODE# }
(M:Event) 'WheelDown' scmi 0 == if{ #DEC_CODE# }
(M:Event) 'Lock' scmi 0 == if{ (L:#VAR_NAME#) 2 / (&gt;O:InitialPosition) }
(M:Event) 'Unlock' scmi 0 == if{ 0 (&gt;O:IsThresholdExceeded) }
(M:Event) 'LeftDrag' scmi 0 == if{ (O:IsThresholdExceeded) ! if{ (M:DragPercent)
(O:InitialPosition) - (&gt;O:DragChange) (O:DragChange) #DRAG_THRESHOLD# &gt;= if{
#INC_CODE# 1 (&gt;O:IsThresholdExceeded) } (O:DragChange) -#DRAG_THRESHOLD# &lt;=
if{ #DEC_CODE# 1 (&gt;O:IsThresholdExceeded) } } }
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>#AXIS#</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
</Component>
</Template>
<Template Name="MD11_3Pos_Switch_Guarded">
<Parameters Type="Default">
<GUARD_ANIM_LENGTH>10</GUARD_ANIM_LENGTH>
<GUARD_ANIM_LAG>100</GUARD_ANIM_LAG>
<GUARD_ANIM_DURATION>0.1</GUARD_ANIM_DURATION>
<SWITCH_ANIM_LENGTH>10</SWITCH_ANIM_LENGTH>
<SWITCH_ANIM_LAG>100</SWITCH_ANIM_LAG>
<SWITCH_DRAG_THRESHOLD>0.35</SWITCH_DRAG_THRESHOLD>
<SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION>
</Parameters>
<Parameters Type="Override">
<Switch Param="SWITCH_DIRECTION">
<Case Value="Vertical">
<AXIS>Y</AXIS>
</Case>
<Case Value="Horizontal">
<AXIS>X</AXIS>
</Case>
</Switch>
<Condition Check="SWITCH_ANIM_NAME">
<False>
<SWITCH_ANIM_NAME>#SWITCH_NODE_NAME#</SWITCH_ANIM_NAME>
</False>
</Condition>
<Condition Check="SWITCH_VAR_NAME">
<False>
<SWITCH_VAR_NAME>#SWITCH_NODE_NAME#</SWITCH_VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#GUARD_NODE_NAME##SWITCH_NODE_NAME#">
<UseTemplate Name="MD11_Guard">
<NODE_NAME>#GUARD_NODE_NAME#</NODE_NAME>
<ANIM_LENGTH>#GUARD_ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#GUARD_ANIM_LAG#</ANIM_LAG>
<ANIM_DURATION>#GUARD_ANIM_DURATION#</ANIM_DURATION>
<CODE>#GUARD_CODE#</CODE>
</UseTemplate>
<UseTemplate Name="MD11_3Pos_Switch">
<NODE_NAME>#SWITCH_NODE_NAME#</NODE_NAME>
<ANIM_LENGTH>#SWITCH_ANIM_LENGTH#</ANIM_LENGTH>
<ANIM_LAG>#SWITCH_ANIM_LAG#</ANIM_LAG>
<INC_CODE>#SWITCH_INC_CODE#</INC_CODE>
<DEC_CODE>#SWITCH_DEC_CODE#</DEC_CODE>
<DRAG_THRESHOLD>#SWITCH_DRAG_THRESHOLD#</DRAG_THRESHOLD>
<DIRECTION>#SWITCH_DIRECTION#</DIRECTION>
</UseTemplate>
</Component>
</Template>
<Template Name="MD11_3Pos_Switch_Hold">
<Parameters Type="Default">
<ANIM_LENGTH>10</ANIM_LENGTH>
<ANIM_LAG>100</ANIM_LAG>
<RESET_DELAY>0.15</RESET_DELAY>
<DRAG_THRESHOLD>0.35</DRAG_THRESHOLD>
<SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION>
</Parameters>
<Parameters Type="Override">
<Switch Param="SWITCH_DIRECTION">
<Case Value="Vertical">
<AXIS>Y</AXIS>
</Case>
<Case Value="Horizontal">
<AXIS>X</AXIS>
</Case>
</Switch>
<Condition Check="ANIM_NAME">
<False>
<ANIM_NAME>#NODE_NAME#</ANIM_NAME>
</False>
</Condition>
<Condition Check="VAR_NAME">
<False>
<VAR_NAME>#NODE_NAME#</VAR_NAME>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Condition Check="ANIM_CODE">
<True>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</True>
<False>
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim"
TypeParam="AutoPlay">
<Parameter>
<Code>(L:#NODE_NAME#) 5 *</Code>
<Lag>#ANIM_LAG#</Lag>
</Parameter>
</Animation>
</False>
</Condition>
<MouseRect>
<IMCursorsInstances>
<IMDefault>
<CursorUp>UpArrow</CursorUp>
<CursorDown>DownArrow</CursorDown>
<Cursor>Dynamic</Cursor>
</IMDefault>
<IMDrag>
<Cursor>Grab</Cursor>
</IMDrag>
</IMCursorsInstances>
<IMMouseFlagsInstances>
<IMDefault>LeftSingle+LeftRelease+WheelUp+WheelDown</IMDefault>
<IMDrag>Lock+Unlock+LeftDrag+Wheel</IMDrag>
</IMMouseFlagsInstances>
<Lock>True</Lock>
<LockFlagsTemporary>LeftSingle</LockFlagsTemporary>
<HighlightNodeId>#NODE_NAME#</HighlightNodeId>
<CallbackCode>
<IMCodeInstances>
<IMDefault>
(M:Event) 'LeftSingle' scmi 0 == if{
(M:Relative#AXIS#) 0 &gt; if{
#INC_CODE#
}
(M:Relative#AXIS#) 0 &lt; if{
#DEC_CODE#
}
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'LeftRelease' scmi 0 == if{
1 (&gt;O:HasReleased)
}
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME,seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
</IMDefault>
<IMDrag>
(M:Event) 'WheelUp' scmi 0 == if{
#INC_CODE#
1(&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'WheelDown' scmi 0 == if{
#DEC_CODE#
1 (&gt;O:HasReleased)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(M:Event) 'Lock' scmi 0 == if{
(L:#VAR_NAME#) 2 / (&gt;O:InitialPosition)
}
(M:Event) 'Unlock' scmi 0 == if{
1 (&gt;O:HasReleased)
0 (&gt;O:IsThresholdExceeded)
}
(M:Event) 'LeftDrag' scmi 0 == if{
(O:IsThresholdExceeded) ! if{
(M:DragPercent)
(O:InitialPosition) - (&gt;O:DragChange)
(O:DragChange) #DRAG_THRESHOLD# &gt;= if{
#INC_CODE#
1 (&gt;O:IsThresholdExceeded)
(E:SIMULATION TIME, seconds) (&gt;O:UpdateTime)
}
(O:DragChange) -#DRAG_THRESHOLD# &lt;= if{
#DEC_CODE#
1 (&gt;O:IsThresholdExceeded) (E:SIMULATION TIME, seconds)
(&gt;O:UpdateTime)
}
}
}
</IMDrag>
</IMCodeInstances>
<DragMode>Trajectory</DragMode>
<DragAnimName>#ANIM_NAME#</DragAnimName>
<DragNodeId>#NODE_NAME#</DragNodeId>
<DragAnimSynced>True</DragAnimSynced>
<DragUseAnimLag>True</DragUseAnimLag>
<DragAxis>#AXIS#</DragAxis>
<DragFlagsLockable>LeftDrag+RightDrag+MiddleDrag</DragFlagsLockable>
</CallbackCode>
</MouseRect>
<Update InteractionModel="All" Frequency="5">
(O:HasReleased) if{
(E:SIMULATION TIME, seconds) (O:UpdateTime) - #RESET_DELAY# &gt; if{
#REL_CODE#
0 (&gt;O:HasReleased)
}
}
</Update>
</Component>
</Template>
</ModelBehaviors>

View File

@ -5,8 +5,6 @@
</LODS>
<Behaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<!-- KHOFMANN START -->
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_INT_OG.xml" />
@ -17,6 +15,7 @@
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_INT_AUDIO.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_INT_MCDU.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_INT_PED.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_INT_THR.xml" />
<Component ID="MD11_OVHD">
<UseTemplate Name="MD11_OVHD" />
@ -39,6 +38,10 @@
<Component ID="TFDi_MD11_INT_PED">
<UseTemplate Name="MD11_PED" />
</Component>
<Component ID="TFDi_MD11_INT_THR">
<UseTemplate Name="MD11_THR" />
</Component>
<Component ID="TFDi_MD11_INT_OG">
<UseTemplate Name="TFDi_MD11_INT_OG" />
</Component>

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_AOVHD">
<!-- APU START -->
<UseTemplate Name="MD11_Button">

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_AUDIO">
<!-- NOTE: Animation "flipped" so it is 0 VOL on the left edge, 100 on the right edge -->
<!-- CPT VOL KNOBS START -->

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_GCP">
<!-- FCP START -->
<UseTemplate Name="MD11_Button">

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_MCDU">
<!-- LMCDU START -->
<UseTemplate Name="MD11_Button">

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_MIP">
<!-- GEAR START -->
<UseTemplate Name="MD11_2Pos_Switch">

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_OVHD">
<!-- LIGHTS START -->
<UseTemplate Name="MD11_2Pos_Switch">
@ -304,10 +301,10 @@
<CODE_PRESS>90146 (&gt;L:CEVENT)</CODE_PRESS>
<CODE_RELEASE>90147 (&gt;L:CEVENT)</CODE_RELEASE>
</UseTemplate>
<!-- FIXME: LATCHING -->
<UseTemplate Name="MD11_Button">
<NODE_NAME>MD11_OVHD_ELEC_ADG_ELEC_BT</NODE_NAME>
<CODE_PRESS>90148 (&gt;L:CEVENT)</CODE_PRESS>
<CODE_RELEASE />
</UseTemplate>
<UseTemplate Name="MD11_Button">
<NODE_NAME>MD11_OVHD_ELEC_DC_TIE1_BT</NODE_NAME>
@ -345,12 +342,12 @@
<BUTTON_CODE_PRESS>90130 (&gt;L:CEVENT)</BUTTON_CODE_PRESS>
<BUTTON_CODE_RELEASE>90131 (&gt;L:CEVENT)</BUTTON_CODE_RELEASE>
</UseTemplate>
<!-- FIXME: LATCHING-->
<UseTemplate Name="MD11_Button_Guarded">
<GUARD_NODE_NAME>MD11_OVHD_ELEC_CAB_BUS_GRD</GUARD_NODE_NAME>
<GUARD_CODE>90135 (&gt;L:CEVENT)</GUARD_CODE>
<BUTTON_NODE_NAME>MD11_OVHD_ELEC_CAB_BUS_BT</BUTTON_NODE_NAME>
<BUTTON_CODE_PRESS>90133 (&gt;L:CEVENT)</BUTTON_CODE_PRESS>
<BUTTON_CODE_RELEASE />
</UseTemplate>
<UseTemplate Name="MD11_Button_Guarded">
<GUARD_NODE_NAME>MD11_OVHD_ELEC_BATT_GRD</GUARD_NODE_NAME>

View File

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_PED">
<!-- DOOR LOCK START -->
<UseTemplate Name="MD11_Finite_Knob">

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Template Name="MD11_THR">
</Template>
</ModelBehaviors>