У меня возникли проблемы с одновременным удалением прослушивателя событий и спрайта. В настоящее время я получаю сообщение об ошибке:
TypeError: Ошибка № 1009: невозможно получить доступ к свойству или методу нулевой ссылки на объект.
И если я закомментирую removeChild, у меня нет ошибки, но, очевидно, спрайт остается на экране. Любые идеи, как я могу избавиться от этой ошибки?
//Bullet extends Sprite Class
bullet:Bullet = new Bullet();
mc.addChild(bullet);
bullet.addEventListener(Event.ENTER_FRAME, shoot);
function shoot(e:Event):void {
var shot:Bullet = e.currentTarget as Bullet;
//check shot is outside the frame
if (shot.x < 0 - shot.width || shot.x > stage.stageWidth || shot.y > 525)
{
//trying to remove the thing and it's listener
e.currentTarget.removeEventListener(e.type,arguments.callee);
e.currentTarget.parent.removeChild(shot);
}
else
{
shot.setInMotion();
}
}