private async void PlayMovie(Stream file) { curTexture = null; player = new FLCPlayer(MainGame.Device); player.OnFrameUpdated += player_OnFrameUpdated; player.OnPlaybackFinished += player_OnPlaybackFinished; player.Open(file); player.ShouldLoop = false; player.Play(); }
async void storyboard_OnStageSwitched(IntroStage newStage) { switch (newStage) { case IntroStage.Castle: player.Open(await GetMovieFile("HINTRO1.WAR")); player.PauseAfterFirstFrame = true; player.ShouldLoop = false; break; case IntroStage.CastleLoop: player.Open(await GetMovieFile("HINTRO2.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = true; break; case IntroStage.Swamp: player.Open(await GetMovieFile("OINTRO1.WAR")); player.PauseAfterFirstFrame = true; player.ShouldLoop = false; break; case IntroStage.SwampLoop: player.Open(await GetMovieFile("OINTRO2.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = true; break; case IntroStage.SwampFortressEnter: player.Open(await GetMovieFile("OINTRO3.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = false; break; case IntroStage.CaveEnter: player.Open(await GetMovieFile("CAVE1.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = false; break; case IntroStage.CaveLoop: player.Open(await GetMovieFile("CAVE2.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = true; break; case IntroStage.CaveExit: player.Open(await GetMovieFile("CAVE3.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = false; break; case IntroStage.BlizzardLogo: player.Open(await GetMovieFile("TITLE.WAR")); player.PauseAfterFirstFrame = false; player.ShouldLoop = false; break; } player.Play(); }