sagen, wenn ich Schauspieler hatte dieSchauspieler zu einem anderen InputListerner reagiert
Wie InputListener reagieren diesen Schauspieler stoppen zu einem anderen InputListener von reagieren, bis die vorherigen
beenden Ich habe die folgenden Klassen:
Klasse MyActor
public class MyActor extends Image {
public MyActor() {
super(new Texture("img.png"));
setPosition(100, 100);
debug();
}
}
Klasse Testbild
public class TestScreen implements Screen {
GameMain gameMain;
Stage stage;
MyActor myActor;
public TestScreen(GameMain gameMain) {
this.gameMain = gameMain;
}
@Override
public void show() {
stage = new Stage();
myActor = new MyActor();
//addlistener to actor
myActor.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
RotateByAction rba = new RotateByAction();
rba.setAmount(90.0f);
rba.setDuration(3.0f);
myActor.addAction(rba);
System.out.println("actor is rotating");
return true;
}
});
stage.addActor(myActor);
Gdx.input.setInputProcessor(stage);
}
@Override
public void render(float delta) {
stage.act(delta);
stage.draw();
}
}
ok aber eigentlich benutze ich keine Aktionen, wenn Schauspieler berührt wird Ich schreibe es als Beispiel myactor mache ein paar andere Sachen zu anderen Schauspielern, wenn es berührt wird – MAGS94
Nicht sicher, verstehe ich vollständig. Aber wenn du ActorA hast, was onTouch() ActorB, C, D ... anweist, Dinge zu tun und du möchtest, dass B, C, D beendet werden, bevor ActorA on Touch() mehr an sie sendet? Dann wäre eine Art Rückruf immer noch angebracht. B, C, D müssten A mitteilen, dass sie erledigt sind, und A müsste dies verfolgen, bevor sie neue Ereignisse an sie weitergibt. Javas beobachtbares/beobachtbares Muster könnte funktionieren. A implementiert die Observer-Schnittstelle und B, C, D sind Observable (s), die A über eine Änderung benachrichtigen (in diesem Fall notify on done). –