📄 jump.java
字号:
package net.frog_parrot.jump;import javax.microedition.midlet.*;import javax.microedition.lcdui.*;/** * This is the main class of the tumbleweed game. * * @author Carol Hamer */public class Jump extends MIDlet implements CommandListener { //--------------------------------------------------------- // game object fields /** * the command to end the game. */ private Command myExitCommand = new Command("Exit", Command.EXIT, 99); /** * the command to start moving when the game is paused. */ private Command myGoCommand = new Command("Go", Command.SCREEN, 1); /** * the command to pause the game. */ private Command myPauseCommand = new Command("Pause", Command.SCREEN, 1); /** * the command to start a new game. */ private Command myNewCommand = new Command("Play Again", Command.SCREEN, 1); /** * the the canvas that all of the game will be drawn on. */ JumpCanvas myCanvas; /** * the thread that advances the cowboy. */ GameThread myGameThread; //----------------------------------------------------- // initialization and game state changes /** * Initialize the canvas and the commands. */ public Jump() { myCanvas = new JumpCanvas(this); myCanvas.addCommand(myExitCommand); myCanvas.addCommand(myGoCommand); myCanvas.setCommandListener(this); } /** * Switch the command to the play again command. */ void setNewCommand() { myCanvas.removeCommand(myPauseCommand); myCanvas.removeCommand(myGoCommand); myCanvas.addCommand(myNewCommand); } /** * Switch the command to the go command. */ void setGoCommand() { myCanvas.removeCommand(myPauseCommand); myCanvas.removeCommand(myNewCommand); myCanvas.addCommand(myGoCommand); } /** * Switch the command to the pause command. */ void setPauseCommand() { myCanvas.removeCommand(myNewCommand); myCanvas.removeCommand(myGoCommand); myCanvas.addCommand(myPauseCommand); } //---------------------------------------------------------------- // implementation of MIDlet /** * Start the application. */ public void startApp() throws MIDletStateChangeException { myGameThread = new GameThread(myCanvas); myCanvas.start(); } /** * stop and throw out the garbage. */ public void destroyApp(boolean unconditional) throws MIDletStateChangeException { myGameThread.requestStop(); myGameThread = null; myCanvas = null; System.gc(); } /** * request the thread to pause. */ public void pauseApp() { setGoCommand(); myGameThread.pause(); } //---------------------------------------------------------------- // implementation of CommandListener /* * Respond to a command issued on the Canvas. * (either reset or exit). */ public void commandAction(Command c, Displayable s) { if(c == myGoCommand) { myCanvas.removeCommand(myGoCommand); myCanvas.addCommand(myPauseCommand); myGameThread.go(); } else if(c == myPauseCommand) { myCanvas.removeCommand(myPauseCommand); myCanvas.addCommand(myGoCommand); myGameThread.go(); } else if(c == myNewCommand) { myCanvas.removeCommand(myNewCommand); myCanvas.addCommand(myGoCommand); myGameThread.requestStop(); myGameThread = new GameThread(myCanvas); System.gc(); myCanvas.reset(); } else if(c == myExitCommand) { try { destroyApp(false); notifyDestroyed(); } catch (MIDletStateChangeException ex) { } } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -