private void canvas_Paint(object sender, PaintEventArgs e) { Graphics draw = e.Graphics; if (!Settings.IsGameOver) { //Draw snake's body for (int i = 0; i < Snake.Count; i++) { //TODO: Add image implementation or different rendering methods Brush SnakeColour; bool random = false; if (i == 0) { SnakeColour = headColor; //For snake head } else { SnakeColour = bodyColor; //For rest of snake's body } //For drawing the snake if (snakeShape == "circle") { draw.FillEllipse(SnakeColour, new Rectangle(Snake[i].X * Settings.Width, Snake[i].Y * Settings.Height, Settings.Width, Settings.Height)); } else if (snakeShape == "square") { draw.FillRectangle(SnakeColour, new Rectangle(Snake[i].X * Settings.Width, Snake[i].Y * Settings.Height, Settings.Width, Settings.Height)); } //TODO: Give the food better design //For drawing the food if (foodShape == "circle") { draw.FillEllipse(foodColor, new Rectangle(food.X * Settings.Width, food.Y * Settings.Height, Settings.Width, Settings.Height)); } else if (foodShape == "square") { draw.FillRectangle(foodColor, new Rectangle(food.X * Settings.Width, food.Y * Settings.Height, Settings.Width, Settings.Height)); } //draw powerup draw.FillRectangle(Brushes.Gold, new Rectangle(powerup.X * Settings.Width, powerup.Y * Settings.Height, Settings.Width, Settings.Height)); } } else { string message; if (Highscore.SetHighScore(Settings.player1Name, Settings.Score) == true) { message = "Reached High Score !!\nYour Score is: " + Settings.Score + "\n\nPress ENTER Key to try again"; } else { message = deathCause + "\n\nYour Score is: " + Settings.Score + "\n\nPress ENTER to try again"; } status_l.Text = message; status_l.Visible = true; } }