您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 北大青鸟ACCP阶段项目__骑士飞行棋_java
骑士飞行棋问题描述开发一款Java小游戏——骑士飞行棋游戏规则和传统的飞行棋一样,支持两人对战采用100格小型游戏棋盘游戏规则:对战双方轮流掷骰子控制自己的骑兵前进或后退,在游戏棋盘上设置有关卡普通地雷暂停时空隧道幸运轮盘(提供两种运气:交换位置和轰炸)棋盘上的关卡只在骑兵第一次移动遇到时有效问题分析-1设计骑士飞行棋的棋盘使用字符显示棋盘前进方向起点终点幸运轮盘地雷时空隧道暂停普通问题分析-2根据需求分析对象对战地图类(Map)功能:在控制台显示棋盘,并显示当前玩家在棋盘中所处的位置游戏类(Game)功能:实现游戏初始化设置、展示游戏开始界面以及角色设置、控制游戏进度、实现游戏规则、以及游戏结束后结果评判测试类(StartGame)功能:启动游戏难点分析-1实时动态显示对战地图地图信息以整型数据存储在数组中int[]map=newint[100];//对战地图0000102134…4…普通幸运轮盘地雷暂停时空隧道★■〓∷¤099数组下标难点分析-2实时动态显示对战地图将对战地图划分成4个部分分别显示奇数行:顺序输出地图数组中代号对应图像右竖行:先输出空格,再输出数组中代号对应图像偶数行:逆序输出地图数组中代号对应图像左竖行for(inti=end-1;i=start;i--){//输出数组中i位置处对应图像}for(inti=start;iend;i++){//输出数组中i位置处对应图像}难点分析-3实现游戏控制两个玩家轮流掷骰子,如果上轮走到暂停关卡,停掷一次//显示游戏开始while(playerPos199&&playerPos299){//任意一个人走到终点,跳出循环//玩家1掷骰子if(goAndStop[0].equals(on)){//掷骰子获得移动的步数//移动if(playerPos1==99){//走到终点break;//退出}}else{//提示此轮停掷goAndStop[0]=on;//设置下次状态}//玩家2掷骰子……}//显示游戏结束并进行评判难点分析-4实现游戏规则关键:当移动到某一点遇到关卡时,怎么办?前进?后退?停止?……switch(i){case0://普通格if(对方在此格){//对方被炸回起点}case1://幸运轮盘//选择和对方交换位置——做交换//选择轰炸对方——对方退6步case2://地雷//退后6步case3://暂停键//设置goAndStop为off,标识下轮暂停case4://时空隧道//再前进10步}难点分析-5实现游戏角色并开始两人对战显示游戏界面提示设置角色开始游戏阶段划分第一阶段(15分钟)阅读Map类中已提供的代码第二阶段(40分钟)完成Map类两个方法:生成对战地图、获得地图当前位置的输出图像第三阶段(40分钟)完成并测试Map类:动态显示对战地图第四阶段(55分钟)编写游戏类:类属性、游戏初始化设置、游戏界面以及角色设置第五阶段(65分钟)完成游戏类:游戏控制、游戏规则第六阶段(25分钟)编写测试类:测试游戏第一阶段第一阶段(15分钟)利用Eclipse创建工程,项目所需包导入Map.java文件到包中阅读Map类已给出的代码,明确方法之间的调用关系要求学员自己动手完成,教员巡视,解答学员提出的问题阶段检查教员发放项目案例相关文档针对第一阶段抽查学员的操作结果教员给出点评第一阶段结果演示简单讲解Map类方法之间的调用关系createMap()showMap()showLine1()showLine2()showRLine()showLLine()getGraph()第二阶段第二阶段(40分钟)编写Map类的方法createMap()生成对战地图编写Map类的方法getGraph()获得地图当前位置的输出图像要求学员自己动手编写,教员巡视,解答学员提出的问题阶段检查针对第二阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解教员给出点评或集中演示难点部分第二阶段标准代码演示地图类:Map.java第三阶段第三阶段(40分钟)阅读Map类getLine2()编写Map类getLine1():实现输出地图奇数行阅读Map类getRLine()编写Map类getLLine():实现输出地图左竖行测试Map类要求学员自己动手编写,教员巡视,解答学员提出的问题阶段检查针对第三阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解教员给出点评或集中演示难点部分第三阶段标准代码演示Map类:Map.java测试类:Test.java第四阶段第四阶段(55分钟)编写游戏类(Game):实现游戏初始化设置实现游戏界面及角色设置要求学员自己动手编写,教员巡视,解答学员提出的问题阶段检查针对第四阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评第四阶段标准代码演示Game:Game.java第五阶段第五阶段(65分钟)完成游戏类:阅读play()方法编写游戏类的掷骰子方法throwShifter()补充代码完成getCurPos()方法实现游戏规则编写judge()方法评判游戏结果要求学员自己动手编写,教员巡视,解答学员提出的问题阶段检查针对第五阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评第五阶段标准代码演示游戏类:Game.java第六阶段第六阶段(25分钟)编写测试类StartGame:测试游戏运行要求学员自己动手编写,教员巡视,解答学员提出的问题阶段检查针对第六阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评第六阶段标准代码演示测试类:StartGame.java总结巩固知识点:条件结构:switch/if循环结构:for/while/do-while类和对象:定义类、创建对象、属性和方法的引用数组:循环向数组中存取数据方法调用:带参方法的定义以及调用时的参数传递Thankyou
本文标题:北大青鸟ACCP阶段项目__骑士飞行棋_java
链接地址:https://www.777doc.com/doc-442728 .html