您的位置:

包含坦克大战java的词条

本文目录一览:

用java做《坦克大战》需要积累那些java知识??

java AWT Swing 还有一些工具类 比如说Random(获取随机数的)一些简单数学计算在程序中的应用 另外还需要线程来控制画面刷新 也需要一点线程知识 另外就是一些游戏用到的基础知识了 比如说碰撞检测 双缓冲 一些paint方法的应用 如根据坦克方向将坦克画出来等等 都比较简单

JAVA 坦克大战

import java.awt.*;

import javax.swing.*;

public class Tank extends JFrame {

mypane mp=null;

Obj[] objs=new Obj[0];

public Tank() {

setTitle("坦克大战");

setSize(800,600);

pro();

add(new mypane(objs));

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setLocationRelativeTo(null);

//在这里添加键盘事件、鼠标事件、让坦克移动,修改objs数组对象让他们移动

setVisible(true);

}

private void pro(){

Obj[] tmp=new Obj[objs.length+1];

System.arraycopy(objs,0,tmp,0,objs.length);

tmp[tmp.length-1]=new Obj(1,1,0,1);

objs=tmp;

int num=(int)(Math.random()*5)+1;

for(int i=0;inum;i++){

int x=(int)(Math.random()*getWidth())+1;

int y=(int)(Math.random()*getHeight())+1;

int dir=(int)(Math.random()*4);

Obj[] dst=new Obj[objs.length+1];

System.arraycopy(objs,0,dst,0,objs.length);

dst[dst.length-1]=new Obj(x,y,1,dir);

objs=dst;

}

}

public static void main(String[] args) {

new Tank();

}

}

class Obj{

int x,y;//坦克坐标

int type;

int dir;

public Obj(int x,int y,int type,int dir){

this.x=x;

this.y=y;

this.type=type;

this.dir=dir;

}

}

class mypane extends JPanel{

Obj[] objs;

public mypane(Obj[] objs){

this.objs=objs;

}

public void paint(Graphics g) {

super.paint(g);

for(int i=0;iobjs.length;i++){

Obj obj=objs[i];

drawtank(obj.x,obj.y, g, obj.type, obj.dir);

}

g.dispose();

}

public void drawtank(int x,int y,Graphics g, int type,int direct) {

/*type 为坦克类型,敌方,我方*/

switch(type) {

case 0://我方坦克,设置为红色

g.setColor(Color.red);

break;

case 1://敌方坦克,设置为蓝色

g.setColor(Color.blue);

break;

}

switch(direct) {

case 0://坦克方向朝上

g.drawRect(0+x, 0+y, 5, 30);

g.drawRect(5+x, 5+y, 10,20);

g.drawRect(15+x,0+y, 5,30);

g.drawLine(10+x, 15+y, 10+10+x, 15+y);

break;

case 1://坦克方向朝右

g.drawRect(0+x, 0+y, 30, 5);

g.drawRect(5+x, 5+y, 20, 10);

g.drawRect(0+x, 15+y, 30, 5);

g.drawLine(15+x, 10+y, 30+15+x, 10+10+y);

break;

case 2://方向向下

g.drawRect(0+x, 0+y, 5, 30);

g.drawRect(5+x, 5+y, 10,20);

g.drawRect(15+x,0+y, 5,30);

g.drawLine(10+x, 15+y, 10+10+x, 30+15+y);

break;

case 3://方向向左

g.drawRect(0+x, 0+y, 30, 5);

g.drawRect(5+x, 5+y, 20, 10);

g.drawRect(0+x, 15+y, 30, 5);

g.drawLine(15+x, 10+y, 15+x, 10+10+y);

break;

}

}

}

关于JAVA坦克大战中坦克移动的问题,总有问题 不知道哪儿错了,求高手解答

用多线程做的坦克大战,这里提供src目录,运行请自己建立工程,并将src目录下的所有包文件导入工程src目录,main包运行;很多年前写的希望能帮到你

java坦克大战源代码 怎么导入

坦克大战源代码应该是个完整的项目吧。

对于完整的带项目配置文件的java源码,按步骤操作即可:

File - Import - General

选择Existing Projects into Workspace,选择要导入的文件,点击“finish",OK。

java swing坦克大战,如何实现发子弹

创建子弹形状,初始位置为坦克前方,使用循环在坦克朝向上坐标递加或递减,并重新绘制子弹。就能模拟子弹的行进。判断击中,可以用形状是否相交的函数。

包含坦克大战java的词条

2022-11-29
包含java坦克大战的词条

2022-11-29
包含java编写的坦克大战下载的词条

2022-11-12
包含坦克大战js源码的词条

本文目录一览: 1、js实现坦克大战第一关。控制坦克上下左右移动。函数的onkeydown问题。 2、java坦克大战源代码 怎么导入 3、历史上最大规模的坦克大战 4、用js可以编写坦克大战了相当于

2023-12-08
包含java实现经典游戏坦克大战的词条

2022-11-12
java坦克大战的简单介绍

2023-01-09
java最简单坦克大战的简单介绍

2022-11-10
java坦克的简单介绍

2023-01-09
坦克大战js代码,js飞机大战代码

本文目录一览: 1、一个简单的坦克大战游戏问题。。用html+css+js来做。。 2、js实现坦克大战第一关。控制坦克上下左右移动。函数的onkeydown问题。 3、用js可以编写坦克大战了相当于

2023-12-08
关于疯狂坦克java版的信息

2022-11-22
史上最经典java入门基础视频(史上最经典java入门基础视

2022-11-16
包含java基础笔记day1的词条

2022-11-20
包含cjsox的词条

本文目录一览: 1、侠盗飞车圣安地列斯密码是什么 2、侠盗猎车手作弊码大全 3、侠盗猎车手圣安地列斯怎么弄相机 秘籍 4、侠盗猎车手全部作弊码 5、侠盗猎车圣安地列斯秘籍狙击枪 侠盗飞车圣安地列斯密码

2023-12-08
c语言坦克教学,C语言教程

2023-01-05
java学习笔记(java初学笔记)

2022-11-14
包含cadtjs的词条

本文目录一览: 1、CAD拉伸的问题,我希望整体拉长些 2、求CAD 2008 注册机~~~紧急~~~ 3、世界所有货币的英文简称? 4、怎样查看CAD图纸的大小? 5、高分跪求CAD2010激活码

2023-12-08
包含java读书笔记02的词条

2022-11-20
java笔记,大学java笔记

2022-11-28
java笔记,尚硅谷java笔记

2022-12-01
Java课程设计,java课程设计成绩管理系统

2023-01-09