gpt4 book ai didi

javascript - JS加减速

转载 作者:行者123 更新时间:2023-11-29 15:26:52 25 4
gpt4 key购买 nike

我正在为我学校的游戏制作比赛制作一个简单的基于关卡的平台游戏。

当用户按住向右箭头键时, Angular 色开始逐渐向右移动,并加速直到达到最大速度。它一直以最大速度行进,直到释放箭头键。当它被释放时, Angular 色逐渐减速并停止。

我可以让它加速,但是当释放键时, Angular 色会向前跳跃并立即停止,而不是减速然后停止。

这是我的代码:

    var maxSpeed = 10; 
var xForce = 0;
var CharaXPos = 10;
var CharaYPos = 200;

var draw = function() {
background(255, 0, 0);
image(getImage("creatures/Winston"), CharaXPos, CharaYPos, 50, 50);
if (keyIsPressed && keyCode === RIGHT) {
CharaXPos = CharaXPos + xForce;
xForce = xForce + 0.25;
if (xForce >= maxSpeed && keyIsPressed) {
xForce = maxSpeed;
}
}

if (!keyIsPressed) {
while (xForce > 0) {
CharaXPos = CharaXPos + xForce;
xForce = xForce - xForce*0.25;
}}
};

最佳答案

while 循环更改为 if 语句,这样每次调用 draw() 时力都会减少一点,而不是在对 draw() 的一次调用中一直减少到 0。

此外,请注意 xForce = xForce - xForce*0.25,因为这会使 xForce 越来越接近 0,但从未完全到达那里。只尝试 xForce = xForce - 0.25(与加速代码相反)。

关于javascript - JS加减速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38176264/

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