知识大全 JAVA模块游戏规则和界面设计(一)

Posted

篇首语:一年好景君须记,最是橙黄橘绿时。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JAVA模块游戏规则和界面设计(一)相关的知识,希望对你有一定的参考价值。

JAVA模块游戏规则和界面设计(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  本模块为游戏规则和界面设计 计划于 完成 目前进展顺利 预计将提前一天完成      本模块分两部分      )界面设计 准备需要的图片文件等 设计图形界面 该部分设计已完成 耗费时间两天 主要类     MainFrame 游戏窗口 初步定为游戏本身 将拥有三个逻辑成员     UI 游戏界面 只负责显示 (完成)    GameMaster 游戏管理者 负责游戏秩序 监控玩家行为及修改游戏状态     StateObserver 游戏状态观察者 观察游戏状态并在UI上显示 (完成)     )游戏规则设计 设计游戏规则及ChessPlayer和游戏间的互动 主要类     GameMaster 游戏管理者 负责游戏秩序 监控玩家行为及修改游戏状态 当玩家为人类时 监控若干ChessGrid及三个辅助JButton 当玩家    为电脑AI时 监控AI得到落子位置 根据落子的位置及规则 做出相应的行为 最后修改游戏状态GameState 包括记录棋谱和切换用户 由    GameState激发其观察者StateObserver修改状态显示 其拥有的域为     ChessGrid[][][] 棋格数组    JButton[] 辅助按钮    GameState 游戏状态 拥有两个玩家 或为人类或为AI;    GameMaster部分算法     mouseClicked()   //handle mouse event  //假如落子位置合法 关闭ChessGrid监控  status = checkStep(current);  //假如需要辅助输入 开启辅助Button监控;return;  nextPlayer();       actionPerformed()   handle(Decision);  nextPlayer();       nextPlayer()   //ready for next player  GameState addStep(current Decision);  GameState nextPlayer();  while(!GameState isHumanTurn())   decision = GameState getNextStep(current);  status = checkStep(current);  //假如需要辅助输入 因为AI在计算current时必定已考虑好如何输入  handle(decision);  GameState addStep(current Decision);  GameState nextPlayer();    //开启ChessGrid监控 准备接受人类输入      GameState 为被观察者 拥有两个ChessPlayer nextPlayer()中 首先notifyObserver()修改状态 然后指向下一个ChessPlayer 在    getNextStep()中 调用当前ChessPlayer提供的getNextStep()方法 获取AI计算结果     StateObserver 为观察者 观察GameState的状态并做出相应修改      目前剩余的任务有      )GameMaster中需要判断游戏结束 游戏结束条件将在下列条件中选择     a)无法继续落子判和    b)一方子全灭判输    c)一方落子时间超过期限判输    d)一方三子连珠判赢     )GameMaster中增加时间限制      )通过MainFrame中的菜单对游戏进行控制 cha138/Article/program/Java/hx/201311/26976

相关参考

知识大全 理解java的多形性

  对于面向对象的程序设计语言多型性是第三种最基本的特征(前两种是数据抽象和继承    多形性(Polymorphism)从另一个角度将接口从具体的实施细节中分离出来亦即实现了是什么与怎样做两个模块的

知识大全 java操作mssql2000的小例子

   主要由三个文件组成一个是主执行文件一个是用户界面文件一个是数据模块文件用户界面这一块是用的eclipse的VE插件做的只是还不知道如何发布这样的应用程序.唉&nbs

知识大全 DMR通信协议与数字对讲机基带模块设计

DMR通信协议与数字对讲机基带模块设计  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!引言 

一种模块化设计固定滤盘过滤技术

摘要:本文通过对传统过滤技术及新兴深度过滤技术的对比,介绍了一种新型滤布滤池,包括其工作原理、设备组成、技术特性及运营优势。结果表明滤盘固定而吸盘转动的新型组合方式,不仅具有结构简单、能耗小、便于模块

一种模块化设计固定滤盘过滤技术

摘要:本文通过对传统过滤技术及新兴深度过滤技术的对比,介绍了一种新型滤布滤池,包括其工作原理、设备组成、技术特性及运营优势。结果表明滤盘固定而吸盘转动的新型组合方式,不仅具有结构简单、能耗小、便于模块

一种模块化设计固定滤盘过滤技术

摘要:本文通过对传统过滤技术及新兴深度过滤技术的对比,介绍了一种新型滤布滤池,包括其工作原理、设备组成、技术特性及运营优势。结果表明滤盘固定而吸盘转动的新型组合方式,不仅具有结构简单、能耗小、便于模块

知识大全 面向对象的设计法确保软件的健壮性

  软件设计的质量在很大程度上受到系统封装关系的影响模块间松耦合而模块内部又保持高度一致性是高质量设计软件的关键之一所以评定软件设计的水平的手段之一就是考察它的模块间的关系对系统的可重用性和可维护性水

知识大全 Java模式设计之单例模式(一)

Java模式设计之单例模式(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作为对象的创建模

根据MKV控制系统的逻辑设计,除电子加速度超报警、电子超速报警外,以下属于速度和加速度报警的是()

根据MKV控制系统的逻辑设计,除电子加速度超报警、电子超速报警外,以下属于速度和加速度报警的是()A、测量模块加速度超报警B、测量模块超速报警C、保护模块加速度超报警D、保护模块超速报警参考答案:CD

根据MKV控制系统的逻辑设计,除电子加速度超报警、电子超速报警外,以下属于速度和加速度报警的是()

根据MKV控制系统的逻辑设计,除电子加速度超报警、电子超速报警外,以下属于速度和加速度报警的是()A、测量模块加速度超报警B、测量模块超速报警C、保护模块加速度超报警D、保护模块超速报警参考答案:CD