private void KeyIsDown(object sender, KeyEventArgs e) { // Make flappy go up; key is pressed if (e.KeyCode == Keys.Space) { if (DefaultTimer.Enabled == false && Score.Visible == true && ResumeBtn.Visible == false) { DefaultTimer.Start(); } gravity = -5; } // Pause menu if (e.KeyCode == Keys.Escape && DefaultTimer.Enabled == true) { DefaultTimer.Stop(); ResumeBtn.Visible = true; ResumeBtn.Enabled = true; Paused.Visible = true; } // Prevent windows sounds when clicking buttons e.SuppressKeyPress = true; }
public void start_and_callback() { var reset = new ManualResetEvent(false); var timer = new DefaultTimer(); int i = 0; timer.Start(() => { i++; reset.Set(); timer.Stop(); }, 500); reset.WaitOne(1000); i.ShouldBe(1); // Should only fire once because timer.Stop was called reset.Reset(); reset.WaitOne(1000); i.ShouldBe(1); timer.Dispose(); }
private void EndGame() { DefaultTimer.Stop(); // Add the score to the total score endCount += scoreCount; // Default display upon death Score.Visible = false; RetryBtn.Visible = true; RetryBtn.Enabled = true; RetryBtn.Text = "Retry"; // Logic behind the highscores and lives upon death if (lives > 0) { GameOver.Visible = true; GameOver.Text = $"{lives} lives left!"; if (lives == 2) { GameOver.ForeColor = Color.Green; } if (lives == 1) { GameOver.ForeColor = Color.Orange; } } else { using SqliteContext lite = new SqliteContext(); var lowestScore = lite.Highscores.OrderByDescending(x => x.Score).Select(z => z.Score).LastOrDefault(); if (endCount > lowestScore || lowestScore.ToString() == null || lite.Highscores.Count() <= 10) { NewHighscore.Visible = true; HighscoreName.Visible = true; RetryBtn.Visible = true; RetryBtn.Enabled = true; RetryBtn.Text = "Submit"; } else { RetryBtn.Text = "Menu"; GameOver.Visible = true; GameOver.Text = "GAME OVER!"; GameOver.ForeColor = Color.Red; } EndScore.Visible = true; EndScore.Text = "Total Score: " + endCount; } }
public void polls() { var reset = new ManualResetEvent(false); var timer = new DefaultTimer(); int i = 0; timer.Start(() => { i++; if (i == 5) { reset.Set(); timer.Stop(); } }, 100); reset.WaitOne(); i.ShouldBe(5); timer.Dispose(); }