Workshop › Snake › Step 25 of 28

Play again with Space

What we are doing

After game over, Space (or Enter) calls reset(). A line under "Game Over" tells the player how.

```js
if (gameOver && (event.key === ' ' || event.key === 'Enter')) {
  reset()
  return
}

  ctx.font = '16px sans-serif'
  ctx.fillText('Press Space to play again', canvas.width / 2, canvas.height / 2 + 32)
```

What it means

Your turn

  1. Make the Space check the first lines inside the listener.
  2. In the if (gameOver) block of draw, under the Game Over line, add the two lines.

Skills: Keyboard and mouse input

All steps

  1. Find the canvas
  2. Get the pen
  3. Paint the board
  4. Think in cells
  5. Keep the position in a variable
  6. A function that draws
  7. A function that moves
  8. The game loop
  9. Slow it down
  10. A direction to move in
  11. Steer with the arrow keys
  12. A body made of a list
  13. Move the whole body
  14. Pick a spot for the food
  15. Draw the food
  16. Eat and grow
  17. Never put food on the snake
  18. A table of turns
  19. No U-turns
  20. Crash into the walls
  21. Crash into yourself
  22. The game over message
  23. Show the score
  24. One function that starts a game
  25. Play again with Space
  26. Remember the best score
  27. Speed up as you grow
  28. Build it yourself: through the walls