gpt4 book ai didi

java - LibGdx - Box2d - 跳跃

转载 作者:太空宇宙 更新时间:2023-11-04 14:42:41 26 4
gpt4 key购买 nike

我想创建像飞翔的小鸟一样的游戏。我希望玩家在屏幕上连续跳跃。我创建了这段代码,它不像一只飞扬的小鸟跳跃

代码:

float jump = 100; // Just example

if(Gdx.input.justTouched())
body.applyForceToCenter(0, jump * delta, true);

问题是当用户快速点击屏幕时,玩家会像火箭一样被射出。此外,当玩家跌倒时,跳跃也会降低。我怎样才能解决这个问题,并始终获得相同的跳跃强度?

我的解决方案:

    jumpTimer += delta;

if(Gdx.input.justTouched()) {

if (jumpTimer > jumpTime) {

body.setLinearVelocity(body.getLinearVelocity().x, 0);
body.applyForceToCenter(0, jump * delta, true);
}

jumpTimer = 0;
}

最佳答案

可以使用多种方法来实现这样的效果。

  • 就像 Mohammad 在评论中提到的那样,您可以将 y 速度限制为最大值。
  • 让玩家每 x 次只能点击屏幕一次。
  • 玩家上升的速度越快,点击产生的向上力就越小。
  • 完全禁止以特定速度敲击。
  • 将这些组合起来并进行调整,直到您对结果满意为止。

关于java - LibGdx - Box2d - 跳跃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24769746/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com