📄 gameovercanvas.java
字号:
/*
* 创建日期 2007-2-20 @author cpiz
*
* Splash画面
*/
package src;
import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class GameOverCanvas extends Canvas
{
GameMIDlet midlet= null;
Timer timer = null;
/**
* 构造函数
*
* @param midlet
* 父MIDlet对象
*/
public GameOverCanvas(GameMIDlet midlet)
{
this.midlet = midlet;
}
public void showMe()
{
// 使用MIDP2.0自带的全屏模式
this.setFullScreenMode(true);
// 初始化计时器,一定时间后跳转至游戏
timer = new Timer();
timer.schedule(new TimerTask()
{
public void run()
{
showNextScreen();
}
}, GameMIDlet.SPLASH_TIME);
midlet.setDisplayable(this);
}
/**
* 显示下一屏
*/
private void showNextScreen()
{
timer.cancel();
timer = null;
midlet.setDisplayable(midlet.getHighScoreCanvas());
}
/**
* 清除屏幕
* @param g 屏幕对象
*/
private void clearGraphics(Graphics g)
{
g.setColor(0xffffff);// 默认清理为黑色
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(0x000000);
}
protected void paint(Graphics g)
{
clearGraphics(g);
try
{
int score = midlet.getPlayCanvas().getBackGroundLayer().floorsCount;
int lowestScore = midlet.getHighScoreCanvas().hiScores[9];
// 设置字体
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,
Font.SIZE_LARGE));
if(score > lowestScore)
{
g.drawString("恭喜你进入英雄榜!",20,getHeight()/2, Graphics.LEFT | Graphics.BOTTOM);
g.drawString("目前成绩为地下:"+score+"层",20,getHeight()/2+30, Graphics.LEFT | Graphics.BOTTOM);
}
else
{
g.drawString("还差得远呢!再试一次.",20,getHeight()/2, Graphics.LEFT | Graphics.BOTTOM);
g.drawString("目前成绩为地下:"+score+"层",20,getHeight()/2+30, Graphics.LEFT | Graphics.BOTTOM);
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
/**
* 处理按键事件
*/
protected void keyPressed(int keyCode)
{
// 按任意键开始游戏
showNextScreen();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -