сразу скажу, что я недавно начал изучать классы, и столкнулся с проблемой.
вот код:

Код AS1/AS2:
package {
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class GUNS extends MovieClip {
public function GUNS()
{
this.addEventListener(MouseEvent.MOUSE_DOWN, mDown);
this.addEventListener(MouseEvent.MOUSE_UP, mUp);
}
public function mDown(e:MouseEvent):void
{
this.startDrag(true);
}
public function mUp(e:MouseEvent):void
{
this.stopDrag();
}
}
}
в этом коде я пытаюсь сделать так, чтоб объект, по зажиманию мыши следовал за ней, а по отпусканию мыши, объект остался в последних координатах, но при отпускании мыши объект все равно движется за мышкой.
мне посоветовали к mouse up дописать свойство stage, я дописал вот так:

Код AS3:
stage.addEventListener(MouseEvent.MOUSE_UP, mUp);
но выдает ошибку -
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at GUNS()
at Символ16()
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at flash.display::MovieClip()
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at flash.display::MovieClip()
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at flash.display::MovieClip()
at shop_and_battle_fla::MainTimeline()
помогите реализовать мою идею.