- ship is an actor
- ship missiles are actors
- asteroids are actors
- when actor goes past viewport boundary, actor will come back through inverse viewport location
- example:
- viewport boundary is 600x600
- actor exits boundary at location 0x455
- actor will reenter viewport with same trajectory and velocity at inverse of viewport boundary exit
- actor reenters viewport at boundary location 600x145
- example:
- Level.animate(step, keys) is a method that takes a time increment (step), the keys pressed for that step, and animates the Level actors
- CanvasDisplay displays the default stuff that doesn't have to be handled by Level (borders, background, etc)
- CanvasDisplay displays Level, including Level actors
- increments animationTime with time since last frame
- clears canvas
- draws background
- interacts with Level:
- passes animationTime increment to Level
- receives new game state from Level
- animates new game state onto canvas