如何加速我的蛇

How do I speed up my snake?

本文关键字:我的 加速 何加速      更新时间:2023-09-26

所以我的js的这一部分正在移动蛇。

if(direction === "right"){
    newX ++;
    } else if(direction === "left"){
    newX --;
    } else if(direction === "up"){
    newY --;
    } else if(direction === "down"){
    newY ++;

当我尝试在分数超过 2 时将其递增 10 时,它会破坏它的身体。

这是代码笔链接

正如@MikeC所建议的,只需修改您的速度即可。您可以定义此函数:

  function runGame(newSpeed) {
      if(typeof loop_game !== "undefined") 
           clearInterval(loop_game);
      loop_game = setInterval(render, newSpeed);
  }

然后在游戏开始时,调用此函数:

function startGame(){
    .
    .
    .
    runGame(speed);
}

稍后,当您需要提高速度时:

if (speed>10) {
    speed -= 10;
    runGame(speed);
}

http://codepen.io/anon/pen/xZJRdQ

我修改了你的代码笔使其工作,并获得了 18 分:)你能打败我吗?

处理newX溢出超过边界的情况(我假设是 10):

newX = (newX + 2 < 10) ? newX + 2 : 10;

这将检查将 2 添加到 newX 是否会使其超过 10。如果没有,那么它将添加 2。如果是这样,那么它将简单地将newX设置为 10。