var shipImage, bulletImage, particleImage;
bulletImage = loadImage('asteroids_bullet.png');
shipImage = loadImage('asteroids_ship0001.png');
particleImage = loadImage('asteroids_particle.png');
ship = createSprite(width / 2, height / 2);
ship.setCollider('circle', 0, 0, 20);
ship.addImage('normal', shipImage);
ship.addAnimation('thrust', 'asteroids_ship0002.png', 'asteroids_ship0007.png');
for (var i = 0; i < 8; i++) {
var px = width / 2 + 1000 * cos(radians(ang));
var py = height / 2 + 1000 * sin(radians(ang));
createAsteroid(3, px, py);
for (var i = 0; i < allSprites.length; i++) {
if (s.position.x < -MARGIN) s.position.x = width + MARGIN;
if (s.position.x > width + MARGIN) s.position.x = -MARGIN;
if (s.position.y < -MARGIN) s.position.y = height + MARGIN;
if (s.position.y > height + MARGIN) s.position.y = -MARGIN;
asteroids.overlap(bullets, asteroidHit);
ship.addSpeed(0.2, ship.rotation);
ship.changeAnimation("thrust");
ship.changeAnimation("normal");
var bullet = createSprite(ship.position.x, ship.position.y);
bullet.addImage(bulletImage);
bullet.setSpeed(10 + ship.getSpeed(), ship.rotation);
function createAsteroid(type, x, y) {
var a = createSprite(x, y);
var img = loadImage('asteroid' + floor(random(0, 3)) + '.png');
a.setSpeed(2.5 - (type / 2), random(360));
a.setCollider('circle', 0, 0, 50);
function asteroidHit(asteroid, bullet) {
var newType = asteroid.type - 1;
createAsteroid(newType, asteroid.position.x, asteroid.position.y);
createAsteroid(newType, asteroid.position.x, asteroid.position.y);
for (var i = 0; i < 10; i++) {
var p = createSprite(bullet.position.x, bullet.position.y);
p.addImage(particleImage);
p.setSpeed(random(3, 5), random(360));