游戏由服务器端和客户端两部分组成。

在服务器端,ServerModel类主要用来创建主机,ServerView类主要负责服务器端图形界面的面板信息的设置,ServerControler类处理来自服务器视图框架的输入,包括创立通信与帮助信息等,enemy类主要负责敌方坦克的创建,player类主要用来设置玩家的得分及其显示位置等信息,drawingPanel类主要负责服务器端界面窗口的创建和设置,powerUp类主要用来设置子弹属性,例如加快速度、提升火力等,feedbackHandler类主要用来解码从客户端发来的指令字符串,再将其转换成指令来判断游戏失败后玩家是否继续游戏的问题。

在客户端,ClientModel类主要用来设置与服务器的连接,ClientView类主要负责客户端端图形界面的面板信息,ClientControler类主要负责处理来自客户端视图框架的输入和创立通信与帮助信息等,drawingPanel主要用来设置客户端窗口界面,instructionHandler类主要用来解码从服务器端发来的指令字符串,再将其转换成指令来判断游戏失败后玩家是否继续游戏的问题,shield类主要负责设置坦克吃掉头盔图标获得保护时的状态,normalObject类主要用来创建和描绘其他物体对象。

在服务器端和客户端中都存在的类中,Actor类主要用来创建接口,base类主要用来创建基地并设置属性,bullet类主要用来创建子弹并设置属性,Ticker类主要用来创建时间信息,bomb类主要用来创建子弹打出后产生的爆炸效果,river类主要用来创建河道并设置属性,grass类主要负责创建草坪并设置属性,Steelwall类主要用来创建铁墙并设置属性,wall类主要用来创建和设置普通墙及其属性,level类负责创建关卡。如表1,表2所示。

表1  游戏服务器端各类功能表

ServerModel

创建主机

ServerView

设置服务器端图形界面的面板信息

ServerControler

处理来自服务器视图框架的输入

enemy

创建敌方坦克

player

设置玩家的得分及其显示位置等信息

drawingPanel

创建和设置服务器端界面窗口

powerUp

加快子弹速度并提升火力

feedbackHandler

判断指令并执行

Actor

创建接口

base

创建并设置基地

Ticker

创建并设置时间信息

bullet

创建子弹并设置属性

bomb

设置爆炸效果

river

创建河道并设置属性

grass

创建草坪并设置属性

Steelwall

创建铁墙并设置属性

wall

创建普通墙并设置属性

level

创建关卡

表2  游戏客户端各类功能表

ClientModel

设置与服务器的连接

ClientView

设置客户端端图形界面的面板信息

ClientControler

负责处理来自客户端视图框架的输入

drawingPanel

设置客户端窗口界面

instructionHandler

判断指令并执行

shield

设置玩家坦克防护盾

normalObject

创建并描绘其他的物体对象

level

创建关卡

base

创建并设置基地

Ticker

创建并设置时间信息

bullet

创建子弹并设置属性

bomb

设置爆炸效果

river

创建河道并设置属性

wall

创建普通墙并设置属性

客户端玩家输入主机地址来完成与服务器玩家的连接,双方通过使用指令键来操控自己的坦克,敌方坦克和子弹则是自主随机运行,游戏中会对玩家的分数进行记录,还增加了特殊武器,另外,此游戏还进行了小小的创新,添加了通信功能,客户端与服务器端的连接访问通过使用套接字Socket来实现。

其总体功能如图1所示。

3.2 坦克大战总体流程图

如图2所示。

图2  总体流程图

游戏启动测试

运行Eclipse中的server项目和client项目或双击server文件夹和client文件夹下的Play.BAT文件来运行游戏,游戏启动成功,看到了游戏界面。如图3所示。

具体内容较多,可以参看

链接:https://pan.baidu.com/s/1FdglA0IQ9fs_YM1A0XyQsQ?pwd=pqzw 
提取码:pqzw

