




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java 期末大作业报告 自 62 王泉 2006012073 Java 期末大作业报告 Java 期末大作业报告 自 62 王泉 2006012073 2009 年 5 月 Java 期末大作业报告 自 62 王泉 2006012073 第一部分第一部分 作业选题作业选题 作业内容 作业内容 作业题目自定 并详细说明项目的功能需求 程序要有明确的功能 调试通过并能正常运行 程序至少要包含以下知识点 GUI 图形界面 多线程 文件 I O 或网络编程 程序代码在 500 行以上 作业要求 1 规划出实现这个项目所需要的类 2 根据设计要求作出类图及类相应的关系 3 编写代码实现设计 我的选题 我的选题 观察日常生活中我们接触到的电脑游戏 其中有一些简单的游戏 可以看作 是图像 音乐 声音 文字通过逻辑进行有机的组合 考虑到我们所学的 Java 知识 也可以对这些内容进行调用 因此我考虑通过这次大作业 设计一个图形 界面 在图形界面上通过用户和程序的交互 实现一个简单的可视化电脑游戏 设计的思路是编一个 RPG 游戏 通过 JPanel 实现图片的显示 通过 AudioStream 和 AudioPlayer 实现音乐的播放 通过 JTextField 和 JTextPane 实现文 字的显示 通过 JProgressBar 实现百分比的显示 通过 JButton 实现用户的操作 通过 JSlider 实现用户进行游戏参数配置 具体在本游戏中是攻击力和防御力的 均衡 游戏的主题设计为魔幻战斗类 取名为 幽灵法师 其中有剧情发展 战 斗两种模式 为了满足作业要求 我进行了如下设计 1 战斗模式下 创建一个多线程 实现两个 JProgressBar 的反复扫描 分别 表示己方的杀气和注意力 其中杀气与攻击力有关 注意力与法力的消耗有关 这项功能的加入是游戏的操作更具随机性 趣味性和技巧性 2 程序的一开始 需要读入游戏中的主要参数 特别是战斗中对方的生命 力 攻击力等参数 这些参数直接影响游戏的难度 可玩性 会需要经常修改 如果将这些参数设计在程序本身里 修改起来会很不方便 因此将这些参数写在 一个 txt 文件中 用一个 MyFIleReader 类去读取 这样 在不改动程序的情况下 就能修改游戏参数 非常方便 至此 程序需要包括的 GUI 多线程和文件 I O 都已设计完毕 Java 期末大作业报告 自 62 王泉 2006012073 第二部分第二部分 程序介绍程序介绍 编程工具 编程工具 这次编程使用 Eclipse 并使用了其 Visual Class 功能 能够很直观地进行页面 布局设计 Eclipse 的 Visual Class 编程界面如下 游戏设计基本方法 游戏设计基本方法 程序一开始 打开音乐和 JFrame 进入剧情发展模式 玩家此时可以点击确 定按钮 每一次点击 会导致图片 文字的切换 由此实现了剧情的发展 剧情 发展到一定阶段 需要切换到战斗模式 此时确定按钮失效 战斗按钮被开启 玩家点击不同的战斗按钮进行战斗 玩家主角的信息会在左方的各个控件中显示 每一步战斗结果会在下方的文本域中显示 同时左方还设计了攻防参数匹配功能 战斗才去回合制 战斗结束后 切换回剧情发展模式 确定按钮开启 战斗按钮 失效 类的设计 类的设计 一 Hero 类 游戏需要一个主角 主角用 Hero 类表示 里面封装了 10 个属性和 1 个初始 化方法 包括生命值 法力值 攻击力 防御力等 二 Enemy 类 游戏中每次战斗的对手用一个 Enemy 类表示 Enemy 类比 Hero 类简单 省 去了法力值和防御力 其攻击采取随机选择 不受法力约束 三 MyFIleReader 类 MyFileReader 类用于从 data txt 文件中读取所有 Enemy 的参数 有一个 data 数组用于存放数据 一个 read 函数用于读文件 Java 期末大作业报告 自 62 王泉 2006012073 四 Game 类 这是最重要的类 也是最复杂的类 有一千三百多行 这个类属于 Eclipse 中的 Visual Class 将图形界面和主函数都放在了这个类之 中 这个类最复杂之处在于类里面定义了很多子类以及大量的函数 类的第一部分是 import 部分 然后是类中的大量成员变量的定义 再然后是 页面布局部分 然后是游戏设计部分 最后是主函数 页面布局部分定义了所有的容器和控件 以及其事件 游戏设计部分有大量的函数 现在描述其中几个最重要的 1 heroupdate 函数 用来将己方信息更新到界面上的各种控件上 2 show begin 函数 通过参数控制剧情的发展 3 button enable 用来使战斗状态按钮生效 4 button unable 用来使战斗状态按钮失效 5 ActionButton response 子类中的 action 函数 用来控制一个回合的战斗 其中包括己方的动作和对方的动作 6 fight 用来控制进入战斗状态 7 die 用来描述玩家阵亡 包括结束程序等功能 游戏中的数据 游戏中的数据 游戏中的数据一部分放在程序中 一部分放在 data 文件夹中 data 文件夹包 括了游戏中用到的图片 音乐 还有一个 data txt 文件用来保存部分游戏参数 如下是一个完整的 data 文件夹包含的内容 Java 期末大作业报告 自 62 王泉 2006012073 编程中的难点 编程中的难点 一 等待机制的设计 这一个机制最终未能成功设计出来 最后不得不改变 了整个编程思路 一开始考虑时 想要在某个地方程序停止两秒 让玩家有时间 阅读一定信息后 自动切换到下一步 但是我发现 使用 Thread stop 功能后 程序的显示功能也完全停止 尽管显示功能在 Thread stop 语句之前 这个问题 我采用各种方法均为解决 最终采用了完全用 JButton 交互的方式 摒弃了等待 机制 二 音乐的播放 Applet 中的音乐播放比较简单 但 Application 则比较复杂 我查阅了不少资料 尝试了其中的方法 但频频失败 最终我发现 我的 wav 文件也有一些问题 用cooledit生成出来的wav文件用AudioStream就不能播放 但用会声会影生成出来的 wav 就可以播放 这个问题最终得到了解决 但其缺 点是 music wav 文件太大 足足 52 6MB 三 图片显示的问题 一般采取 extends JPanel 的方法来实现图片的显示 但是在 Visual Class 中 extends JPanel 之后就无法看到原来的 JPanel 了 解决方 法是 先设计 JPanel 布局好之后 修改为子类 四 最终产品的形式 考虑到在控制台下用 java 语句运行程序过于麻烦 因 此想将程序简化为一个图标 双击后就能运行 后来发现 Eclipse 中封装了这个 功能 Eclipse 的 export 功能可以生成一个 jar 文件 是一种可执行文件 但必须 事先安装了 jre 之后才能双击运行 最后的图标如下 Java 期末大作业报告 自 62 王泉 2006012073 第三部分第三部分 最终产品介绍最终产品介绍 剧情简介 剧情简介 魔历 314 年 魔王率领魔族由异界入侵 巫师坛排出幽灵法师去魔族的圣地 杀死魔王 幽灵法师是否能不辱使命 精彩故事由此开始 游戏使用方法 游戏使用方法 打开幽灵法师文件夹之后 首先点击如下图标 然后按照说明安装 jre 此后便可以双击如下图表开始游戏 或者可以在控制台界面下用 java 语句打开 Game class 进入游戏 注意事项 注意事项 幽灵法师文件夹中 包含了很多 java 源代码以及 class 文件 还有一个 data 文件夹 玩家请不要擅自移动这些文件的位置 一面导致程序无法运行 另外 玩家如果需要改变游戏难度 可以打开 data 文件夹中的 data txt 文件 修改其中 的 12 个数字 12 个数字的含义分别为第 1 个敌人的生命值 第 2 个敌人的生命 值 第 3 个敌人的生命值 第 1 个敌人的第 1 种攻击力 第 1 个敌人的第 2 种攻 击力 第 1 个敌人的第 3 种攻击力 第 2 个敌人的第 1 种攻击力 第 2 个敌人的 第 2 种攻击力 第 2 个敌人的第 3 种攻击力 第 3 个敌人的第 1 种攻击力 第 3 个敌人的第 2 种攻击力 第 3 个敌人的第 3 种攻击力 一定注意 数字间要用一 个空格隔开 文件末尾有一个空格 Java 期末大作业报告 自 62 王泉 2006012073 游戏操作说明 游戏操作说明 剧情发展模式下的游戏界面如下 整个界面分为左 右 中 下四部分 左方为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中传染病知识培训总结课件
- 二手房买卖合同签订注意事项及房产交易税费解析
- 简明电商法规第三章下的电商消费者权益保护合同
- 民俗风情画册设计制作与地方特色推广合同
- 住宅小区车位租赁合同提前解除及费用退还协议
- 离异双方子女抚养费增加协议
- 针对五年期进口铁矿的海运及分销服务合同
- 考研调剂咨询服务协议
- 髋关节影像课件
- 服装制作细节规范手册
- 金川集团社招考试题
- 合规和法律合规管理制度
- 个人独资企业的会计制度
- JJG 693-2011可燃气体检测报警器
- 乡村文旅项目规划方案设计
- 小学特色课程《口风琴课程》校本教材
- 2024年医院肠胃内镜科带教计划
- 作业设计大赛模板
- 手功能康复医学知识培训专家讲座
- 脑外伤急救与护理课件
- 微顶施工方案
评论
0/150
提交评论