[Android]开发数独游戏思路分析过程
2015-02-09 19:29
387 查看
数独游戏风靡已久,下面就将开发一款数独游戏的Android应用过程进行分解和说明。
先上图,再逐次分析开发这款游戏的涉及到的技术点,游戏逻辑。
简述:数独游戏是通过在9*9(大九宫格)的格子中空白的格子填写1-9中的任意一个数字,使得每一个行和每一列都由1-9这10个数字填满,并且在每3*3(小九宫格)的格子中同样也是由1-9这10个数组填满。即表示游戏完成。
分析游戏逻辑:
游戏中的每个格子可能的数字有1-9
游戏开始显示的数字,通过一份完整的数独,将部分格子设为空白,得到游戏初始值
游戏中的每个空白格子可以填写的数字是:同一行未出现的数字,同一列未出现的数字,同一个3*3的九宫格中未出现的数字三部分的交集
游戏中的每个格子的三种状态:答案数字(即正确的数字),初始化数字(即游戏开始是数字,显示有数字或者空白),当前数字(即玩家填写前,后的数字)
游戏完成的条件是满足简述中说明的情况
游戏设计
绘制游戏界面,大九宫格和小九宫格,如上图,小九宫格用白色线条分割
游戏格子中数字绘制,且字体在格子中居中显示,初始值为黑色,填写值为蓝色(颜色仅为参考)
游戏交互事件处理,点击小格子,提示玩家选择填写的数字,并将选择的数字绘制到所点击的格子中
根据游戏完成的条件判断游戏是否完成
涉及到的技术点:
Android的View绘制(不限于此方式)
9*9的矩阵行与列,格子相对位置等计算
屏幕点击格子的事件处理
实现步骤:
游戏逻辑
游戏显示视图,无论是Android,HTML上都将通用1中的游戏逻辑
操作事件,特性环境下做相应的事件处理
游戏的数据结构设计的恰当,则判断游戏是否完成就变得容易,依照文中游戏逻辑部分4中所述,判断游戏是否完成就可以使用如下代码判断:
更详细的实现参见:https://git.oschina.net/secondriver/Sudo.git
本文出自 “野马红尘” 博客,谢绝转载!
先上图,再逐次分析开发这款游戏的涉及到的技术点,游戏逻辑。
简述:数独游戏是通过在9*9(大九宫格)的格子中空白的格子填写1-9中的任意一个数字,使得每一个行和每一列都由1-9这10个数字填满,并且在每3*3(小九宫格)的格子中同样也是由1-9这10个数组填满。即表示游戏完成。
分析游戏逻辑:
游戏中的每个格子可能的数字有1-9
游戏开始显示的数字,通过一份完整的数独,将部分格子设为空白,得到游戏初始值
游戏中的每个空白格子可以填写的数字是:同一行未出现的数字,同一列未出现的数字,同一个3*3的九宫格中未出现的数字三部分的交集
游戏中的每个格子的三种状态:答案数字(即正确的数字),初始化数字(即游戏开始是数字,显示有数字或者空白),当前数字(即玩家填写前,后的数字)
游戏完成的条件是满足简述中说明的情况
游戏设计
绘制游戏界面,大九宫格和小九宫格,如上图,小九宫格用白色线条分割
游戏格子中数字绘制,且字体在格子中居中显示,初始值为黑色,填写值为蓝色(颜色仅为参考)
游戏交互事件处理,点击小格子,提示玩家选择填写的数字,并将选择的数字绘制到所点击的格子中
根据游戏完成的条件判断游戏是否完成
涉及到的技术点:
Android的View绘制(不限于此方式)
9*9的矩阵行与列,格子相对位置等计算
屏幕点击格子的事件处理
实现步骤:
游戏逻辑
游戏显示视图,无论是Android,HTML上都将通用1中的游戏逻辑
操作事件,特性环境下做相应的事件处理
游戏的数据结构设计的恰当,则判断游戏是否完成就变得容易,依照文中游戏逻辑部分4中所述,判断游戏是否完成就可以使用如下代码判断:
public boolean isWon() { for (int i = 0; i < originalStatus.length; i++) { if (currentStatus[i] != originalStatus[i]) { return false; } } return true; }
更详细的实现参见:https://git.oschina.net/secondriver/Sudo.git
本文出自 “野马红尘” 博客,谢绝转载!
相关文章推荐
- Android3系列 -2.数独游戏开发1
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- android游戏开发入门: 贪吃蛇 源代码分析(入门极品)
- Android cocos2dx游戏开发——示例程序HelloCpp源码分析
- Android——Cocosd2d-x手机游戏开发学习思路
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview效率检视工具,分析程序运行速度!并讲解两种创建SDcard方式!
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview效率检视工具,分析程序运行速度!并讲解两种创建SDcard方式!
- (转)【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- android游戏开发项目实战——数独 .
- android游戏开发笔记(0)——游戏开发分析及开发所需知识
- java游戏开发--连连看1-总体分析开发游戏的思路
- 游戏运营全过程剖析,游戏开发,游戏运营,游戏推广问题分析
- Android——Cocosd2d-x手机游戏开发学习思路
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- android游戏开发笔记(0)——游戏开发分析及开发所需知识
- android游戏开发基本坐标控制与大致思路
- Android Launcher开发(六)通过分析Laucher源码整理添加快捷方式的思路
- android游戏开发入门: 贪吃蛇 源代码分析
- Android——Cocosd2d-x手机游戏开发学习思路