Workshop › OutRun-style Racer › Step 29 of 44

Other cars

What we are doing

Other cars share the road. Each is an object: its distance along the track z, its place across the road x (like playerX) and its own speed, slower than your top speed. reset places twelve of them evenly along the track. Nothing is drawn yet.

```js
let cars

  cars = []
  for (let i = 0; i < 12; i++) {
    cars.push({ z: (i + 1) * (trackLength / 12), x: Math.random() * 1.2 - 0.6, speed: 40 + Math.random() * 30 })
  }
```

What it means

Your turn

  1. Under let speed write let cars.
  2. In reset, under speed = 0, write the four lines that build the cars.

Skills: Arrays and objects, Game states

All steps

  1. Sky and ground
  2. Draw again and again
  3. Perspective
  4. One piece of road
  5. A road made of segments
  6. Where we are on the track
  7. The road ahead
  8. Stripes
  9. Paint from far to near
  10. Kerbs and a center line
  11. Striped grass
  12. Moving is one number
  13. Which keys are down?
  14. The gas pedal
  15. Brake, coast and a top speed
  16. Your car
  17. Speedometer
  18. A pedal for phones
  19. Move the camera sideways
  20. Steering
  21. No turning on the spot
  22. The grass is slow
  23. Steering by touch
  24. A track with curves
  25. Bend the road
  26. No jumps in the curve
  27. Which segment am I on?
  28. Curves pull you outwards
  29. Other cars
  30. Distance on a loop
  31. Cars that shrink with distance
  32. Traffic moves
  33. Rear-end crash
  34. Counting laps
  35. Show the lap
  36. A lap timer
  37. Show the time
  38. Best lap
  39. Show the best lap
  40. Racing or finished
  41. The finish line
  42. Finished!
  43. Race again
  44. Build it yourself: beat the clock