基于Java的坦克大战游戏的设计与实现相关推荐

  1. 基于Java的坦克大战游戏的设计与实现(论文+PPT+源码)

    幻灯片1 基于Java的坦克大战游戏的设计与实现 幻灯片2 CONTENTS 1 4 设计工具与相关技术 详细设计 2 5 系统分析 结论 3 总体设计 幻灯片3 PPT模板下载:http://www ...

  2. 基于Java的飞机大战游戏的设计与实现论文

    源码下载 http://www.byamd.xyz/hui-zong-1/ 摘 要 现如今,随着智能手机的兴起与普及,加上4G(the 4th Generation mobile communicat ...

  3. 基于Java的飞机大战游戏的设计与实现(含源文件)

    欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 基于Java的飞机大战游戏的设计与实现 摘   要 现如今,随着智能手机的兴起与普及,加上4G( ...

  4. 毕业设计 基于Java的飞机大战游戏的设计与实现

    文章目录 前言 一.项目设计 1. 模块设计 功能需求 游戏状态控制功能模块 游戏难度的调整模块 游戏界面绘画功能模块 玩家游戏控制功能模块 2. 实现效果 二.部分源码 项目源码 前言 今天学长向大 ...

  5. 基于Java的飞机大战游戏的设计与实现

    项目介绍 飞机大战主要需要我方飞机和敌方飞机,还有子弹,特殊nPC,开始背景,结束背景,以及背景音乐.我方飞机可以随意移动,敌方飞机无规律出现.游戏玩家通过鼠标移动控制飞机移动,我方飞机在游戏开始时就 ...

  6. 基于Java的飞机大战游戏的设计与实现(论文+源码)

    毕业设计(论文)任务书 第1页 毕业设计(论文)题目:基于Java的飞机大战游戏的设计与实现毕业设计(论文)要求及原始数据(资料):1.综述基于Java的飞机大战游戏的现状:2.深入了解Java的设计 ...

  7. Java练手项目2:基于Java的坦克大战游戏(学习Java必备!!!)

    1.引言 随着社会和时代的进步,来自各个方面的压力让人没精打采,为了分解人们的压力,休养那变得疲顿的头脑和劳累的身心,特设计了坦克大战小游戏,游戏操作非常容易,只要将手指放在键盘上敲击相关的游戏键就可 ...

  8. 基于java的坦克大战游戏-计算机毕业设计

    项目介绍 坦克游戏是在Eclipse环境下使用java编程.它的主要功能有:坦克能够四处移动,能够发射子弹打击敌人,敌人的坦克能够自由移动,能够产生模拟爆炸效果,能够产生障碍物,能够增长生命.本游戏有 ...

  9. 基于java的坦克大战游戏

    坦克游戏是在Eclipse环境下使用java编程.它的主要功能有:坦克能够四处移动,能够发射子弹打击敌人,敌人的坦克能够自由移动,能够产生模拟爆炸效果,能够产生障碍物,能够增长生命.本游戏有游戏主窗体 ...

最新文章

  1. 【课堂笔记系列】二进制
  2. Oracle SQL高级编程——分析函数(窗口函数)全面讲解
  3. 细粒度情感分析:还在用各种花式GNN?或许只用RoBERTa就够了
  4. php与mysql字符集,php与mysql字符集编码问题
  5. 快速检索并引用你在CSDN上所有的博文笔记
  6. 全景视频的跟踪与合成方法
  7. linux下的nfs服务配置
  8. 成幻Online Judge 1.00 Beta 正式发布 2007.6.22
  9. Java反编译工具-JD-GUI下载以及使用
  10. 它来了,它来了,最强目标检测算法YOLO v4,它真的来了!!!
  11. Python编程基础14:数据库编程
  12. 天梯赛 L2-011. (二叉树) 玩转二叉树
  13. java使用BZip算法压缩解压缩文件、数据流、byte[]字节数组
  14. Struts配置文件的加载顺序
  15. [NOIp 2012]同余方程
  16. 苹果录屏功能没有声音_安卓最高清的录屏软件,没有之一,已解锁VIP功能!
  17. FPS游戏方框透视原理分析及实现-C++语言
  18. 什么是网络编程(一)
  19. 2015 沈阳 Frogs
  20. Elasticsearch - 短语匹配(match_phrase)以及slop参数

热门文章

  1. 企业内部轻量级DNS首选方案: dnspod-sr
  2. vc 怎样连接mysql数据库连接_vc 怎样连接mysql数据库
  3. 单招计算机英语面试口语,单招面试英语自我介绍
  4. 春校赛--求索溪边树下的小瓜
  5. 鼓噪并无裨益,区块链应回归本质才是根本!
  6. jackson转换json大写_jackson json序列化 首字母大写 第二个字母需小写
  7. 钉钉获取审批java_打造钉钉事件分发平台之钉钉审批等事件处理
  8. Synopsys系列软件License制作——亲测可用
  9. 云环境 Open代理 server 快速搭建指南
  10. php数据库连接教程,php如何连接数据库的方法