游戏开发日志:
2048小游戏 1.0 2021-08-17
技术栈:原生html+css+Jquery
游戏分析:
前端制作4*4的方格。
游戏开始:
随机两个方格里出现2
游戏中:
通过键盘上的上下左右键来控制整体方块的平移,每移动一次,会除去移动后的方格外出现一个新的数字为2的方格。
被移动的方块按照上下左右的移动,直到碰撞到其他方块或者墙壁。
方块碰撞后会进行相加,并合并为一个方块。
游戏结束:
检测到所有4*4的区域被方块填满,宣布游戏结束。将区域内最大的方块数额极为得分。
游戏实现思路:
绘制棋盘:
前端用4*4的数组存放值,利用table进行创建一个4*4的表格。
每个方格的id为此方格的坐标。
游戏开始:
构造生成两个随机数的函数,分别生成两个随机数,生成范围0-3;根据将两个随机数进行结合,
作为数字2以(Num1,Num2)的坐标放入区域内。
游戏中:
移动监听——>移动判断——>移动——>方块碰撞计算,移动后生成新方块
核心思想:(注意:每次只向方向位移动一格)
1.如果方向位置没有方块。则直接移动到方向位置,并且作下一个方向位置的判断。
2.如果有,则判断值是否相同,如果不同则不动,相同则合并,并作下一个方向为的判断。
按下方向键的时候,先让有值
构造键盘监听事件,监听键盘上按下的上下左右按钮,并将结果传递给移动函数。
移动开始标志:按下键盘上的按键后开始
移动结束标志:不能再移动(左边的值和我不相同,或者是x或y已到目标位)
存在问题:1.不移动也能生成新方块,2.所有方块不能移动了游戏才结束无法判定