Ich versuche zu testen und sehen, ob meine Kugel den Feind trifft und wenn es krank ist, entfernen Sie es aus der Scheibe und aus der Kugel Liste. Ich weiß jedoch nicht, wie ich nach der Position des Geschosses suchen soll, während es sich in der Mitte seiner Animation befindet. Wie mache ich das? Vielen Dank!Wie bekomme ich einen Objektstandort in der Mitte seines Übergangs?
case S:
Circle bullet = new Circle(5);
bullet.setLayoutX(guns.getGun1().getLayoutX() + guns.getGun1().getWidth());
bullet.setLayoutY(guns.getGun1().getLayoutY());
bullets.add(bullet);
stage1Pane.getChildren().add(bullet);
TranslateTransition bulletMovement = new TranslateTransition(Duration.seconds(3),bullet);
bulletMovement.fromXProperty().bind(guns.getGun1().translateXProperty());
bulletMovement.fromYProperty().bind(guns.getGun1().translateYProperty());
bulletMovement.toXProperty().bind(guns.getGun1().translateXProperty().add(1000));
bulletMovement.toYProperty().bind(guns.getGun1().translateYProperty());
bulletMovement.play();
if (bullet.getCenterX() == enemy.getEnemyBody().getLayoutX())
{
bulletMovement.stop();
enemy.getEnemyLegs().setLayoutX(300);
}
bulletMovement.setOnFinished(i->{
System.out.println(bullet.getCenterX() + " " + enemy.getEnemyBody().getLayoutX());
bullets.remove(bullet);
stage1Pane.getChildren().remove(bullet);
});
break;