资源简介
源码有很详细的注释,让人一看就懂。
坦克大战这个小项目,如果学懂了,能够独立完成了,可以说你的java275部分就已经熟练掌握了。
坦克大战这个小项目,如果学懂了,能够独立完成了,可以说你的java275部分就已经熟练掌握了。
代码片段和文件信息
package com.ccu.whj;
import java.awt.*;
import java.util.List;
import java.util.ArrayList;
import java.awt.Toolkit;
/**
* 子弹类
* @author 王洪吉
*
*/
public class Bullet {
//子弹的位置
private int bx = 120 by = 120;
//子弹的大小(静态常量)
private static final int B_WIDTH = 10B_HEIGHT = 10;
//子弹速度(静态常量)
private static final int BSPEED = 15;
//子弹是否健在
private boolean live = true;
//子弹的移动方向
Direction bDir;
//取得大管家的引用
private TankWarClient tc;
//子弹是谁发射的,我方还是敌方,我方good == true
private boolean good = true;
//将使用Toolkit中的方法把硬盘上的图片拿到内存里来
private static Toolkit tk = Toolkit.getDefaultToolkit();
private static Image[] bulletImgs = null;
static {
bulletImgs = new Image[] {
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletL.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletLU.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletU.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletRU.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletR.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletRD.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletD.gif“))
tk.getImage(Bullet.class.getClassLoader().getResource(“images/bulletLD.gif“))
};
}
public Bullet(int x int y Direction dir) {
this.bx = x;
this.by = y;
this.bDir = dir;
}
public Bullet(int x int y Direction dir TankWarClient tc) {
this(xydir);
this.tc = tc;
}
public Bullet(int x int y Direction dir TankWarClient tc boolean good) {
this(xydirtc);
this.good = good;
}
public void draw(Graphics g) {
if(!live) return;
switch(bDir) {
case L:
g.drawImage(bulletImgs[0] bx by null);
break;
case LU:
g.drawImage(bulletImgs[1] bx by null);
break;
case U:
g.drawImage(bulletImgs[2] bx by null);
break;
case RU:
g.drawImage(bulletImgs[3] bx by null);
break;
case R:
g.drawImage(bulletImgs[4] bx by null);
break;
case RD:
g.drawImage(bulletImgs[5] bx by null);
break;
case D:
g.drawImage(bulletImgs[6] bx by null);
break;
case LD:
g.drawImage(bulletImgs[7] bx by null);
break;
}
move();
}
public void move() {
switch(bDir) {
case L:
bx -= BSPEED;
break;
case LU:
by -= BSPEED;
bx -= BSPEED;
break;
case U:
by -= BSPEED;
break;
case RU:
by -= BSPEED;
bx += BSPEED;
break;
case R:
bx += BSPEED;
break;
case RD:
by += BSPEED;
bx += BSPEED;
break;
case D:
by += BSPEED;
break;
case LD:
by += BSPEED;
bx -= BSPEED;
break;
}
/*
* 子弹出界则消失
*/
if(bx<0 || bx>800 || by<0 || by>600) {
tc.bullets.remove(this);
}
}
/**
* 子弹击中坦克的实现
* @param t 被击中的坦克
* @return 击中则
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2008-04-11 21:15 TankWar1.3\.classpath
文件 386 2008-04-11 21:15 TankWar1.3\.project
文件 1260 2008-04-11 21:15 TankWar1.3\bin\images\tankU.gif
文件 1719 2008-04-11 21:15 TankWar1.3\bin\images\tankRU.gif
文件 1390 2008-04-11 21:15 TankWar1.3\bin\images\tankRD.gif
文件 1222 2008-04-11 21:15 TankWar1.3\bin\images\tankR.gif
文件 1402 2008-04-11 21:15 TankWar1.3\bin\images\tankLU.gif
文件 1378 2008-04-11 21:15 TankWar1.3\bin\images\tankLD.gif
文件 1224 2008-04-11 21:15 TankWar1.3\bin\images\tankL.gif
文件 1229 2008-04-11 21:15 TankWar1.3\bin\images\tankD.gif
文件 855 2008-04-11 21:15 TankWar1.3\bin\images\bulletU.gif
文件 863 2008-04-11 21:15 TankWar1.3\bin\images\bulletRU.gif
文件 861 2008-04-11 21:15 TankWar1.3\bin\images\bulletRD.gif
文件 839 2008-04-11 21:15 TankWar1.3\bin\images\bulletR.gif
文件 863 2008-04-11 21:15 TankWar1.3\bin\images\bulletLU.gif
文件 864 2008-04-11 21:15 TankWar1.3\bin\images\bulletLD.gif
文件 839 2008-04-11 21:15 TankWar1.3\bin\images\bulletL.gif
文件 852 2008-04-11 21:15 TankWar1.3\bin\images\bulletD.gif
文件 1342 2008-04-11 21:15 TankWar1.3\bin\images\9.gif
文件 1309 2008-04-11 21:15 TankWar1.3\bin\images\8.gif
文件 1261 2008-04-11 21:15 TankWar1.3\bin\images\7.gif
文件 1212 2008-04-11 21:15 TankWar1.3\bin\images\6.gif
文件 1151 2008-04-11 21:15 TankWar1.3\bin\images\5.gif
文件 1086 2008-04-11 21:15 TankWar1.3\bin\images\4.gif
文件 1026 2008-04-11 21:15 TankWar1.3\bin\images\3.gif
文件 936 2008-04-11 21:15 TankWar1.3\bin\images\2.gif
文件 1184 2008-04-11 21:15 TankWar1.3\bin\images\10.gif
文件 868 2008-04-11 21:15 TankWar1.3\bin\images\1.gif
文件 824 2008-04-11 21:15 TankWar1.3\bin\images\0.gif
文件 1017 2008-10-10 18:33 TankWar1.3\bin\com\ccu\whj\Wall.class
............此处省略57个文件信息
- 上一篇:日历时钟java版实现
- 下一篇:搜索引擎的研究与实现Java附源码
相关资源
- 搜索引擎的研究与实现Java附源码
- 日历时钟java版实现
- java 记事本(功能较全面且界面美观)
- 内容丰富的java电子琴
- java做的世界杯程序
-
Java Jfr
ame简单聊天程序 - 飞机订票系统(java)
- 采用JAVA编写VORONOI图
- java sql2000员工管理系统数据库、文档
-
Java ba
se64编码和解码 - java笔试题汇总及答案(另附各大公司
- java版多人聊天室
- java小作业 人事管理系统
- 电话本(Java编写的在控制台上运行)
- java端口扫描程序
- java web网络通讯录
- Java课程设计(15个经典案例)
- java实现POS系统源码
- 俄罗斯方块具体设计(Java描述)带详
- 用JAVA做的通讯录(精简版)
- java数据库版学生成绩管理系统
- 基于java聊天室(gui)
- Java版聊天程序(UDP TCP 多线程)
-
java操作xm
l文件的一个简单代码 - 简单qq聊天(Java socket实现)
- java多人五子棋源码
- java多线程编程 在主线程main中创建两
- JAVA计算器实验报告与源码
- 人事信息管理系统 java课程设计
- 学生信息管理系统 JAVA课程设计
评论
共有 条评论