<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Here's another attempt: It works mostly, but Adapter fraction doesn't reset anymore. Still doesn't get rid of scripts.<div> <ProtoDeclare name="MenuItem"><br> <ProtoInterface><br> <field name="translation" accessType="inputOutput" type="SFVec3f" /><br> <field name="textTranslation" accessType="inputOutput" type="SFVec3f" /><br> <field name="description" accessType="inputOutput" type="SFString" /><br> <field name="menuItemString" accessType="inputOutput" type="MFString" /><br> <field name="startTime" accessType="inputOutput" type="SFTime" /><br> <field name="stopTime" accessType="inputOutput" type="SFTime" /><br> <field name="enabled" accessType="inputOutput" type="SFBool" /><br> <field name="size" accessType="initializeOnly" type="SFVec2f" value="40.0 3.0" /><br> <field name="fontSize" accessType="inputOutput" type="SFFloat" value="2.4" /><br> <field name="spacing" accessType="initializeOnly" type="SFFloat" value="1.2" /><br> </ProtoInterface><br> <ProtoBody><br> <Group><br> <TimeSensor DEF="standin_clock" cycleInterval="0.99" loop="true" enabled="true"><br> <IS><br> <connect nodeField="startTime" protoField="startTime" /><br> <connect nodeField="stopTime" protoField="stopTime" /><br> <connect nodeField="enabled" protoField="enabled" /><br> </IS><br> </TimeSensor><br> <Transform><br> <IS><br> <connect nodeField="translation" protoField="translation" /><br> </IS><br> <TouchSensor DEF="StartStopAnimationUnit_Sensor"><br> <IS><br> <connect nodeField="description" protoField="description" /><br> </IS><br> </TouchSensor><br> <Transform translation="0 0 0"><br> <IS><br> <connect nodeField="translation" protoField="textTranslation" /><br> </IS><br> <Shape><br> <Appearance><br> <Material diffuseColor="1 1 1" /><br> </Appearance><br> <Text><br> <IS><br> <connect nodeField="string" protoField="menuItemString" /><br> </IS><br> <FontStyle justify=""MIDDLE" "MIDDLE""><br> <IS><br> <connect nodeField="size" protoField="fontSize" /><br> <connect nodeField="spacing" protoField="spacing" /><br> </IS><br> </FontStyle><br> </Text><br> </Shape><br> </Transform><br> <Transform translation="0 0 -0.01"><br> <Shape><br> <Appearance><br> <Material DEF="MenuBackground_Material" diffuseColor="0 0 1" /><br> </Appearance><br> <Rectangle2D size="40.0 3.0"><br> <IS><br> <connect nodeField="size" protoField="size" /><br> </IS><br> </Rectangle2D><br> </Shape><br> </Transform><br> </Transform><br> <Script DEF="ScriptToggle"><br> <field name="inTime" type="SFTime" accessType="inputOnly" /><br> <field name="diffuseColor" type="SFColor" accessType="inputOutput" value="0 0 1" /><br> <field name="checked" type="SFBool" accessType="inputOutput" value="false" /><br> <field name="startTime" accessType="inputOutput" type="SFTime" /><br> <field name="stopTime" accessType="inputOutput" type="SFTime" /><![CDATA[<br> ecmascript:<br> function inTime(value, tm) {<br> if (value) {<br> checked = !checked;<br> }<br> Browser.print("in", checked, diffuseColor.g, diffuseColor.b);<br> if (checked) {<br> startTime = tm;<br> diffuseColor.g = 1;<br> diffuseColor.b = 0;<br> } else {<br> stopTime = tm;<br> diffuseColor.g = 0;<br> diffuseColor.b = 1;<br> }<br> }<br> <br> ]]></Script><br> <b> <ROUTE fromNode="StartStopAnimationUnit_Sensor" fromField="touchTime" toNode="ScriptToggle" toField="inTime" /><br> <ROUTE fromNode="ScriptToggle" fromField="startTime" toNode="standin_clock" toField="startTime" /><br> <ROUTE fromNode="ScriptToggle" fromField="stopTime" toNode="standin_clock" toField="stopTime" /><br> <ROUTE fromNode="ScriptToggle" fromField="checked" toNode="standin_clock" toField="enabled" /></b><br> <ROUTE fromNode="MenuBackground_Material" fromField="diffuseColor" toNode="ScriptToggle" toField="diffuseColor" /><br> <ROUTE fromNode="ScriptToggle" fromField="diffuseColor" toNode="MenuBackground_Material" toField="diffuseColor" /><br> </Group><br> </ProtoBody><br> </ProtoDeclare><br><ProtoInstance DEF="AUJinBlink" name="MenuItem"><br><fieldValue name="translation" value="24 63.4 0" /><br><fieldValue name="textTranslation" value="0 0 0" /><br><fieldValue name="description" value="Jin Blink" /><br><fieldValue name="menuItemString" value=""JinBlink"" /><br><fieldValue name="size" value="40.0 3.0" /><br><fieldValue name="fontSize" value="2.4" /><br><fieldValue name="spacing" value="1.2" /><br><fieldValue name="startTime" /><br><fieldValue name="stopTime" /><br><fieldValue name="enabled" /><br></ProtoInstance><br><ROUTE fromNode="JinBlink_Clock" fromField="fraction_changed" toNode="AnimationAdapter_JinBlink" toField="set_fraction" /><br><ROUTE fromNode="AUJinBlink" fromField="startTime" toNode="JinBlink_Clock" toField="startTime" /><br><ROUTE fromNode="AUJinBlink" fromField="stopTime" toNode="JinBlink_Clock" toField="stopTime" /><br><ROUTE fromNode="AUJinBlink" fromField="enabled" toNode="JinBlink_Clock" toField="enabled" /><br><ProtoInstance DEF="AUJinBrowLowerer" name="MenuItem"><br><fieldValue name="translation" value="24 60.4 0" /><br><fieldValue name="textTranslation" value="0 0 0" /><br><fieldValue name="description" value="Jin Brow Lowerer" /><br><fieldValue name="menuItemString" value=""JinBrowLowerer"" /><br><fieldValue name="size" value="40.0 3.0" /><br><fieldValue name="fontSize" value="2.4" /><br><fieldValue name="spacing" value="1.2" /><br><fieldValue name="startTime" /><br><fieldValue name="stopTime" /><br><fieldValue name="enabled" /><br></ProtoInstance><br></div></div>
</div>
</div>
</div>