Raptor大作业文档.docx
《Raptor大作业文档.docx》由会员分享,可在线阅读,更多相关《Raptor大作业文档.docx(14页珍藏版)》请在冰豆网上搜索。
Raptor大作业文档
.
1/19
Raptor大作业文档
——DaretoSudoku(敢来做数独吗)
西北工业大学
05081501班
2015301253李怡然
指导教师:
周果清
2015年12月
.
2/19
1,课题来源3
2,游戏设计思路3
3,游戏说明4
4,具体算法介绍4
游戏界面展示15
5,总结与反思19
6.参考文献19
.
3/19
1.课题来源:
数独游戏是我们从小便接触到的智力游戏,那时我们经常从报刊杂志上找题来做,后来,以数独游戏为内容的单击版小游戏也流行开来。
学习了《可视化计算》以后,有很多同学都用该工具做出了一些有意思的小游戏,老师也给我们展示了有关案例。
在老师和同学们的启发之下,我萌生了用raptor做一款数独游戏的想法,一来以纪念那段数独游戏陪伴下的童年,二来提高自己应用raptor的能力,挑战自己。
2.游戏设计思路:
一开始我考虑了以现有raptor知识制作该款游戏的可行性,并将制作步骤分为以下几个模块:
a.制作窗口界面b.建立题库c.随机生成题目并显示在窗口d.获取玩家答案并判断e.显示结果。
初步思考后作出判断,a.e模块通过图形窗口的使用即可实现,b.c需要通过文本文件、随机函数、数组的使用来实现,d通过键盘鼠标与算法的结合来实现。
一开始时画图只想到了一个一个的画矩形,因此九宫格的绘制需要81条语句,工作量很大。
后来灵机一动,决定画6*6的格子,以减小工作量,然后又想到可以采用画线分割格的方法,这样就只
.
4/19
需要10条语句,再后来又想到可以用循环的方法画线,工作量锐减。
而在随机生成题目的设置中,我也遇到了无法生成1~36中若干个不相同数字的困难,经过一晚的思考,想出了用循环语句加条件语句判断是否不相同的方法,攻克了难点。
可以说整个过程正是一个不断摸索并在摸索中提高的过程。
最后,我引用图片文件做游戏背景,并设置背景音乐,完成对制作的润色。
3.游戏说明:
进入游戏界面后,游戏自动播放音乐,玩家需要阅读游戏规则并设定挖空数目,挖空数目在5~8之间,玩家只需点击设空栏并用小键盘输入数值,数值就会显示在对应位置,输入成功。
任意点击鼠标,游戏继续进行,进入下一界面,系统将从题库随机抽题并根据玩家输入值随机挖空,玩家通过点击相应位置并用键盘输入来输入自己的答案。
完成答题后点击submit方块提交答案,然后就会显示是否过关的信息,若未过关,点击tryagain方块重新答题,若闯关成功,玩家可点击newchallenge方块进行下一次挑战,也可点击finish方块结束游戏,游戏窗口将被关闭。
4.具体算法介绍:
I.
Main子图:
控制游戏进程,将各子图组织在一起
.
5/19
1main
.
6/19
II.
Gamerule子图:
显示游戏规则并获取设空值
2gamerule子图
.
7/19
II.1
Transform1子图:
将设空值由字符型转化为系统可计算的数值型
3transform1子图
III.
Preparethedata子图:
从题库中随机选题,并根据设空值随机设空。
.
8/19
4Preparethedata子图
.
9/19
IV.
opentheinterface子图:
绘制游戏界面
5opentheinterface子图
.
10/19
V.
Showthefigure子图:
显示所有数并将设空处遮挡。
6Showthefigure子图
.
11/19
VI.
Play子图:
获取答案并判断对错
7play子图
.
12/19
VI.1
Transform2子图:
将输入值由字符型转化为系统可计算的数值型
8transform2子图
.
13/19
VI.2
Succeed子图:
显示闯关成功界面并链接到下一题目界面或结束游戏操作
9succeed子图
.
14/19
VI.3
Fail子图:
显示闯关失败界面,并转至重新答题界面
10fail子图
.
15/19
游戏界面展示:
.
16/
19
.
17/
19
.
18/
19
.
19/19
4.总结与反思:
在这次实践当中,我逐渐学会利用各种算法语句解决实际遇到的问题,但本次制作仍存在以下欠缺的地方:
题库由人工建立,没有实现用算法生成,多样性欠缺;玩家输入答案后无法修改。
因此,我明白在编程的学习中我还有很大的学习空间。
5.参考文献:
《大学计算机实践教程——面向计算思维能力培养》(电子工业出版社)