⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tankcanvas.java

📁 Tank 手机游戏 J2ME 简单么明了
💻 JAVA
字号:
package pack05;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.game.LayerManager;
import javax.microedition.lcdui.game.TiledLayer;

public class TankCanvas extends GameCanvas implements Runnable {
	LayerManager layerManager;
	MapContainer map;
	Tank tank;
	boolean isPlay=true;
	public TankCanvas()
	{		
		super(true);
		layerManager=new LayerManager();
		map=new MapContainer();
		map.loadMap(1);
		tank=new Tank(map);		
		layerManager.append(tank);
		TiledLayer[] layers=map.getLayers();
		for(int i=0;i<layers.length;i++)
		{
			layerManager.append(layers[i]);
		}
	}
	public void paint(Graphics g) {
		g.setColor(0);
		g.fillRect(0,0,this.getWidth(),this.getHeight());		
		layerManager.paint(g, 0, 0);
	}
	public void start()
	{
		Thread t=new Thread(this);
		t.start();
	}
	public void run() {
		while(isPlay)
		{
			tick();
			repaint();
			try {
				Thread.sleep(20);
			} catch (InterruptedException e) {				
				e.printStackTrace();
			}
		}
	}
	private void tick() {		
		int key=this.getKeyStates();
		if((key&GameCanvas.LEFT_PRESSED)!=0)
			tank.tryMove(Tank.LEFT);
		if((key&GameCanvas.UP_PRESSED)!=0)
			tank.tryMove(Tank.UP);
		if((key&GameCanvas.RIGHT_PRESSED)!=0)
			tank.tryMove(Tank.RIGHT);
		if((key&GameCanvas.DOWN_PRESSED)!=0)
			tank.tryMove(Tank.DOWN);
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -