jquery

使用jquery实现2048小游戏(2)

2017-02-19  本文已影响30人  向布谷鸟说早安

创建了静态背景,又生成了随机块之后,我们开始创建块移动的方法:
这是一个简单算法的实现,分为四种情况,上,下,左,右,这里我们以一种情况为例,进行代码的详细设计:
考虑向上的情况:

整体思想是:

1.从数字格的第二行开始从左到右遍历块,遍历到块不为空,并获取到当前块的下一个位置。
2.这时有三种情况:①如果下一个位置一直为空,就让块的坐标上移,直到坐标到顶,移到顶,跳出while循环,此时执行第一种情况;
②如果遇到下一个位置不为空,就跳出while循环,两个块的坐标值不相同,块就不再移动。
③如果遇到下一个位置不为空,且两个块的坐标值相同,同样跳出while循环,下一个块的块值翻倍,当前块的位置置空。
3.总结一下,总共包括了两个循环,第一次遍历空余的位置,第二次是只有找到有块的位置后找它的下一个位置,并进行相应的设置。

需要注意的是:

之前定义的存储空块的state[]数组此时大有用处,可以通过这个数组手动的设置块或者清空块。

代码阶段:

思路理清了,我们开始来写代码:

//移动函数
var move=function(m){

  switch(m){
  case "上":
       
      
      break;
  case "下":
      break;
  case "左":
      break;
  case "右":
      break;
  
  }
  
}
上一篇 下一篇

猜你喜欢

热点阅读