Здравствуйте, уважаемые форумчане, сегодня столкнулся с следующей проблемой: на сцене создается танк и турелька. По замыслу турель должна стрелять по танку и при попадании снаряд должен исчезать(делал через хитТестОбжект), но в итоге снаряд не исчезает, а в ошибках выводится Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
вот код класса турели

Код AS3:
package
{
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
//import Main;
public class gatlingGun extends MovieClip
{
//public var range:Sprite;
public var _X,_Y:Number;
private var delay = 10;
private var begin_rld = 11;
public var rng = 300;
public function gatlingGun(X:Number,Y:Number):void
{
this.x = X;
this.y = Y;
}
public function aim(b:MovieClip)
{
this.rotation = Math.atan2(b.y - this.y,b.x - this.x) / Math.PI * 180;
}
public function shoot(t:Boolean,mc:MovieClip)
{
if (begin_rld <= delay)
{
begin_rld++;
}
if ((begin_rld>delay)&&(t))
{
var b:bullet = new bullet(0,0,0);
this.barrel1.addChildAt(b,0);
var c:bullet = new bullet(0,0,0);
this.barrel2.addChildAt(c,0);
begin_rld = 0;
}
if (! t)
{
begin_rld++;
}
if (b.hitTestObject(mc))
{
b.kill();
}
if (b.hitTestObject(mc))
{
b.kill();
}
}
public function inrange(b:MovieClip):Boolean
{
var x0 = b.x,y0 = b.y;
var g=Math.sqrt(Math.pow((this.x-x0),2)+Math.pow((this.y-y0),2));
if (g < rng)
{
return true;
}
if (g > rng)
{
return false;
}
return false;
}
}
}
и класса снаряда

Код AS3:
package {
import flash.display.MovieClip;
import flash.events.Event;
public class bullet extends MovieClip {
var X1,Y1,A1:Number;
var speed;
var thisBul:MovieClip;
var thispar:*;
public function bullet(X:Number,Y:int,A:Number) {
this.x=X;
this.y=Y;
//trace(this.y);
this.rotation=A;
this.addEventListener(Event.ADDED,init);
}
function init(e:Event):void {
speed=50;
thispar= e.currentTarget.parent;
thisBul = MovieClip(this.parent.getChildByName(this.name));
addEventListener(Event.ENTER_FRAME, movb);
}
function movb(e:Event) {
A1= (this.rotation)/180*Math.PI;
this.x+=Math.cos(A1)*speed;
this.y+=Math.sin(A1)*speed;
if(this.x<0||this.x>stage.stageWidth||this.y<0||this.y>stage.stageHeight) kill();
}
public function kill() {
removeEventListener(Event.ENTER_FRAME, movb);
this.parent.removeChild(thisBul);
}
}
}
что я не правильно сделал?