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

然后立即停止libbox2d和move

姬念
2023-03-14

我在LibGDX做一个项目。这是一款2d平台游戏。你可以说这就像超级马里奥。

这就是我如何把我的球员移到右边:

if (Gdx.input.isKeyPressed(Input.Keys.RIGHT))
    player.b2body.applyLinearImpulse(new Vector2(0.1f, 0), player.b2body.getWorldCenter(), true);
}

当我离开钥匙时,玩家仍然在移动一点。(我想他的身体上仍然有“线性冲动”的力量)。

我怎样才能让它停下来?

我的问题可能很简单:拿着钥匙,在LibGDX上向一个方向移动身体的最佳方式是什么。当我离开钥匙时,玩家立即停止。

BDW——我尝试过“setTransform”,当身体触摸其他物体时,它会产生问题——加上sahpe在屏幕上游戏的其余部分之前出现(你可以在调试中看到它)

谢谢。

共有1个答案

蔚丰
2023-03-14

你的方法没问题。我还建议设置你身体的最大速度:

if (Gdx.input.isKeyPressed(Input.Keys.RIGHT) && player.b2body.getLinearVelocity().x < maxSpeed)
    player.b2body.applyLinearImpulse(new Vector2(0.1f, 0), player.b2body.getWorldCenter(), true);
}

立即停止你的身体使用setLinearVelSpeed方法。:

player.b2body.setLinearVelocity(0f, 0f);
 类似资料:
  • 我的应用程序设置为(非故意)服务将使用gps/网络侦听器轮询位置。它工作得很好,因为我负责服务何时结束(即在找到新位置或达到超时时调用stopSelf())。然而,我最近读到,intentService可能更适合长时间运行的任务,因为它不是在ui线程上运行的,而是在自己的工作线程上运行的。问题是,现在它不允许服务在任何时间运行(我假设这是因为服务中没有任何活动发生,而侦听器等待接收位置,因此服务本

  • 问题内容: 我有一个简单的jenkins管道构建,这是我的jenkinsfile: 我正在使用sshagent推送到远程服务器上的git repo。我已经创建了指向Jenkins主〜/ .ssh中的私钥文件的凭据。 运行构建时,得到以下输出(我用*替换了一些敏感信息): 如您所见,ssh-agent启动,之后立即停止,然后运行git push命令。奇怪的是,它曾经正确地工作过一次,但这似乎是完全随

  • 我在我的工作区中使用STS IDE运行了几个Spring Boot应用程序,在我对其中一个项目进行maven更新后,每个项目都在应用程序启动过程后立即停止。我甚至创建了一个最小的例子,只是为了开始一些事情,同样的事情发生了。 这是我的pom.xml 即使是那些入门示例也会在启动后立即停止。我会非常感谢这里的一些帮助。 编辑:正如Alexandru Marina在评论中所说,我使用的是快照而不是稳定

  • 问题内容: 我正在使用SQL Server 2008及其管理工作室。我执行了一个查询,该查询产生许多行。我试图通过红色的“取消”按钮将其取消,但在过去的10分钟内仍未停止。通常会在3分钟内停止。 原因可能是什么?如何立即停止? 问题答案: 可能是什么原因 只要您的注意力可以到达服务器并得到处理,查询就会立即取消。查询必须处于可取消状态,几乎总是如此,除非您执行某些操作,例如从SQLCLR调用Web

  • 问题内容: 有什么办法可以阻止python.exe在完成后立即关闭?它关闭的速度比我读取输出的速度快。 这是程序: 问题答案: 您不能-全局地,即对于每个python程序。这是一件好事-Python非常适合编写脚本(自动执行操作),并且脚本应该能够在无需任何用户交互的情况下运行。 但是,您始终可以在程序结束时要求输入,从而有效地使程序保持活动状态,直到您按回车键为止。使用在Python 3 (或在