Сделай действие актера MoveTo, чтобы не останавливаться на точке - PullRequest
0 голосов
/ 13 июня 2018

У меня есть код, где я перемещаю актера из точки А в точку Б, я не хочу останавливаться на точке Б, но продолжать двигаться точно в том же направлении, я не знаю, как это сделать,также я хочу, чтобы он двигался с фиксированной скоростью независимо от расстояния между точками, кто-нибудь может помочь?

Действие:

 Gdx.input.setInputProcessor(new InputAdapter() {

        public boolean touchUp(int screenX, int screenY, int pointer, int button) {

            touchposx = screenX;
            touchposy = screenY;

            MoveToAction action = new MoveToAction();
            action.setPosition(touchposx+300, screenHeight-touchposy+300);
            action.setDuration(5f);
               bullet.addAction(action);


            return true;
        }

    });

}

1 Ответ

0 голосов
/ 13 июня 2018

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

Но, на мой взгляд, действие - слишком сложный подход для решения этой проблемы.Действия в основном предназначены для анимации пользовательского интерфейса.Вместо этого я переопределил бы метод act () пули, использовал setPosition и удалил Actor со сцены, когда он покинул экран.

...