前言

在前面对于Java初学者开发简单的桌面游戏的碰撞检测的总结中,笔者特意去翻了翻U盘里面

的东西。发现以前用Java做的Tank大战游戏还静静的躺在那个角落。现在将其分享出来。陆续的

也会将以前做过的小玩意分享出来。

功能简述

笔者完成的Tank大战支持双人游戏,游戏的模式有点类似于小霸王学习(目前只支持双人游戏)

机上的Tank大战游戏。有什么功能特点笔者就不多说了,相信大家都明白的。对于双人游戏模式

两个玩家并非在一台电脑上操作Tank,玩家可以在不同电脑上进行“联机”操作。

基于这个特点,涉及到了Socket通信,多线程,联机的两方必须知道对方的情况,这就需要

实时的更新地图信息、子弹信息、Tank位置信息。多线程的应用主要也是集中在这一块。不过需要

指出的是,笔者这里的线程处理还是有缺陷的,就是在游戏正常运行一段时间之后对方的操作可能

“卡死”,看不见对方的操作。

这是由于刷新的东西过多,有些传递过来的信息已经无用,笔者没有对其进行处理造成的。

简单的完成了一些地图效果,这里只在主机端可以看到,没有实现对地图的更新。

地图上有各种各样的障碍物,Tank子弹发射撞击到上面的效果根据障碍物的类型不同的,例如

如果为墙体,则墙体爆炸,若为铁块则产生爆炸效果,但是铁块不消失。不过遗憾的是最新版本

笔者不知去了哪,读者可以自行完成这块。

这个版本不是最新的版本,详细的功能笔者也没法详述,读者自行尝试吧!

好了,说了一大堆的废话,我们来看看实际效果图吧!

be与Java联机 java正版联机_新版本

be与Java联机 java正版联机_be与Java联机_02

be与Java联机 java正版联机_Java_03

be与Java联机 java正版联机_be与Java联机_04