【发布时间】:2021-09-09 19:52:02
【问题描述】:
我对 JS 很陌生。
正在学习本教程 (https://youtu.be/0ArCFchlTq4)。 在这个项目中发现了一些有趣的东西,这让我很困扰。可能有人可以帮我想出一些答案。
有这部分代码,我们在其中移动管道数组(下面列出的代码)。但是在移动之后,最左边的管道会产生这种奇怪的东西——它会在短时间内保持移动,使管道在视觉上相对于前景向后移动几个像素,例如,它以与管道相同的速度移动。这发生在 shift 命令执行的同一时刻,并且只影响数组中的下一个管道。
如果有人可以向我解释这一点,我会很高兴,也许会给出修复的提示。谢谢!
// if the pipes go beyond canvas, we delete them from the array
if(p.x + this.w<= 0){
this.position.shift();
score.value += 1;
SCORE_S.play();
score.best = Math.max(score.value, score.best);
localStorage.setItem("best", score.best);
}
}
},
reset : function(){
this.position = [];
}
}
【问题讨论】:
-
感谢您的文档,它有助于了解发生了什么!
标签: javascript html arrays game-development