坦克大战源代码.docVIP

  • 15
  • 0
  • 约2.45万字
  • 约 27页
  • 2024-03-09 发布于北京
  • 举报

/**

坦克大战

*/

packagecom.tankgame1;

importjava.awt.*;

importjavax.swing.*;

importjava.awt.event.*;

importjava.util.*;

publicclassTankGame1_0extendsJFrameimplementsKeyListener,ActionListener{

GamePanelgp;

StartPanelsp;

JMenuBarjmb=null;

JMenujm=null,jm1=null;

JMenuItemjmi1,jmi2,jmi3,jmi4;

TankGame1_0(){

jmb=newJMenuBar();

jm=newJMenu(文件);

jm1=newJMenu(游戏设置);

jmi1=newJMenuItem(新游戏);

jmi1.setActionCommand(NEW);

jmi1.addActionListener(this);

jmi2=newJMenuItem(暂停);

jmi2.setActionCommand(PAUSE);

jmi2.addActionListener(this);

jmi3=newJMenuItem(继续);

jmi3.setActionCommand(CONTINUE);

jmi3.addActionListener(this);

jmi4=newJMenuItem(退出);

jmi4.setActionCommand(QUIT);

jmi4.addActionListener(this);

jm.add(jmi1);

jm.add(jmi2);

jm.add(jmi3);

jm.add(jmi4);

jmb.add(jm);

jmb.add(jm1);

// gp=newGamePanel();

// Threadt=newThread(gp);

// t.start();

// //注册一下接收键盘的动作

// this.addKeyListener(this);

// //设置界面

// this.add(gp);

sp=newStartPanel();

Threadt=newThread(sp);

t.start();

this.add(sp);

this.setJMenuBar(jmb);

this.setBounds(180,20,305,530);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

publicstaticvoidmain(String[]args){

TankGame1_0tg=newTankGame1_0();

}

@Override

publicvoidkeyPressed(KeyEventarg0){

if(!Record.pause){

switch(arg0.getKeyCode()){

caseKeyEvent.VK_UP:

if(!gp.mtk.isTouchTank()!gp.mtk.isTouchRiver())

gp.mtk.moveUp();

gp.mtk.setDirect(0);

break;

caseKeyEvent.VK_DOWN:

if(!gp.mtk.isTouchTank()!gp.mtk.isTouchRiver())

gp.mtk.moveDown();

gp.mtk.setDirect(2);

break;

caseKeyEvent.VK_LEFT:

if(!gp.mtk.isTouchTank()!gp.mtk.isTouchRiver())

gp.mtk.moveLeft();

gp.mtk.setDirect(3);

break;

caseKeyEvent.VK_RIGHT:

if(!gp.mtk.isTouchTank()!gp.mtk.isTouchRiver())

gp.mtk.moveRight();

gp.mtk.setDirect(1);

break;

}

if(arg0.getKeyCode()==A||arg0.getKeyCode()==a){

文档评论(0)

1亿VIP精品文档

相关文档