📄 supermate.java
字号:
/*
Function
//Download by http://www.codefans.net
BUG
5.有PointNull错误
6.GAMEOVER显示不出
*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;
public class SuperMate extends MIDlet implements CommandListener
{
private Display display;
public static int DISPLAY_LOGO = 1;
public static int DISPLAY_MAIN = 2;
public static int DISPLAY_PLAY = 3;
public static int DISPLAY_HELP = 4;
public static int DISPLAY_AHOUT = 5;
public static LogoCanvas logoCanvas;
public static MainCanvas mainCanvas;
public static PlayCanvas playCanvas;
private static SuperMate instance;
public int gameWidth,gameHeight; //游戏绘图大小
//构造函数
public SuperMate()
{
display = Display.getDisplay(this);
instance = this;
gameWidth = 120;
gameHeight = 142;
}
//程序初使化
public void startApp()
{
changeScene(1);
}
//命令处理模块
public void commandAction(Command c, Displayable s)
{
}
//析构函数
public void destroyApp(boolean unconditional)
{}
public void pauseApp()
{
display.setCurrent(null);
}
//退出程序
public void exit()
{
destroyApp(false);
notifyDestroyed();
}
public void changeScene(int Scene)
{
switch (Scene)
{
case 1:
if (logoCanvas==null) logoCanvas = new LogoCanvas(this);
Display.getDisplay(this).setCurrent(logoCanvas);
break;
case 2:
if (mainCanvas==null) mainCanvas = new MainCanvas(this);
Display.getDisplay(this).setCurrent(mainCanvas);
logoCanvas.Stop = true;
break;
case 3:
if (playCanvas==null) playCanvas = new PlayCanvas(this);
Display.getDisplay(this).setCurrent(playCanvas);
playCanvas.Stop = true;
playCanvas.reset(1);
break;
}
}
public static Image getImage(String fileName)
{
try {
Image img = Image.createImage(fileName);
return img;
} catch (Exception e) {
System.out.println("Error: " + e.getMessage() + " - "+fileName);
return null;
}
}
public void drawDialog(Graphics g, Image icon, int X, int Y, int width, int height, int yOffset, int style)
{
drawDialog(g, icon, null, X, Y, width, height, yOffset, style);
}
public void drawDialog(Graphics g, Image icon, String s, int X, int Y, int width, int height, int yOffset, int style)
{
int _x,_y;
_x = (gameWidth-width)/2 + X;
_y = (gameHeight-height)/2 + Y + yOffset;
g.setColor(0,0,0);
switch(style)
{
case 0:
//g.fillRect(_x,_y,width,height);
break;
case 1:
g.fillRect(_x,_y,width+1,height+1);
break;
case 2:
g.fillRect(_x-1,_y-1,width+2,height+2);
break;
case 3:
g.fillRect(_x-1,_y-1,width+3,height+3);
break;
}
g.setColor(255,255,255);
g.fillRect(_x,_y,width,height);
_x = _x + (width-icon.getWidth())/2;
if (icon.getHeight()+4<height) _y = _y + 3;
g.drawImage(icon,_x,_y,g.TOP|g.LEFT);
g.setColor(0);
if(s!=null)g.drawString(s,_x+22,_y+icon.getHeight()+5,g.TOP|g.LEFT);
}
public static void alert(String title,String str)
{
Alert a = new Alert(title,str,/*img_Alert*/null,null);
a.setTimeout(Alert.FOREVER);
Display.getDisplay(instance).setCurrent(a);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -