📄 kyodai.java
字号:
package com.ismyway.n840_kyodai;
import java.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
/**
* <p>Title: N840 Kyodai</p>
* <p>Description: N840上的连连看游戏</p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: http://www.ismyway.com</p>
* @author 张剑
* @version 1.0
*/
public class Kyodai
extends MIDlet {
Display display;
//public static byte[][] ImagesBuffer = new byte[CV.MAX_ICONS][];
public static Sprite[] sprites = new Sprite[CV.MAX_ICONS];
public static boolean supportMMAPI = false; //是否支持MMAPI
public static int gameMode = 0; //游戏模式
public static int musicMode = 1; //音效
public Record[] record = new Record[11]; //第一条保存音效�?�难度数据,后面保存Top10
public Kyodai() {
display = Display.getDisplay(this);
for (int i = 0; i < record.length; i++) {
record[i] = new Record();
}
}
protected void startApp() {
SplashScreen s = new SplashScreen(this);
s.start();
display.setCurrent(s);
}
protected void pauseApp() {
}
protected void destroyApp(boolean parm1) {
}
public void exit() {
saveData();
System.gc();
destroyApp(false);
notifyDestroyed();
}
/**
* only for test
*/
public static void printArray(int[][] array) {
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[0].length; j++) {
System.out.print("[" + array[i][j] + "] ");
}
System.out.println();
}
}
/*==================== 以下代码仅供保存游戏参数使用 ===================*/
/**
* 保存用户记录,并且排�?
* @param name
* @param score
*/
public void saveData() {
try {
RecordStore.deleteRecordStore(CV.
recordStoreName);
RecordStore recordstore = RecordStore.openRecordStore(CV.
recordStoreName, true);
System.out.println(recordstore.getNumRecords());
/*for (int i = 1; i < recordstore.getNumRecords(); i++) {
recordstore.deleteRecord(i);
}*/
byte[] abyte = encodeRecord("" + musicMode, "" + gameMode);
recordstore.addRecord(abyte, 0, abyte.length);
for (int i = 1; i < record.length; i++) {
abyte = encodeRecord(record[i].getName(),
"" + record[i].getScore());
recordstore.addRecord(abyte, 0, abyte.length);
}
recordstore.closeRecordStore();
System.gc();
}
catch (RecordStoreException ex) {
}
}
/**
* 构建�?条记录信�?
* @param name
* @param score
* @return
*/
public byte[] encodeRecord(String name, String score) {
byte abyte0[] = null;
try {
ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream();
DataOutputStream dataoutputstream = new DataOutputStream(
bytearrayoutputstream);
dataoutputstream.writeUTF(name);
dataoutputstream.writeUTF(score);
abyte0 = bytearrayoutputstream.toByteArray();
dataoutputstream.close();
bytearrayoutputstream.close();
}
catch (Exception exception) {}
return abyte0;
}
/**
* 将记录还原为用户记录
* @param abyte0
* @param r
*/
public void decodeRecord(byte abyte0[], Record r) {
try {
ByteArrayInputStream bytearrayinputstream = new ByteArrayInputStream(
abyte0);
DataInputStream datainputstream = new DataInputStream(
bytearrayinputstream);
r.setName(datainputstream.readUTF());
r.setScore(datainputstream.readUTF());
datainputstream.close();
bytearrayinputstream.close();
}
catch (Exception exception) {}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -