#VRML V2.0 utf8 # # DYNAMIC MODEL PROTOS # PROTO god [ eventIn SFFloat set_clock eventOut SFBool enabled eventIn SFString state_changed field MFString behavior "" field SFNode from NULL field SFNode to NULL field SFNode fsm NULL ] {Transform { children [Group {} DEF S Script { eventIn SFFloat set_clock IS set_clock eventIn SFString state_changed IS state_changed field SFNode from IS from field SFNode to IS to field SFNode fsm IS fsm eventOut SFBool enabled IS enabled url IS behavior }]} } PROTO FSM [ field SFVec3f position 0 0 0 exposedField SFBool input FALSE eventIn SFString set_state field SFString start_state "" field MFNode states [] field MFNode transitions [] eventIn SFFloat set_clock ] { Transform { translation IS position children [ Group {children IS states} Group {children IS transitions} ] #children } #Transform DEF Fsm_Run Script { eventIn SFFloat set_clock IS set_clock eventIn SFString set_state IS set_state field SFString start_state IS start_state field SFString state "" field MFNode states IS states field MFNode transitions IS transitions url "javascript: function initialize() { state = start_state; } function set_clock(value,ts) { for(i=0;i