0
package  {
    import flash.display.MovieClip
    import flash.events.Event
    public dynamic class dude extends MovieClip{
        try
            {
        //public var _dude:dude;
        public const TYNGDE:Number = 2;

        private var _vx:Number = 0;
        private var _vy:Number = 0;
        public var _dude:dude;


        public function Test():void {
            try
            {
            _dude.x = 100;
            _dude.y = 100;
            }
            catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }

            addEventListener(Event.ENTER_FRAME, nyskjerm);
        }

        private function nyskjerm(e:Event):void{
            _vy += TYNGDE;
            try
            {
                _dude.x += _vx;
                _dude.y += _vy;
            }
            catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }


            SjekkBrett();
        }

        private function SjekkBrett():void{
            if (_dude.x < 0 && _vx < 0){
                _dude.x = 0;
                _vx *= -1;
            }
            else if ((_dude.x+100) > stage.stageWidth && _vx > 0){
                _dude.x = stage.stageWidth - 100;
                _vx *= -1;
            }
            else if (_dude.y <0 && _vy <0){
                _dude.y = 0;
                _vy *= -1;
            }
            else if ((_dude.y+200) > stage.stageHeight && _vy > 0){
                _dude.y = stage.stageHeight - 200;
                _vy *= -0.8;
            }
        }

    }
    catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }

}}

クラスにステージと同じ名前を付けてみました。私は男をインスタンス化せずに直接アクセスしようとしましたが、これも機能しません。エラーは、障害が1行目で発生していることを示していますが、それは私にはあまり意味がありません。ヘルプ?

4

1 に答える 1

0

あなたはあなたの男クラス内で男のオブジェクトを宣言しています - 私はそれがあなたが望むものではないと思いますか?

「_dude.x = 100;」を設定すると、_dude はインスタンス化されていない (つまり、null である) ため、プロパティを設定できず、エラーが発生します。

要件が正しい場合は、コード内の「_dude」を「this」に置き換え、「public var _dude:dude;」を削除してください。完全に。

そして、user1875642 が言うように; try/catch 宣言を削除します。

于 2013-02-16T15:15:00.427 に答える