Как изменить направления спрайта, добавленного в View AndEngine? - PullRequest
1 голос
/ 04 ноября 2011

Я использую AndEngine.

У меня есть метод, который добавляет цели в скрену.

Вот мой метод ..

public void addTarget(){
    /*
     * We are determining the minimum and maximum y position for the targets to appear at then
     * use the Random() class to generate a random number so the value of y is
     * still on the screen while the x value replaces the sprite just before the right side or the screen.
     * 
     */
    Random rand = new Random();

    int x = (int) mCamera.getWidth() + mTargetTextureRegion.getWidth();
    int minY = mTargetTextureRegion.getHeight();
    int maxY = (int)(mCamera.getHeight() - mTargetTextureRegion.getHeight());
    int rangeY = maxY - minY;
    int y = rand.nextInt(rangeY) + minY;

    Sprite target = new Sprite(x,y,mTargetTextureRegion.clone());
    SceneMainScene.attachChild(target);

    int minDuration = 2;
    int maxDuration = 4;

    int rangeDuration = maxDuration - minDuration;
    int actualDuration = rand.nextInt(rangeDuration) + minDuration;

    MoveXModifier mod = new MoveXModifier(actualDuration, target.getX(), - target.getWidth());

    target.registerEntityModifier(mod);
    TargetsToBeAdded.add(target);

Он работает нормально.Единственная проблема, с которой я сталкиваюсь, состоит в том, что цели появляются на экране слева направо. Я хотел бы изменить это так, чтобы цели отображались сверху вниз?

Я не могу понять в своем коде, чтомне нужно изменить, чтобы сделать это?Есть предложения?

1 Ответ

3 голосов
/ 04 ноября 2011

Вы используете

MoveXModifier mod = new MoveXModifier(actualDuration, target.getX(), - target.getWidth());

, попробуйте использовать

MoveYModifier mod = new MoveYModifier(actualDuration, target.getY(), - target.getHeight());

В AndEngine (0,0) верхний левый угол, увеличение X направо и увеличение Yспускаясь

...