随着
IT的发展,针对五子棋这项传统的棋类运动的软件也相继地出现。出现了五子棋对弈软件、五子棋打谱软件、联网对战的五子棋的棋牌室类网游等类型的软件。本论文以提高五子棋软件教学功能和提升玩家棋艺为目标,研究更容易让玩家上手更容易让玩家接受的操作方式,研究如何使得练习效果更加显着的方法,最终实现一个五子棋软件的基本框架。并且力求软件框架结构拥有更好地扩展性和可维护性。
用ActionScript3.0来开发Flash游戏是目前网页类小游戏的主流。本文用Flash脚本幵发语言ActionScript3.0开发了一个集游戏、练习、学习三功能于一体的五子棋系列软件。以拥有良好的可扩展性和良好的可维护性为目标。幵发过程中这个工程的系统采用了 GUI美术资源设定和程序分离,AI逻辑和主程序分离,教学逻辑xml脚本解析,GUI逻辑和游戏主逻辑、教学系统逻辑分离的结构。
用主程序载入脚本、程序和美术资源的方法,使得此软件系统在GUI界面、AI逻辑和教学逻辑脚本上拥有很好的扩展性。游戏、练习和学习功能的结合使得这个游戏软件趣味十足,对于棋艺的提高拥有显着的效果。
在这个工程中编写出来的GUI底层框架和代码可以在其他任何一个flash游戏中重复使用且无需做修改。
关键字: flash, ActionScript3.0,五子棋,教学系统,AI,脚本,架构
ABSTRACT
With the development of IT, more and more software of five-in-a-row which is a traditional chess game appeared one after the other. There are gaming software of chess, and software of setting the chessman on the chessboard according to the chess manual, and web game of five-in-a-row. With the purpose of improving the quality of the teaching and enhancing the skill of chess, this paper will find a mode of operation which is easy to be accepted and start, and the way to make the practice more effective. Finally, we will finish a basic framework of five-in-a-row software. We will strive to make the framework more augmentable and maintainable in addition.
Developping Flash game with ActionScript3.0 is the main way of developping small game which running in the web at the moment. This paper develop a software of five-in-a-row which include gaming and training and tutorial with the ActionScript3.0 which is the script language of Flash. The aim is to make the system well augmentable and maintainable. In the process of developing, this project use the architectures, in which the GUI system is separated from art designing resource, the main program is separated from AI logical program, the tutorial program use XML language. The GUI logical, main logical and tutorial logical program is isolated with each other. The GUI and AI and tutorial logical in this software system have great augmentability, by the way of loading the script, program and art designing resource by the main program. The assembly of gaming, training and learning make this game program very interesting, and is obviously effective in enhancing the skill of chess. The base framework of GUI and the code which was written in the process of the project can be used in any other flash game project without any modification.
Key words : flash, ActionScript3. 0, five-in-a-row, tutorial system,AI, script, architecture
五子棋软件功能实现:
连珠数统计函数之间的互相调用关系
教学脚本模块的测试脚本的执行结果
目录
摘要
ABSTRACT
第一章 绪论
1.1 现状
1.1.1 Flash的发展现状
1.1.2 五子棋的发展现状
1.2 本文的主要内容
1.3 本文的章节安排
第二章 基于as3的flash游戏的常用技术
2. 1 ActionScript 3. 0 简介
2. 2 ActionScript 3. 0显示编禾呈简介
2.3 Adobe Flash CS3 professional 简介
2.4 目前常用的as游戏的程序框架
第三章 需求分析
3.1 五子棋简介
3.1.1 五子棋的术语简介
3.1.2 五子棋的规则
3. 2 游戏模式的设计需求
3.2.1 练习模式
3.2.2 比赛模式
3.2.3 教学模式
3.2.4 教学脚本必须具备的功能
3.3 游戏流程的需求分析
第四章 系统总体设计
4.1 游戏模块的划分和设计
4.2 GUI底层模块的设计
4.3 基于GUI底层的其他模块的设计
4.3.1 GUI用户界面模块和游戏流程控制的设计
4.3.2 五子棋对弈逻辑模块的设计
4.3.3 教学脚本逻辑模块的设计
4.4 游戏文件目录结构的设计
第五章 功能实现
5.1 五子棋的对弈逻辑模块的实现
5.1.1 Stone、GamePlayer、Pointlnfo 这三个类的实现
5.1.2 FiveStoneMain —逻辑控制、流程控制和与其他模块交互的实现
5.1.3 FiveStoneMain类内部的禁手判断和棋局战况统计功能的实现
5. 2 教学脚本逻辑模块的实现
5.2.1 命令执行的实现
5.2.2 表达式解析的实现
5.2.3 脚本指令之间的顺序执行的流程控制的实现
5.2.4 用堆栈来实现if、else、while、loop指令的脚本分支和循环流程控制功能
5. 3 数据管理模块的实现
5.4 GUI底层模块的实现
5.4.1 MovieClipComponent 控件的实现
5.4.2 BaseWnd窗口(界面)的实现
5.4.3 WndManager窗口管理器的实现
5.4.4 StageManager场景管理器的实现
5.5 GUI用户界面模块以及游戏流程控制的实现
5.5.1 启动
5.5.2 初始的AI文件列表和教程脚本文件的载入流程的实现
5.5.3 主场景界面流程的实现
5.5.4 AI文件列表和教学文件列表的显示的实现
5.5.5 ChessGameWnd控制对弈逻辑模块的实现
5.5.6 TutorialWnd对于教学脚本逻辑模块的控制的实现
5.5.7 比赛流程逻辑的实现
5.6 AI的简单实现
第六章 测试
6.1 GUI底层模块的测试
6.2 教学脚本逻辑模块的测试
6.3 对弈逻辑模块的测试
第七章 总结与展望
7.1 和其他五子棋软件比所具有的优势和劣势
7.2 展望
参考文献
致谢
(如您需要查看本篇毕业设计全文,请您联系客服索取)