Asteroids > Can't shoot the asteroid

Hello everybody,

I’m new to as3 but I really want to learn it. I wanted to make Asteroids but I have a problem with shooting the asteroids.

I’ve got two asteroids in the beginning of the game. If i shoot one of them(doesn’t matter wich one) i can’t shoot the other anymore. I really want to fix it but i can’t find the problem.

I hope anybody can help me, i will really appreciate it.

Timon Schneider

I think the problem is in here…

public function met2(e:Event):void
		{
			
			meteo.x += (randomx);
			meteo.y += (randomy+1);
			meteu.x -= (randomax);
			meteu.y += (randomay+1);
			
			if (meteo.meteoriet.hitTestObject(bull[x]))
			{
				bull[x].x = newx;
				bull[x].y = newy;
				removeChild(bull[x]);
				removeChild(meteo);
			}
			if (meteu.meteoriet.hitTestObject(bull[x]))
			{
				bull[x].x = newx;
				bull[x].y = newy;
				removeChild(bull[x]);
				removeChild(meteu);
			}		
		}
		
		
		

But maybe it is something else

package 
{
	import flash.display.*;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.KeyboardEvent;
	import flash.events.MouseEvent;
	import flash.events.*;
	import flash.geom.Point;
	import flash.text.*;
	import org.flashdevelop.utils.FlashConnect;
	import flash.text.TextField;
	
	public class Main extends Sprite 
	{
		public var nieuwauto:autoclass;
		public var meteo:mete;
		public var meteu:mete;
		public var meteo1:mete;
		public var radius:mete;
		public static var omg:bullet;
		
		public var angleradian:Number;
		private var angledegree:Number;
		public var bull:Array;
		public var met:Array;
		public var speed3:Number = 20;
		public var spex:Number = 0;
		public var spey:Number = 0;
		public var randomy:int = (Math.random() * 5);
		public var randomx:int = (Math.random() * 5);
		public var randomay:int = (Math.random() * 5);
		public var randomax:int = (Math.random() * 5);
		public var newx:Number;
		public var newy:Number;
		
		[Embed(source = 'ruimte.jpg')]
		private var Background:Class;
		private var Plaatje:Bitmap;
		
		public function Main():void 
		{
			Plaatje = (new Background) as Bitmap;
			addChild(Plaatje);
			Plaatje.x = -200;
			
			nieuwauto = new autoclass();
			addChild(nieuwauto);
			
			stage.addEventListener(MouseEvent.MOUSE_DOWN, klik);
			bull = new Array();
			
			meteo = new mete(400, -50);
			addChild(meteo);
			meteu = new mete(400, -50);
			addChild(meteu);
			
			stage.addEventListener(Event.ENTER_FRAME, meteor);
			stage.addEventListener(Event.ENTER_FRAME, met2);
			met = new Array();
		}
		
		public function klik(E:MouseEvent):void
		{
			spex = (Math.cos(this.angleradian) * speed3) / (bull.length);
			spey = (Math.sin(this.angleradian) * speed3) / (bull.length);
			
			omg = new bullet(nieuwauto.car2.x, nieuwauto.car2.y);
			omg.angleradian = Math.atan2(mouseY - nieuwauto.car2.y,mouseX -nieuwauto.car2.x);
			bull.push(omg);
			addChild(omg);
			omg.addEventListener(Event.ENTER_FRAME, enterframe);
			
			
		}
		
		public function met2(e:Event):void
		{
			
			meteo.x += (randomx);
			meteo.y += (randomy+1);
			meteu.x -= (randomax);
			meteu.y += (randomay+1);
			
			if (meteo.meteoriet.hitTestObject(bull[x]))
			{
				bull[x].x = newx;
				bull[x].y = newy;
				removeChild(bull[x]);
				removeChild(meteo);
			}
			if (meteu.meteoriet.hitTestObject(bull[x]))
			{
				bull[x].x = newx;
				bull[x].y = newy;
				removeChild(bull[x]);
				removeChild(meteu);
			}		
		}
		
		
		
		
		public function enterframe(e:Event):void
		{
			
			angleradian = Math.atan2(mouseY - nieuwauto.car2.y, mouseX - nieuwauto.car2.x-10);
			angledegree = angleradian * 180 / Math.PI;
			
			for (var x:int = 0; x < bull.length; x++ )
			{
				bull[x].x += (Math.cos(bull[x].angleradian) * speed3) / (bull.length);
				bull[x].y += (Math.sin(bull[x].angleradian) * speed3) / (bull.length);
			
				if (this.bull[x].x < -10 || bull[x].x > 810 || bull[x].y < -10 || bull[x].y> 800) 
				{
					removeEventListener(Event.ENTER_FRAME, enterframe);
				
				}
			}
		}
	
		
		public function meteor(e:Event):void
		{
			if (meteo.y > 700) { meteo.y = -50; }
			if (meteo.x > 450) { meteo.x = -450; }
			if (meteu.y > 700) { meteu.y = -50; }
			if (meteu.x < -450) { meteu.x = 450;}
		}	
	}
}