private static async Task ScreenCrack() { await Task.Delay(1400); await UiThreadHelper.RunAsync(CoreDispatcherPriority.High, () => { MainPage.ScreenEffectRef.Visibility = Visibility.Visible; }); await Task.Delay(300); throw new InternalBufferOverflowException("Failed to handle explosion"); }
private static async Task IgnitionStart(MediaElement mediaElement) { MainPage.BulbOn = false; await ExplodeSoundAsync(mediaElement); //Lock the UI. MainPage.Lock = true; await UiThreadHelper.RunAsync(CoreDispatcherPriority.High, () => { MainPage.BuldEffectRef.Visibility = Visibility.Collapsed; MainPage.BuldRef.Source = new BitmapImage(new Uri(MainPage.BaseUri, @"/Assets/bulboff.png")); }); await Task.Delay(10); await Explosion(); }
internal static async Task GasLeak() { MediaElement mediaElement = null; var tuple = await LoadStreamAsync(); await UiThreadHelper.RunAsync(CoreDispatcherPriority.High, () => { mediaElement = new MediaElement(); mediaElement.AutoPlay = false; mediaElement.SetSource(tuple.Item1, tuple.Item2); }); await Task.Delay(3000); while (!MainPage.BulbOn) { await Task.Delay(10); } await IgnitionStart(mediaElement); }
internal static async Task ExplodeSoundAsync(MediaElement mysong) { await UiThreadHelper.RunAsync(CoreDispatcherPriority.Normal, () => mysong.Play()); }