tankwar专题

TankWar 单机(JAVA版)版本2.0.1 在地图中加入墙体

在地图中加入障碍物,首先说说我的思路。 我把整个panel看作一个二维的数组,然后为这个二维数组赋不同的值。 二维数组的值表示我们地图所需的土墙  石头墙  灌木丛 水池等。 在加载地图时我们遍历地图集合,画出地图。 首先新建了一个Wall类 package tankWar;import java.awt.Graphics;import java.awt.Image;import

TankWar 单机(JAVA版)版本1.7版本1.8 坦克死亡的爆炸和画出多个敌方坦克

首先看版本1.8  添加多辆坦克。 还记得在前面版本1.5中我们用了一个集合用来保存敌方坦克吗? 用处就是在这里了   修改addEnemyTanks方法  循环多次  就能创建多个坦克了 比如加入八个敌方坦克 // 向集合中添加敌方坦克private void addEnemyTanks() {// TODO Auto-generated method stubfor(i

TankWar 单机(JAVA版) 提前优化 图形化

有人给我说画的坦克太难看了   本来我是打算在最后在用图片的 既然这样  那么在后面我们就使用图片吧 所有图片都在源代码里面 请自己下载  在最下面 到目前我们用到图片的地方只有子弹,敌方坦克和我方坦克的八个方向  在这里我们使用ToolKit工具箱里面的getImage方法来读取本地图片  当然ImageIO也行  自己选择 首先tank类实例化一个ToolKit对象

TankWar 单机(JAVA版) 版本1.6 将敌人坦克击毙

可以看看ppt的步骤。其实思路也是很简单 把坦克 和子弹都看作一个矩形 Rectangle 然后使用 Rectangle类中的碰撞检测方法 A.intersects(B) 如果返回值为true就表示矩形A和矩形B相交,即碰撞。 既然有了思路 那么就要一点一点解决问题。 首先要获得子弹的矩形对象和坦克的矩形对象 分别在子弹类中和坦克类中新增一个getRec方法 public R

TankWar 单机(JAVA版) 版本1.5 画一辆敌方的坦克

既然是敌方坦克  肯定和我方坦克有区别  那么就在Tank类中定义一个布尔型的good变量 用来区分敌我坦克,同时将good变量放入构造方法。 public Tank(int x, int y, int width, int height,boolean good) {super();this.x = x;this.y = y;this.width = width;this.heigh

TankWar 单机(JAVA版) 版本1.0~版本1.4 坦克方向打出多发子弹 并解决子弹不消亡问题

首先新建一个子弹类 由于要画子弹,所以变量肯定要有坐标x,y,宽高width,height.方法要有draw方法用来绘制子弹 而子弹移动还有子弹的方向dir.子弹的移动速度speed。 要判断子弹是否消亡 所以还要布尔变量bLive表示当前子弹的存亡状态 所有变量的Get set方法一定要有哦。 只有这些  你会发现子弹是不会动的  只会停留在原地

TankWar 单机(JAVA版) 版本0.7~版本0.9 让坦克实现八个方向的移动

运行结果: 版本0.7的项目要求是将坦克单独封装为一个类  在前面我们一直就是按照把坦克封装承类实现的。所以这里就不再写了。 然后就是版本0.8和版本0.9了  控制坦克八个方向移动。 首先说一下思路: 我们可以设置四个方向的boolean变量 然后根据键盘事件  来判断你按了哪个键来使对应方向的booelan值设置为true 然后根据方向的boolean值来判断方向,最

TankWar 单机(JAVA版) 版本0.4~版本0.6 让坦克动起来

版本0.4的项目要求是让坦克动起来 由于在版本0.6也是让坦克听从我们指挥  等会再写 在这里主要是建立一个屏幕刷新线程  使屏幕达到时时刷新的效果 代码如下: public class updateThread extends Thread{@Overridepublic void run() {// TODO Auto-generated method stubwhile(tr

TankWar 单机(JAVA版) 版本0.3 画出坦克

其实就是通过自定义的panel  重写里面的paint方法  使用Graphics类画一个圆 然后把自定的panel添加到窗口中 由于想到tank不能只画一个  所以我们封装一个tank类  里面有一个draw方法 用来画 坦克 通过实例化tank  调用draw方法就能实现画tank了 具体代码如下: Tank类 package tankWar;import java.awt