?? 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 + -