添加敌方坦克

master
kn5886348135 4 years ago
parent 64198d3eeb
commit 41e9c91ac8

@ -9,7 +9,7 @@ public class Bullet {
private int x, y; private int x, y;
private Dir dir; private Dir dir;
public boolean live = true; private boolean live = true;
private TankFrame tf; private TankFrame tf;
@ -21,7 +21,9 @@ public class Bullet {
} }
public void paint(Graphics g) { public void paint(Graphics g) {
if (!live) tf.bullets.remove(this); if (!live) {
tf.bullets.remove(this);
}
switch (dir) { switch (dir) {
case LEFT: case LEFT:
g.drawImage(ResourceMgr.bulletL, x, y, null); g.drawImage(ResourceMgr.bulletL, x, y, null);

@ -3,6 +3,12 @@ package com.example.tankbattle;
public class Main { public class Main {
public static void main(String[] args) throws InterruptedException { public static void main(String[] args) throws InterruptedException {
TankFrame tf = new TankFrame(); TankFrame tf = new TankFrame();
// 初始化敌方坦克
for (int i = 0; i < 5; i++) {
tf.tanks.add(new Tank(50 + i * 80, 200, Dir.DOWN, tf));
}
while (true) { while (true) {
Thread.sleep(50); Thread.sleep(50);
tf.repaint(); tf.repaint();

@ -7,8 +7,8 @@ public class Tank {
private Dir dir = Dir.DOWN; private Dir dir = Dir.DOWN;
private static final int SPEED = 5; private static final int SPEED = 5;
private static int WIDTH = ResourceMgr.tankD.getWidth(); public static int WIDTH = ResourceMgr.tankD.getWidth();
private static int HEIGHT = ResourceMgr.tankD.getHeight(); public static int HEIGHT = ResourceMgr.tankD.getHeight();
private boolean moving = false; private boolean moving = false;

@ -9,13 +9,13 @@ import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter; import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; import java.awt.event.WindowEvent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; import java.util.List;
public class TankFrame extends Frame { public class TankFrame extends Frame {
Tank myTank = new Tank(200, 200, Dir.DOWN, this); Tank myTank = new Tank(200, 400, Dir.DOWN, this);
List<Tank> tanks = new ArrayList<>();
List<Bullet> bullets = new ArrayList<>(); List<Bullet> bullets = new ArrayList<>();
public static final int GAME_WIDTH = 800,GAME_HEIGHT=600; public static final int GAME_WIDTH = 800,GAME_HEIGHT=600;
@ -59,6 +59,10 @@ public class TankFrame extends Frame {
for (int i = 0; i < bullets.size(); i++) { for (int i = 0; i < bullets.size(); i++) {
bullets.get(i).paint(g); bullets.get(i).paint(g);
} }
for (int i = 0; i < tanks.size(); i++) {
tanks.get(i).paint(g);
}
// for (Iterator<Bullet> it = bullets.iterator(); it.hasNext()) { // for (Iterator<Bullet> it = bullets.iterator(); it.hasNext()) {
// Bullet b = it.next(); // Bullet b = it.next();
// if (!b.live) it.remove(); // if (!b.live) it.remove();

Loading…
Cancel
Save