- 12
- 0
- 约2.31万字
- 约 30页
- 2017-02-03 发布于辽宁
- 举报
基于java的坦克大战软件程序设计大学毕业设计
华中科技大学文华学院
基于Java的坦克大战游戏软件程序设计
题目: 基于Java的坦克大战游戏的设计与实现
学 生 姓 名: 学号:
学 部 (系):_信息科学与技术学部_
专 业 年 级: _11级电子信息工程_
指 导 教 师: 职称或学位:_硕士_
2015年5月2日
摘 要
随着网络时代的到来,游戏产业出现了前所未有的繁荣。“贪吃蛇”、“俄罗斯方块”这些简单的游戏曾为一代游戏玩家所熟悉。随着网络通信技术的迅发展,更加有趣、更为生动的游戏层出不穷。本论文主要介绍了游戏的设计思路和实现过程。对背景的所有物体进行绘图关键字 - I -
Abstract - I -
第一章 程序结构、思想和相关技术 - 3 -
1.1 本程序需解决的有关技术问题 - 3 -
1.2 程序流程 - 4 -
1.3 绘图与事件监听以及线程技术和IO流编程 - 6 -
1.3.1 Graphics类 - 6 -
1.3.2 KeyListener监听机制 - 6 -
1.3.3 runnable实现线程 - 7 -
1.3.4 io流编程实现菜单功能 - 7 -
第二章 游戏的设计思路 - 8 -
2.1 画出坦克 - 8 -
2.2 坦克的控制和敌方的智能运行 - 8 -
2.3 子弹的运行和控制 - 9 -
2.4玩家成绩的记录 - 10 -
2.5游戏面板与菜单的设计 - 11 -
第三章 程序分析和实现过程 - 12 -
3.1 游戏进入前的面板设计分析 - 12 -
3.2 游戏逻辑函数及其涉及到的若干类 - 13 -
3.3 坦克的共同行为 - 15 -
3.4 玩家坦克的功能属性 - 16 -
3.5 敌人坦克的功能属性 - 16 -
3.6 子弹击中坦克的爆炸 - 18 -
3.7 记分系统 - 19 -
3.8 本章小结: - 21 -
第四章 总 结 - 21 -
4.1 本程序的总结和展望 - 21 -
4.2 经验和感想 - 22 -
参考文献 - 23 -
第一章 程序结构、思想和相关技术
1.1 本程序需解决的有关技术问题
1. 坦克大战是一个可大可小的游戏,想法灵活可以编写出很多功能,所以需要对程序的要求量应该是巨大的,但是其代码利用率很高,因此实际编写时也不需要太多的绞尽脑汁,可以利用各模块程序的相近性灵活运用。一个实时运行的最终作品,每秒都会运行成千上万行程序,绘图事件、键盘事件都会以极高的频率在后台等待响应,若有丝毫的差别都将很容易导致程序在运行不久后可能出现严重错误,甚至死循环。因此,其逻辑设计应当相当严谨,需将所有可能发生的事件及意外情况考虑在设计中。
2. 游戏中为了美观,适用性强以及操作的简便性,我们主要利用draw函数画出矩形,圆及线构成一辆Tank,同时画出子弹,敌方坦克可以直接引用之前画出的坦克,这样画图的问题就基本解决了。
3. 己方坦克的运行可以通过键盘响应事件控制,但敌方则因为是自动运行,就需要有一定其一定的智能性;同时,出现在屏幕上的敌方可能会有较多的数量,这需要为每个敌方开辟一个线程以便能让其独立运行。Java的多线程能力为实现这样的游戏提供了可能。敌人坦克的运行算法也需要进行适当的设置,以免游戏过于简单,单调。
4. 对于双方坦克发出的子弹的控制也需要对其跟踪控制,子弹也需要处在独立的线程中。敌方子弹仅需要扫描用户坦克,而用户坦克需要在每一步扫描所有的敌方坦克。这需要对所有的对象有较好的控制。另外,子弹在运行过程中也需要实时扫描是否碰撞到了相关障碍物或屏幕边界。同时为了游戏的公平性,己方坦克发出的子弹数量必须控制,不能一下发出太多颗。
5. 对于敌我双方的坦克在运动的过程中也需要考虑会不会发生碰撞也就是重叠状况体,也要考虑坦克碰到边缘时不能继续前进,以免跑出有效范围,每前进一步都需要将所有的周围环境进行严格的控制。
6. 游戏的结束、开始、动态画面等信息是构成一个完美程序必不可少的环节。良好的用户界面更是吸引用户的硬实力,为此必须要加入坦克爆炸的效果图以及游戏进行时的音效。
7. 用户运行游戏时需要有分数记录的可能。如何采用合理的记分标准,需要进行适当的设计。记录分数的存储方式也需要有较好的解决方案,可以利用IO流编程来实现将数据存入电脑硬盘中的某个文件中。
1.2 程序流程
本程序采用面向对象的设计模式,对游戏中的所有物体赋予对象的概念和属性。运行程序后允许用户选择执行选项菜单,在开始游戏后将先对背景的所有物体进行绘图。在主程序运行的线程中,画面刷新将以一定的频率采用双缓冲技术对屏幕重绘,实时反映整个游戏的进行状态。用户控制的坦克运行在主线程中
您可能关注的文档
- 机械设计课程设计带式运输机传动系统设计大学毕业设计.doc
- 机械式立体停车设备的plc控制系统设计大学毕业设计.doc
- 基于2dpca的人脸识别算法研究大学毕业设计.doc
- 基于51单片机的病房呼叫系统的设计设计大学毕业设计.doc
- 基于51单片机的电子时钟设计 (完稿)大学毕业设计.doc
- 基于51单片机的篮球计分器设计大学毕业设计.doc
- 基于51单片机的数字电压表设计大学毕业设计.doc
- 基于51单片机的烟雾报警器设计大学毕业设计.doc
- 基于51单片机节能控制器的设计与实现机电设备维修与管理设计大学毕业设计.doc
- 基于51单片机万年历大学毕业设计.doc
- (2026春新版)部编版八年级语文下册《第一单元》PPT课件.pptx
- 2018电力监控系统网络安全监测装置技术规范.docx
- 2022电力监控系统安全防护方案审核要点.docx
- 2014电力电缆光伏系统EN 50618欧标.docx
- (2026春新版)人教版二年级数学下册《第三单元 万以内数的认识》教案.docx
- (2026春新版)人教版二年级数学下册《第四单元 万以内的加法和减法》教案.docx
- (2026春新版)人教版二年级数学下册《综合与实践 时间在哪里》教案.docx
- (2026春新版)苏教版二年级数学下册《综合与实践 时间有多长》教案 .pdf
- (2026春新版)部编版三年级语文下册第3单元(教案).docx
- (2026春新版)部编版三年级语文下册第8单元(教案).docx
最近下载
- 2026春节节后复工安全培训课件.pptx VIP
- 2025年内蒙古计算机基础(专升本)考试真题及参考答案.docx VIP
- 20210528-国信证券-磷化工行业分析框架.pdf VIP
- 三年级数学下册口算题(每日一练,共36套).pdf VIP
- 热力引擎-游戏行业:2024年微信小游戏买量获客报告 -.pdf VIP
- GB 50217-2018 电力工程电缆设计标准.docx VIP
- 精品解析:辽宁省沈阳市于洪区2025-2026学年八年级上学期1月期末数学试题(原卷版).docx VIP
- 2024小游戏混合变现白皮书.pdf VIP
- 2026年精选采购年工作计划3篇(采购部工作计划).docx VIP
- 2026年医药冷链物流行业报告.docx
原创力文档

文档评论(0)