游戏思想: 根据难度随机产生不同位置的空格,等待玩家填入。如果玩家点击的位置是初始化生成的,那么点击的时候下面的备选框不会出现,如果初始化没有则会出现备选框以供玩家选择应该填入的数字! 知道检查到没有待填入的空格则游戏判断是否成功!(这里没有做下一关)
游戏算法: 采用了递归 + 检查 + 回溯 的思想(具体的网上的例子也比较多大家可以参考一下)
游戏不足之处:递归的检查比较耗时 ,游戏纯属练手美工方面存在很多不足之处!
这里贴出判断点击的是上面的输入格,还是下面的备选框
public void checkIsInput() //判断是否可以输入 { if (touch_row > 8 || touch_col > 8) { // 8 :row_cnt if (isInput) { int selRow =(event_x - select_x)/Indefine.SELECT_TILE_W ; int selCol = (event_y - select_y)/Indefine.SELECT_TILE_H ; System.out.println("selRow = " +selRow + "selCol="+selCol); if (selRow<3&&selCol<3&&selRow>=0&&selCol>=0) { curNum[tempRow][tempCol] = selectNums[selCol][selRow]; } } return ; } if (curNum[touch_row][touch_col]==0) isInput = true ; else{ isInput = false ; } System.out.println("isInput = "+isInput); tempRow = touch_row ; tempCol = touch_col ; }
本文详细介绍了游戏开发中利用递归、检查和回溯算法实现难度随机变化的游戏逻辑,包括如何根据难度随机产生不同位置的空格、玩家交互逻辑以及检查机制,以及算法在游戏中的应用效果和存在的不足。通过实例分析,探讨了游戏算法设计的思路和优化方向。
2347

被折叠的 条评论
为什么被折叠?



