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 回答