Javascript 我如何加速我的蛇?

Javascript 我如何加速我的蛇?,javascript,jquery,Javascript,Jquery,因此,我的js的这一部分正在移动蛇 if(方向==“右”){ newX++; }否则如果(方向==“左”){ 纽克斯--; }否则,如果(方向==“向上”){ 新--; }否则如果(方向==“向下”){ newY++;处理newX溢出边界(我假设为10)时的情况: newX=(newX+2=10){clearInterval(loop_game);setInterval(render,45)}它在达到10分后停止了游戏。

因此,我的js的这一部分正在移动蛇

if(方向==“右”){
newX++;
}否则如果(方向==“左”){
纽克斯--;
}否则,如果(方向==“向上”){
新--;
}否则如果(方向==“向下”){

newY++;
处理
newX
溢出边界(我假设为10)时的情况:

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

这将检查向
newX
添加2是否会使其超过10。如果没有,则会添加2。如果添加,则只需将
newX
设置为10。

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

  function runGame(newSpeed) {

      if(typeof loop_game !== "undefined") 
           clearInterval(loop_game);

      loop_game = setInterval(render, newSpeed);
  }
function startGame(){
    .
    .
    .

    runGame(speed);

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

  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);
}


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

你的代码笔不工作。它甚至没有用于画布的HTML。我们需要更多的代码。@zero298我添加了HTML和css。很抱歉。你可以清除当前的
setInterval
,然后以更短的间隔重新开始@rupps将其添加到if语句时,您将如何处理?重复绘制?@MikeC我尝试了if(分数>=10){clearInterval(loop_game);setInterval(render,45)}它在达到10分后停止了游戏。