Препятствие не будет двигаться - PullRequest
0 голосов
/ 19 января 2012

Я не могу понять, почему элементы в моем массиве не будут перемещаться вниз по сцене вдоль оси y, я хочу, чтобы они появлялись случайным образом по оси x.Вот мой код:

import flash.display.MovieClip;
import flash.events.Event;
import fl.transitions.Tween;
import fl.transitions.easing.*;

public class obstacleOne extends MovieClip {
    private var speed:Number;
    private var obstacleOneTypes:Array = ["obstacle1","obstacle2"];
    private var thisObstacleOneType:String;

    public function obstacleOne() {
        // constructor code
        // pick a random number between 1 and the amount of types of litter
        var randomNumber:uint = Math.ceil(Math.random() * obstacleOneTypes.length);
        thisObstacleOneType = obstacleOneTypes[randomNumber - 1];
        this.gotoAndStop(randomNumber);
        this.x = Math.ceil(Math.random() * 400);
        this.y =0 - Math.random()*400;
        speed = 4 + (Math.random()*4)
        addEventListener(Event.ENTER_FRAME,updateMe);
    }

    public function caught():void{
        // in this function are going to animate the litter removing from the screen using a tween equation
        // when it is finished we can remove the object
        // now place in a random position on the beach
        this.x = Math.ceil(Math.random() * stage.stageWidth);
        this.y =0 - Math.random()*2000;
    }

    private function updateMe(evt:Event):void{
        this.y += speed;
        if(y>stage.stageHeight){
            this.y = 7;
            // send an event to main class to subtract score
            //stage.dispatchEvent(new Event("hitBottom",true));
        }//*/
    }

1 Ответ

0 голосов
/ 19 января 2012

Это работает для меня. Я помещаю класс в пакет с именем "ch" и затем в основной временной шкале:

import ch.obstacleOne;

stage.addChild(new obstacleOne());
stage.addChild(new obstacleOne());
stage.addChild(new obstacleOne());
stage.addChild(new obstacleOne());

Класс как и прежде:

package ch{

import flash.display.MovieClip;
import flash.events.Event;
import fl.transitions.Tween;
import fl.transitions.easing.*;

public class obstacleOne extends MovieClip {
....

Затем вам нужно подключить мувиклип в библиотеке к вашему классу (извините, графический интерфейс на немецком языке):

Screenshot

Тогда должно сработать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...