gpt4 book ai didi

java - java中的定时器( Action 延迟)

转载 作者:行者123 更新时间:2023-11-30 06:54:49 26 4
gpt4 key购买 nike

所以我正在制作这个小型 2D 游戏。我对java不太擅长,但我确实了解很多。但我想要做到这一点,当我的角色发射子弹时,他在 2 秒内无法再发射。或者任何延迟。我已经尝试了多种方法,但它根本不符合我想要实现的目标。这就是我用来发射子弹的东西。

    if (Mouse.next() && Mouse.isButtonDown(0)) {
t.scheduleAtFixedRate(task, 0, 10000);
Game.bullets.add(new Bullet(new Vector2f(position.x + 25, position.y + 19), new Vector2f(position.x, 0)));
}

谢谢

最佳答案

  1. 创建类变量来存储上次射击时间
  2. 在此变量中保存上次拍摄时间
  3. 比较当前时间和拍摄事件的变量值,决定是否允许再次拍摄。

类似于:

if (Mouse.next() && Mouse.isButtonDown(0) && (System.currentTimeMillis() - lastShotTime >= 2000)) {
t.scheduleAtFixedRate(task, 0, 10000);
Game.bullets.add(new Bullet(new Vector2f(position.x + 25, position.y + 19), new Vector2f(position.x, 0)));
lastShotTime = System.currentTimeMillis();
}

关于java - java中的定时器( Action 延迟),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42053821/

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