Java实现坦克大战
主要功能
- 键盘监听,接收游戏者的操作
- 坦克在游戏界面中移动
- 坦克发射子弹
实现的类
- 坦克类:Tank
- 子弹类:Bullet
- 方向类:Direction
- 游戏界面类:GameInterface
- 键盘监听类:Monitor
- 程序入口类:Main
效果预览
编程环境
- 操作系统 window 10
- 虚拟机 Java SE-11
- 开发环境 Eclipse Version: 2019-03 (4.11.0)
参考
在B站上看了一个视频,就一个小时左右吧,基本是fallow他写的,有部分改动。这里把链接放上来:Java简易坦克大战1.0 编程视频
小白练手,小白练手,小白练手
代码
下面就直接放代码了
坦克类
package game.tankbattle;
import java.awt.Color;
import java.awt.Graphics;
/**
* 坦克类
* tank_x,tank_y:坦克的位置坐标
* speed:按键一次坦克移动的距离,运动速度
* game_interferce:坦克所在的游戏界面
* setTank_x(),setTank_y():设置坦克的坐标,控制坦克坐标不会超出游戏界面
* drawTank():画出坦克,根据坦克移动方向画出坦克炮筒。
* move():坦克响应键盘操作而移动
* shootBullet():发射子弹
*
*/
public class Tank {
private int tank_x;
private int tank_y;
private int tank_width; //坦克宽度
private int speed = 20;// 移动速度
public GameInterface game_interface;
Direction tank_dir = Direction.UP;
public Tank(int tank_x,int tank_y,int tank_width,GameInterface game_interface) {
this.tank_x