首页 > 解决方案 > JavaFX 跳转字符

问题描述

我是 javaFX 新手,我正在尝试构建一个小游戏。我试图让我的角色使用这种方法跳跃:

 private void Jump(ImageView iv){
            TranslateTransition tt = new TranslateTransition(Duration.seconds(0.6),iv);
            tt.setAutoReverse(true);
            tt.setCycleCount(2);
            tt.setByY(-200);
            tt.play();

我在这里调用这个方法:

app.setOnKeyPressed(new javafx.event.EventHandler<KeyEvent>() {
                public void handle(KeyEvent event) {
                    if (event.getCode() == KeyCode.UP) {
                        Jump(mainC);
                    }

我要解决的问题是“用户”能够在角色在空中时调用“跳转”方法。

我希望角色从跳跃中恢复到原来的布局Y。或者在角色在空中时禁用 Jump 方法。

我尝试使用 if 语句,该语句仅在 getLayoutY 是我想要的方法时才调用该方法,由于某种原因它不起作用:

private void Jump(ImageView iv){
        if(iv.getLayoutY() == 400.0){
            TranslateTransition tt = new TranslateTransition(Duration.seconds(0.6),iv);
            tt.setAutoReverse(true);
            tt.setCycleCount(2);
            tt.setByY(-200);
            tt.play();
        }else {

        }

谢谢你。

标签: javafx

解决方案


推荐阅读