PROTO ButtonAppearance [ exposedField SFVec2f position 0 0 exposedField SFNode type NULL exposedField SFNode symbol NULL eventOut SFBool isActive ] { Transform2D { translation IS position children [ TouchSensor { isActive IS isActive } Shape { appearance Appearance { material Material2D { # transparency 1.0 } } geometry IS type } Shape { appearance Appearance { material Material2D { } } geometry IS symbol } ] } } OrderedGroup { children [ Background2D { backColor 0 0 0 } WorldInfo { info ["Scripted by Zero1"] } DEF SwitchMenus Switch { whichChoice 0 choice [ OrderedGroup { children [ DEF MenuIntroAudio Switch { whichChoice 0 choice [ Sound2D { source DEF MenuIntroAudio1 AudioClip { url [ "od:20" ] loop FALSE } } Sound2D { source DEF EpisodeMenuAudio AudioClip { url [ "od:80" ] startTime -1 loop TRUE } } ] } DEF MenuIntroVideo Switch { whichChoice 0 choice [ Shape { appearance Appearance { texture DEF MenuIntroVideo1 MovieTexture { url [ "od:10" ] loop FALSE } } geometry Bitmap { } } Shape { appearance Appearance { texture DEF EpisodeMenuVideo MovieTexture { url [ "od:40" ] startTime -1 loop TRUE } } geometry Bitmap { } } ] } ] } OrderedGroup { children [ OrderedGroup { children [ Shape { appearance Appearance { texture DEF Ep37Video MovieTexture { url [ "od:50" ] startTime -1 } } geometry Bitmap { } } ] } DEF SwitchMovieAudio Switch { whichChoice 0 choice [ Sound2D { source DEF Ep37Audio1 AudioSource { url [ "od:60" ] startTime -1 } } ] } ] } ] } DEF SwitchButtons Switch { whichChoice 0 choice [ # MainMenuButtons - 0 OrderedGroup { children [ DEF PlayButton ButtonAppearance { position 108 151 type Rectangle { size 224 26 } } DEF LanguagesButton3 ButtonAppearance { position 122 110 type Rectangle { size 252 40 } } DEF LanguagesButton2 ButtonAppearance { position 112 67 type Rectangle { size 232 26 } } DEF LanguagesButton ButtonAppearance { position 115 7 type Rectangle { size 170 26 } } DEF LanguagesButton4 ButtonAppearance { position 142 -40 type Rectangle { size 224 40 } } DEF LanguagesButton5 ButtonAppearance { position 130 -82 type Rectangle { size 200 26 } } ] } # LanguageButtons - 1 OrderedGroup { children [ DEF Audio1Button ButtonAppearance { position 129 97 type Rectangle { size 205 15 } } DEF Audio2Button ButtonAppearance { position 129.0 77.0 type Rectangle { size 205.0 15.0 } } DEF LangToMainMenuButton ButtonAppearance { position -200 -110 type Rectangle { size 40 40 } } ] } ] } DEF ShowMainMenu Conditional { buffer { REPLACE MenuIntroVideo.whichChoice BY 0 REPLACE MenuIntroAudio.whichChoice BY 0 REPLACE SwitchButtons.whichChoice BY 0 REPLACE MainMenuVideo.startTime BY 0 REPLACE MainMenuAudio.startTime BY 0 REPLACE MainMenuVideo.loop BY TRUE REPLACE MainMenuAudio.loop BY TRUE REPLACE LangMenuVideo.stopTime BY -1 REPLACE LangMenuAudio.stopTime BY -1 REPLACE LangMenuVideo.loop BY FALSE REPLACE LangMenuAudio.loop BY FALSE } } DEF ShowLanguageMenu Conditional { buffer { REPLACE SwitchMenus.whichChoice BY 0 REPLACE SwitchMenuVideo.whichChoice BY 1 REPLACE SwitchMenuAudio.whichChoice BY 1 REPLACE SwitchButtons.whichChoice BY 1 REPLACE LangMenuVideo.startTime BY 0 REPLACE LangMenuAudio.startTime BY 0 REPLACE LangMenuVideo.loop BY TRUE REPLACE LangMenuAudio.loop BY TRUE REPLACE MainMenuVideo.stopTime BY -1 REPLACE MainMenuAudio.stopTime BY -1 REPLACE MainMenuVideo.loop BY FALSE REPLACE MainMenuAudio.loop BY FALSE } } DEF PlayAudio1 Conditional { buffer { REPLACE SwitchMovieAudio.whichChoice BY 0 } } DEF PlayAudio2 Conditional { buffer { REPLACE SwitchMovieAudio.whichChoice BY 1 } } DEF StartMovie Conditional { buffer { REPLACE SwitchButtons.whichChoice BY -1 REPLACE SwitchMenus.whichChoice BY 1 REPLACE MovieVideo.startTime BY 0 REPLACE MovieAudio1.startTime BY 0 REPLACE MovieAudio2.startTime BY 0 REPLACE MainMenuVideo.stopTime BY -1 REPLACE MainMenuAudio.stopTime BY -1 REPLACE MainMenuVideo.loop BY FALSE REPLACE MainMenuAudio.loop BY FALSE REPLACE LangMenuVideo.stopTime BY -1 REPLACE LangMenuAudio.stopTime BY -1 REPLACE LangMenuVideo.loop BY FALSE REPLACE LangMenuAudio.loop BY FALSE } } ] } ROUTE LanguagesButton.isActive TO ShowLanguageMenu.activate ROUTE LangToMainMenuButton.isActive TO ShowMainMenu.activate ROUTE Audio1Button.isActive TO PlayAudio1.activate ROUTE Audio2Button.isActive TO PlayAudio2.activate ROUTE PlayButton.isActive TO StartMovie.activate InitialObjectDescriptor { objectDescriptorID 1 ODProfileLevelIndication 254 sceneProfileLevelIndication 254 audioProfileLevelIndication 254 visualProfileLevelIndication 254 graphicsProfileLevelIndication 254 includeInlineProfileLevelFlag false esdescr [ ES_Descriptor { ES_ID 8 decConfigDescr DecoderConfigDescriptor { streamType 3 decSpecificInfo BIFSConfig { isCommandStream true pixelMetrics true pixelWidth 640 pixelHeight 480 } } } ES_Descriptor { ES_ID 9 decConfigDescr DecoderConfigDescriptor { streamType 1 } } ] } AT 0 { UPDATE OD [ ObjectDescriptor { objectDescriptorID 10 esDescr [ ES_Descriptor { ES_ID 1 OCR_ES_ID 1 muxInfo MuxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\menuintro.mp4#1" } } ] } ObjectDescriptor { objectDescriptorID 20 esDescr [ ES_Descriptor { ES_ID 2 OCR_ES_ID 1 muxInfo MuxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\menuintroaudio.mp4#1" } } ] } ObjectDescriptor { objectDescriptorID 30 esDescr [ ES_Descriptor { ES_ID 3 OCR_ES_ID 2 muxInfo MuxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\menumain.mp4#1" } } ] } ObjectDescriptor { objectDescriptorID 40 esDescr [ ES_Descriptor { ES_ID 4 OCR_ES_ID 3 muxInfo MuxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\epmenu.mp4#1" } } ] } ObjectDescriptor { objectDescriptorID 50 esdescr [ ES_Descriptor { ES_ID 5 OCR_ES_ID 5 muxInfo muxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\gx.mp4#1" } } ] } ObjectDescriptor { objectDescriptorID 60 esDescr [ ES_Descriptor { ES_ID 6 OCR_ES_ID 6 muxInfo MuxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\gx.mp4#2" } } ] } ObjectDescriptor { objectDescriptorID 80 esdescr [ ES_Descriptor { ES_ID 10 OCR_ES_ID 3 muxInfo muxInfo { fileName "C:\Documents and Settings\Michael\Desktop\menu\proj files\Resolution.aac" } } ] } ] # end UPDATE OD }