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

📄 newgame.java

📁 只是做了一个简单的游戏界面~~后续工作还在进行~~很傻瓜的
💻 JAVA
字号:
import java.io.IOException;

import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.game.LayerManager;
import javax.microedition.lcdui.game.Sprite;


public class NewGame extends GameCanvas implements Runnable  {
	
	Display dispnew;                   //再定义个DISPLAY 以便在这个类中显示当前内容
	MyCanvas newcanvas;

	Image planImage_1,planImage_2,backImage;
	Graphics g;
	LayerManager layManager;
	Sprite plane,bullet,back;
	int height=getHeight(),width=getWidth(),drawx=100,drawy=220,x=0,y=0;

	protected  NewGame(Display dis, MyCanvas canvas) {
		// TODO 自动生成构造函数存根
		super(true);
		dispnew=dis;        
		newcanvas=canvas;
		try {
			
			planImage_1=Image.createImage("/plane.png");
			planImage_2=Image.createImage("/bullet.png");
			backImage=Image.createImage("/back.png");
		} catch (IOException e) {
			// TODO 自动生成 catch 块
			e.printStackTrace();
		}
		g=this.getGraphics();

		plane=new Sprite(planImage_1,32,32);   //给飞机精灵加载上图
		bullet=new Sprite(planImage_2,12,12);  //给子弹精灵加载上图
		back=new Sprite(backImage,240,300);
		layManager=new LayerManager();
		layManager.append(plane);          //添加精灵
		layManager.append(bullet);
		layManager.append(back);
		
		bullet.setVisible(false);
		//plane.setPosition(60,180);
		//bullet.setPosition(50,70);
		
		Thread t=new Thread(this);
		t.start();

		
		// TODO 自动生成构造函数存根
	}
	public void keyPressed(){
		int keyState=this.getKeyStates();
		if((keyState & UP_PRESSED)!=0){
			if(drawy<=-15){
				drawy=-15;
			}else{
				drawy-=2;
			}
			
		}
		if((keyState & DOWN_PRESSED)!=0){
			if(drawy>=241){
				drawy=241;
			}else{
				drawy+=2;
			}
			
		}
		if((keyState & LEFT_PRESSED)!=0){
			if(drawx<=16){
				drawx=16;
			}else{
				drawx-=2;
			}
			
			
			
		}
		if((keyState & RIGHT_PRESSED)!=0){
			if(drawx>=224){
				drawx=224;
			}else{
				drawx+=2;
			}
			
		}
		if((keyState & FIRE_PRESSED)!=0){
			
			bullet.setVisible(true);
			draw();
			}
		}
	
	private void draw() {
		  x=drawx;
          y=drawy;
		 for(int i=0;i<getHeight();i++){
			 clear();
			 bullet.setPosition(x,y);
			 y-=1;
		     layManager.paint(g,0,0);
			 flushGraphics();
		    }
		 bullet.setVisible(false);
		
	}
	private void clear() {
		g.setColor(255,255,255);
		g.fillRect(0,0,getWidth(),getHeight());
		g.setColor(0,0,0);
		// TODO 自动生成方法存根
		
		
	}
	public void run() {
		
		while(true){
			clear();
			keyPressed();
            plane.setPosition(drawx-15,drawy+15);
          
			try {
				Thread.sleep(5);
			} catch (InterruptedException e) {
				// TODO 自动生成 catch 块
				e.printStackTrace();
				}
			layManager.paint(g,0,0);
			flushGraphics();
			}
		}
	}


	



⌨️ 快捷键说明

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