【发布时间】:2016-05-28 09:33:17
【问题描述】:
我一直在尝试学习 scene2d,但在按住键时无法让精灵/Actor 移动。我尝试了几种不同的方法,但我似乎无法弄清楚。这是我目前拥有的代码,每次按下键时都会移动演员,但按住时不会移动。
class Player extends Actor {
Sprite sprite = new Sprite(new Texture (Gdx.files.internal("character.png")));
public Player() {
setBounds(sprite.getX(), sprite.getY(), sprite.getWidth(), sprite.getHeight());
setTouchable(Touchable.enabled);
addListener( new InputListener() {
@Override
public boolean keyDown(InputEvent event, int keycode) {
if (keycode == Input.Keys.RIGHT) {
MoveByAction mba = new MoveByAction();
mba.setAmount(1f, 0f);
Player.this.addAction(mba);
}
return true;
}
});
}
@Override
protected void positionChanged() {
sprite.setPosition(getX(), getY());
super.positionChanged();
}
@Override
public void draw(Batch batch, float parentAlpha) {
sprite.draw(batch);
}
@Override
public void act(float delta) {
super.act(delta);
}
}
【问题讨论】:
标签: java libgdx sprite actor scene2d