Asteroids

From WLCS
Revision as of 10:33, 30 May 2013 by Admin (talk | contribs)

Objectives

  • You will create a game that mimics gameplay of Asteroids
  • The player will be able to move around using the keyboard
  • The player's ship will be affected by momentum and physics
  • The player will be able to fire at asteroids and break them apart
  • The player will be able to aim using the mouse
  • Points will be given to the player for destroying asteroids

Requirements

Ship Movement

  • The ship should always point towards the mouse
  • Pressing the W-key will accelerate the ship and go forwards
    1. Create a speed variable and set it to 0
    2. If the W-key is pressed, then increase speed by a little bit (e.g. 0.5)
    3. Else, if speed is greater than 0, then decrease speed by a little bit (e.g. -0.5)
    4. Move the ship speed steps
  • Pressing the S-key will decelerate the ship and go backwards
    • Follow the same steps as the W-key, but reverse/negate everything

Firing Projectiles

  • Pressing the mouse down will fire a projectile (use clones)
    • The projectile should disappear when it hits the edge of the screen
    • If the mouse is held down, a projectiles (clones) should be fired every 0.5 second
  • A laser/firing sound should be played when a projectile is fired

Asteroids

  • Multiple asteroids should appear on the screen doing the following:
  1. Make an asteroid appear at a random edge of the screen
    1. Pick a random number between 1-4 (each number corresponds to a side)
    2. Use if-statements to check for each number 1 through 4,
      1. Tell the asteroid to appear at a random place along that side (will be different for each side)
      2. Give it a random direction (depends on the side the asteroid is located)
  2. Have the asteroid move across the screen
  3. The asteroid should disappear when it hits another edge

Asteroid Collisions

  • If asteroids collide with the ship, then it's game over
    • Play a sound for the collision
  • If projectiles hit the asteroids, then the asteroid should explode and points given to the player
    • Play a sound for the explosion

Aesthetics

  • Use a basic star field for the background
  • Find simple background music to use -- something appropriate for the theme of the game

Advanced Requirements

  • Other flying objects on the screen give different point values
  • Large asteroids that explode break apart into smaller asteroids and the smaller ones can be fire upon for points
  • Use a cloud variable for the high score