main.java

来自「一个很不错的j2me的rpg游戏的源码」· Java 代码 · 共 80 行

JAVA
80
字号
package mobileRPG.client;

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class Main extends MIDlet implements CommandListener, Runnable {
	
    public Display display;
    public ImageSetLoader imageSetLoader;
    private Command exitCommand = new Command("Exit", Command.EXIT, 60);
    private Command changeCommand = new Command("Change", Command.ITEM, 60);
    public Displayable canvasTemp;
    public MapCanvas map;
    
    // Character Rotation
    public String[] charName;
    public int charIndex;
	
    public Main() {
        display = Display.getDisplay(this);
        
        charName = new String[2];
        charName[0] = "/res/BlackMage.ent";
        charName[1] = "/res/BlackBelt.ent";
        charIndex = 0;
    }
	
    public void startApp() {
    	(new Thread(this)).start();
    }
    
    public void run() {
    	imageSetLoader = new ImageSetLoader(this);
    	map = new MapCanvas(this, "/res/Town.map");
    	map.addCommand(changeCommand);
    	setCanvas(map);
    }
    
    public void showLoadingScreen() {
    	canvasTemp = display.getCurrent();
    	setCanvas(imageSetLoader);
    }
    
    public void hideLoadingScreen() {
    	if (canvasTemp != null) {
    		display.setCurrent((Canvas)canvasTemp);
    		canvasTemp = null;
    	}
    }
    
    public void pauseApp() {}

    public void destroyApp(boolean unconditional) {
        display.setCurrent(null);
    }

    public void commandAction(Command c, Displayable s) {
        if (c == exitCommand) {
            destroyApp(false);
            notifyDestroyed();
        } else if (c == changeCommand) {
        	charIndex++;
        	if (charIndex >= charName.length) {
        		charIndex = 0;
        	}
        	map.loadEntity(charName[charIndex]);
        } else {
            System.out.println("Unknown command issued " + c);
        }
    }
    
    public void setCanvas(Canvas canvas) {
    	canvas.addCommand(exitCommand);
        canvas.setCommandListener(this);
        display.setCurrent(canvas);
        
    }

}

⌨️ 快捷键说明

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