📄 gamewin.java
字号:
// Decompiled by Jad v1.5.7f. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3)
// Source File Name: GameWin.java
package matchit2;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.GameCanvas;
// Referenced classes of package matchit2:
// GameScreen
public class GameWin extends GameCanvas
implements Runnable
{
public GameWin(GameScreen g, int l)
{
super(false);
x = 0;
try
{
gamescreen = g;
Level = l;
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit()
throws Exception
{
try
{
won = Image.createImage("/res/img/won.png");
Image img = Image.createImage("/res/img/cong.png");
len = img.getWidth();
cong = Image.createImage(len + getWidth() * 2, img.getHeight());
cong.getGraphics().setColor(0);
cong.getGraphics().fillRect(0, 0, cong.getWidth(), cong.getHeight());
cong.getGraphics().drawImage(img, getWidth(), 0, 0);
img = null;
}
catch(Exception e)
{
e.printStackTrace();
}
x = getWidth();
}
synchronized void start()
{
myThread = new Thread(this);
myThread.start();
}
synchronized void stop()
{
myThread = null;
}
public void run()
{
Thread currentThread = Thread.currentThread();
try
{
while(currentThread == myThread)
{
long startTime = System.currentTimeMillis();
repaint();
serviceRepaints();
long timeTaken = System.currentTimeMillis() - startTime;
if(timeTaken < 100L)
{
synchronized(this)
{
wait(100L - timeTaken);
x = x + 1;
if(x > getWidth() + len)
x = 0;
}
} else
{
Thread _tmp = currentThread;
Thread.yield();
}
}
}
catch(InterruptedException e) { }
}
public void paint(Graphics g)
{
g.setColor(0);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(255, 255, 255);
Image img = Image.createImage(cong, x, 0, getWidth(), cong.getHeight(), 0);
g.drawImage(img, 0, 25, 0);
img = null;
g.drawImage(won, (getWidth() - won.getWidth()) / 2, 55, 0);
if(Level == 0)
g.drawString("Try to solve [Normal] next time.", 5, 85, 0);
else
if(Level == 1)
g.drawString("Try to solve [Hard] next time.", 5, 85, 0);
g.setColor(65535);
g.drawString("By Xinyun Liu", 5, getHeight() - 55, 0);
g.drawString("robotskin@hotmail.com", 5, getHeight() - 40, 0);
g.drawString("Nov.2004. All rights reserved", 5, getHeight() - 25, 0);
}
protected void pointerPressed(int x, int y)
{
gamescreen.goMain();
}
public void keyPressed(int keyCode)
{
keyCode = getGameAction(keyCode);
if(keyCode == 8)
gamescreen.goMain();
}
private GameScreen gamescreen;
private int Level;
private Thread myThread;
private int x;
private int len;
private Image cong;
private Image won;
private static final int MILLIS_PER_TICK = 100;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -