gpt4 book ai didi

javascript - “重力”在 Javascript/HTML5 游戏中无法正常工作

转载 作者:行者123 更新时间:2023-11-29 10:00:24 27 4
gpt4 key购买 nike

我正在用 javascript/html5 编写一个简单的游戏,我正在尝试实现“重力”。

我的代码是这样的:

gravity = 4;
acceleration = 1.1;

function gameLoop() {

gravity = gravity*acceleration;

if (characterPositionY < 600)
characterPositionY = characterPositionY + gravity;

setTimeout(gameLoop,1000/30);
}

数字“600”是屏幕的底部,也就是“地面”,如果你愿意的话,玩家应该停止掉落的地方。

不幸的是,由于重力使 Angular 色在每个循环周期中至少下降 4 个像素(并且还在增加)... Angular 色通常会停在地面之前或地面之前。像这样,例如:

[1] characterPositionY 为 590

-加4-

[2] characterPositionY为594

-加4-

[3] characterPositionY为598

-加4-

[4] characterPositionY为602

...越过地面。

我以前从未真正制作过任何游戏,我只是在制作游戏的过程中编造出来的。可能有更好的方法来解决这个问题。

最佳答案

将您的测试更改为:

if (characterPositionY + gravity < 600)
characterPositionY = characterPositionY + gravity;
else
characterPositionY = 600;

关于javascript - “重力”在 Javascript/HTML5 游戏中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1778736/

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