当前位置: 首页 > 知识库问答 >
问题:

如何让玩家在Java只能跳到一定高度?

符懿轩
2023-03-14

所以,在学校的一个项目中,我一直在尝试建立一个跳跃机制。然而,我一直面临的问题是,玩家可以只是四处漂浮,而不是在达到某个跳跃高度后摔倒。

我尝试过很多东西,包括按下up键时的正常想法,设置跳转等于true,然后在actionPerform方法中,将yVelester设置为-4。但是,当单击跳转键时,我记录了当时的yPotions,当当前的yPotions小于原始位置-50时,我将yVelSpeed设置为等于0,而FallVelSpeed设置为1。

以下是我的actionPerformed方法中的代码:

if (jumping) {
            if (yPos <= homeY - 50) {
                yVel = 0;
                fallVel = 1;
                falling = true;
                jumping = false;
                System.out.println("bye");
            }   else {
                yVel = -JUMP_SPEED;
            }
        }
        yPos += yVel + fallVel;

“‘

这是按键法中的代码:

if (!jumping && !falling) {
            jumping = true;
            homeY = yPos;
            count = 0;
        }

所以,我希望结果是一个播放器上升50像素,然后开始下降。但在程序中,只要按下向上键,播放器就会保持浮动。

共有1个答案

曹奇文
2023-03-14

跳跃作为上下开关并不真正有效。最好的方法是使用重力(这很容易添加)。

要增加重力,只需修改玩家的速度。这应该在固定的时间更新循环上运行,以在不同的帧速率下保持一致的重力:

// Play with this number for rate of gravity
player.ySpeed -= 4.9; // Gravity = 9.8m/s^2

然后为您的跳跃添加播放器ySpeed。这将创建一个自然的抛物线跳跃。

if (jumpWasPressed) {
    player.ySpeed += 50; // play with this number for jump height
}

这种方法确实假设你有一个“地面”物体的热箱来阻止玩家掉进地面

 类似资料:
  • 我想通过单击LIBGDX中的按钮来实现LIBGDX中的跳转。一切都很好,但只要不断地点击按钮,玩家就会继续往上走。如果我不松开按钮,它就会超出屏幕高度。所以,我希望玩家在每次点击按钮时只跳到一定高度,虽然按钮被连续点击,但我希望玩家只跳到一定高度,而不是超出屏幕。这是我的密码, 在执行这段代码时,游戏就像FLAPPY BIRD一样工作。但是我只想达到一定的高度。我尝试了各种方法,也引用了这个堆栈答

  • 我正在做一个2D平台,只是增加了重力 然而,如果空格键在玩家完成跳跃后仍然被按住,玩家就会在半空中继续跳跃。 我知道我需要检查球员是否真的在地面上,但当我这样做时,它总是返回“false”,如我的跳跃方法所述:

  • 我让敌人随机移动并看着玩家,现在我想让敌人射击玩家,我不知道为什么,但射击完全随机,正如你在下面的gif中看到的(你按左ctrl射击)。 无论如何,这是玩家类: 这是我的敌人类: 这是我的子弹课: 如果你想测试代码,我已经删除了不必要的东西:< br > https://pastebin.com/HT93hUzt 您可以在此处下载替换图像来测试代码(记得更改图像加载字符串!): https://w

  • 当玩家或敌人被击中时,我希望他们的精灵变成红色。从本质上讲,我想要在精灵上显示透明的红色效果。皮游戏是否提供了一种方法来做到这一点?(我使用多个图像,因为角色是动画的,所以创建一个红色的精灵,只是闪烁而不是正常的子画面是行不通的)

  • 我使用pygame创建了一个游戏,我想让pygame在玩家触摸屏幕一侧时给出一个错误,例如“您无法触摸屏幕侧面”。我尝试在互联网上搜索,但我没有找到任何好的结果。我想过在屏幕上添加一个方块,当玩家触摸方块时,它会发出警告,但这花了很长时间,无论如何都不起作用。我也不知道如何发出警报,然后在发出警报后,让游戏重新开始。有人知道如何做到这一点吗?

  • 本文向大家介绍Python+OpenCV让电脑帮你玩微信跳一跳,包括了Python+OpenCV让电脑帮你玩微信跳一跳的使用技巧和注意事项,需要的朋友参考一下 前言 最近微信小游戏跳一跳大热,自己也是中毒颇久,无奈手残最高分只拿到200分。无意间看到教你用Python来玩微信跳一跳一文,在电脑上利用adb驱动工具操作手机,详细的介绍以及如何安装adb驱动可以去看这篇文章,这里就不再介绍了。但是原文