0

こんにちは、Flash CS3アクションスクリプトでゲームを作成しようとしていますが、13〜15行目で、名前空間内部の定義_bouncesとの競合が存在し、名前空間内部の定義_highscoreとの競合が存在し、との競合が存在するというエラーが発生し続けます。名前空間内部の定義_ball??? 助けてください

package
{
    import flash.display.MovieClip
    import flash.text.TextField
    import flash.events.Event
    import flash.events.MouseEvent

    public class DocumentMain extends MovieClip
    {
        public const Gravity:Number = 2;
        public const Bounce_Factor:Number = 0.8;

        public var _bounces:TextField;
        public var _highscore:TextField;
        public var _ball:Ball;

        public var _vx:Number;
        public var _vy:Number;


        public function DocumentMain():void
        {
            _vx = 0;
            _vy = 0;
            addEventListener(Event.ENTER_FRAME, enterFrameHandler);
            addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
        }

        private function enterFrameHandler(e:Event):void
        {
            //gravitate the ball
            _vy += Gravity;
            //move the ball
            _ball.x += _vx;
            _ball.y += _vy;
            //check stage boundaries for collision
            checkBoundaryCollision();
        }
        private function mouseDownHandler(e:MouseEvent):void
        {
            //Hit the ball if it has been clicked
        }

        private function checkBoundaryCollision():void
        {
            var left:Number;
            var right:Number;
            var bottom:Number;
            var Top:Number;
            left = _ball.x -(_ball.width / 2);
            right = _ball.x +(_ball.width / 2);
            bottom = _ball.y +(_ball.height / 2);
            top = _ball.y + (_ball.height / 2);

            if (left < 0 && _vx < 0)
            {
                _ball.x = _ball.width/2;
                _vx *= -1;
            }
            else if (right > stage.stageWidth && _vx > 0)
            {
                _ball.x = stage.stageWidth -(_ball.width /2);
                _vx *= -1;
            }
            if (top < 0 && _vy < 0)
            {
                _ball.y = _ball.height / 2;
                _vy *= -1;
                }
            else if (bottom > stage.stageHeight && _vy > 0)
            {
                _ball.y =stage.stageHeight -(_ball.height / 2);
                _vy *=Bounce_Factor;
            }

        }
    }
}
4

2 に答える 2

0

[高度なActionScript3.0設定]に移動します-CS5.5を使用していますが、[ファイル]->[公開設定]->[ActionScript設定]からCS3を使用していません(ただし、同じである必要があります)。[ステージインスタンスを自動的に宣言する]チェックボックスをオフにします(これがデフォルト設定です)

または、クラスでそれらを定義しないでください。

エラー1151と解決策の詳細な説明

于 2012-11-15T20:59:29.360 に答える
0

おそらく定義が重複しています。

例のように:

 var _bounces:TextField;
于 2015-07-13T12:29:23.030 に答える