📄 adlight.java
字号:
public int saveRecord(){ //僨乕僞曐懚娭悢
RecordStore recordStore = null; //僼傽僀儖僴儞僪儖傪弨旛
delRecordFile(); //杮椺偱偼曐懚帪偵慡晹彂偒捈偡偺偱偄偭偨傫慡徚嫀偡傞
RecERR = 0; //僄儔乕撪梕偺僋儕傾
try{ //僄儔乕専弌偺偨傔 try 傪巊梡
recordStore = RecordStore.openRecordStore(MyRecName,true); //丂僼傽僀儖偑懚嵼偟側偗傟偽嶌惉偡傞巜掕偱僆乕僾儞偡傞
recordStore.addRecord(GameMap,0,MapSize); //丂GameMap偺撪梕傪MapSize暘彂偒弌偡
recordStore.closeRecordStore(); //丂僼傽僀儖僴儞僪儖傪僋儘乕僘偡傞
}catch(RecordStoreNotOpenException e){ //僴儞僪儖僆乕僾儞帪偺僄儔乕偑専弌偝傟傟偽丄
RecERR = 1; //丂僄儔乕抣偲偟偰侾傪婰榐
}catch(RecordStoreException e){ //婰榐拞側偳偵僄儔乕偑専弌偝傟偨傜丄
RecERR = 2; //丂僄儔乕抣偲偟偰俀傪婰榐
}
return RecERR; //僄儔乕抣傪曉偡乮侽側傜惓忢乯
}
private void delRecordFile(){ //曐懚僼傽僀儖偺嶍彍
try { //僄儔乕僼僃僢僠偺偨傔try傪巊梡
RecordStore.deleteRecordStore(MyRecName); //丂僼傽僀儖偺嶍彍
} catch (RecordStoreNotFoundException e){ //僄儔乕傪庢摼丄暘椶偡傞昁梫偑偁傟偽
} catch (RecordStoreException e){ //丂偙偙偱 RecERR 偵抣傪戙擖偟偰傕傛偄
} catch (Exception ex) {
}
}
public int loadRecord(){ //曐懚僼傽僀儖偺撉傒弌偟
byte [] buff; //撉傒崬傒梡僶僢僼傽
RecordStore recordStore = null; //僼傽僀儖僴儞僪儖傪弨旛
RecERR = 0; //僄儔乕撪梕偺僋儕傾
try{ //僄儔乕専弌偺偨傔 try 傪巊梡
recordStore = RecordStore.openRecordStore(MyRecName,false); //丂僼傽僀儖偑懚嵼偟側偗傟偽嶌惉偟側偄巜掕偱僆乕僾儞偡傞
buff = recordStore.getRecord(1); //丂撪梕傪僶僢僼傽偵撉傒弌偡
recordStore.closeRecordStore(); //丂僼傽僀儖僴儞僪儖傪僋儘乕僘偡傞
for(int i=0;i<MapSize;i++){ //丂惉岟屻偵惓幃椞堟偵僐僺乕偡傞
GameMap[i] = buff[i];
}
}catch(RecordStoreNotOpenException e){ //僴儞僪儖僆乕僾儞帪偺僄儔乕偑専弌偝傟傟偽丄
RecERR = 1; //丂僄儔乕抣偲偟偰侾傪婰榐
}catch(RecordStoreException e){ //撉傒弌偟拞側偳偵僄儔乕偑専弌偝傟偨傜丄
RecERR = 2; //丂僄儔乕抣偲偟偰俀傪婰榐
}
return RecERR; //僄儔乕抣傪曉偡乮侽側傜惓忢乯
}
//------------------------ 僎乕儉杮懱偺曗彆娭悢
private void initCommand(){ //PLAY捈慜偺弶婜壔
MyCanvas.addCommand(game1Command); //斦柺侾儃僞儞傪愝抲
MyCanvas.addCommand(game2Command); //斦柺俀儃僞儞傪愝抲
MyCanvas.addCommand(game3Command); //棎悢柺儃僞儞傪愝抲
if(loadRecord() == 0){ //傕偟曐懚僨乕僞偑偁傟偽乮撉傒弌偟偵惉岟偡傟偽乯
MyCanvas.addCommand(game4Command); //丂宲懕儃僞儞傪愝抲
}
}
private void initGame(){ //PLAY捈慜偺弶婜壔
MyCanvas.removeCommand(game1Command); //斦柺侾儃僞儞傪揚廂
MyCanvas.removeCommand(game2Command); //斦柺俀儃僞儞傪揚廂
MyCanvas.removeCommand(game3Command); //棎悢柺儃僞儞傪揚廂
MyCanvas.removeCommand(game4Command); //宲懕儃僞儞傪揚廂
switch(GameMode){ //僎乕儉奐巒偺儌乕僪巜掕偵墳偠偰丄
case GameMode_1_Start:
case GameMode_2_Start: //弶婜斦柺偐傜偺撉傒崬傒偱偁傟偽丄
int num = GameMode-GameMode_1_Start; //丂斦柺斣崋傪惗惉偟
for(int i=0;i<MapSize;i++){
GameMap[i] = GameOrgMap[num*MapSize+i]; //丂丂弶婜斦柺攝楍偐傜僐僺乕偡傞
}
saveRecord(); //丂宱夁僼傽僀儖偺嶌惉
break;
case GameMode_3_Start: //棎悢柺嶌惉偱偁傟偽丄
for(int i=0;i<MapSize;i++){
GameMap[i] = (byte)( Math.abs(rand.nextInt() % 2) ); //丂丂棎悢偱侽偐侾傪惗惉偟偰弴師奿擺偡傞
}
saveRecord(); //丂宱夁僼傽僀儖偺嶌惉
break;
case GameMode_4_Start: //宱夁僼傽僀儖偐傜偺撉傒弌偟巜掕偱偁傟偽丄
//loadRecord(); //丂撉傒崬傒傪幚峴偡傞
break; //丂乮偡偱偵 initCommand() 偱撉傒崬傒姰椆嵪傒乯
}
Key = 0; //擖椡僉乕傕僋儕傾
FlashMode = 0; //僼儔僢僔儏儌乕僪傪捠忢偵偡傞
}
private boolean keyAction(){ //僉乕擖椡偵傛傞僀儀儞僩張棟
int PushedKey = getMyKey(); //墴偝傟偨僉乕傪曔傜偊傞
if(PushedKey == 0){return false;} //壗傕墴偝傟偰偄側偗傟偽婾傪曉偡
int i = 0; //攝楍拞偺孮傪帵偡曄悢
int n; //僉乕斾妑梡
while((n = ChgTable[i*ChgTableSize]) > 0){ //搊榐僉乕傪撉傒弌偟僄儞僪儅乕僋偱偼側偄娫孞傝曉偡
if(PushedKey == n){ //丂墴偝傟偨僉乕偲摨偠側傜偽丄
int j = 1; //丂丂斀揮懳徾偺儕僗僩斣崋
while((n = ChgTable[i*ChgTableSize+j]) >= 0){ //丂丂儕僗僩偐傜斀揮懳徾斣崋傪庢摼偟桳岠抣偱偁傟偽丄
GameMap[n] = (byte)( GameMap[n]+ChangeOffset ); //丂丂丂偦偺懳徾僷僱儖偵斀揮儅乕僋傪偮偗傞
if(++j >= ChgTableSize){ //丂丂丂丂億僀儞僩傪恑傔丄昁梫悢傪挻偊偰偄傟偽拞抐
break;
}
}
return true; //丂丂曄峏偁傝偲偟偰恀傪曉偡
}
i++; //丂僉乕斾妑梡億僀儞僞傪恑傔傞
}
return false; //柍岠僉乕偱偁偭偨偨傔曄峏柍偟偲偟偰婾傪曉偡
}
private boolean checkClr(){ //僎乕儉僋儕傾乮姰惉乯専弌娭悢
int i; //for儖乕僾梡曄悢
for(i=0;i<MapSize;i++){ //MapSize偺屄悢暘孞傝曉偡
if(GameMap[i] == 0){ //丂徚摂偟偰偄傞僷僱儖偑偁傟偽
return false; //丂丂婾傪曉偡
}
} //僎乕儉僋儕傾妋掕
for(i=0;i<MapSize;i++){ //慡僷僱儖僼儔僢僔儏梡偵
GameMap[i] += ChangeOffset; //丂慡僷僱儖偵斀揮儅乕僋傪偮偗傞
}
return true; //僎乕儉僋儕傾偲偟偰恀傪曉偡
}
private void chgFlagClr(int sw){ //斀揮儅乕僋徚嫀娭悢
for(int i=0;i<MapSize;i++){ //MapSize暘孞傝曉偡
if(GameMap[i] >= ChangeOffset){ //丂斀揮儅乕僋偑偮偄偰偄偨傜丄
GameMap[i] -= ChangeOffset; //丂丂斀揮儅乕僋傪庢傝嫀傞
if(sw != 0){ //丂丂寢壥斀揮巜掕偱偁傟偽丄
GameMap[i] = (byte)((GameMap[i] != 0)?(0):(1)); //丂丂丂寢壥傪斀揮偝偣傞
} //乮僎乕儉僋儕傾帪偺僼儔僢僔儏屻偼斀揮偝偣偰偄側偄乯
}
}
}
//------------------------ 夋柺昞帵
public void paint(Graphics g) { //昤夋偑梫媮偝傟偨傜偙偙偵棃傞
clearDisplay(g); //偲傝偁偊偢夋柺傪儀乕僗怓偱僋儕傾
switch(GameMode){ //尰嵼偺僎乕儉忬懺偵傛傝張棟暘婒
case GameMode_StartWait: //丂奐巒慜偺懸偪偱偁傟偽丄
if((LoopCount & 2) != 0){ //丂丂僎乕儉儖乕僾僇僂儞僞偺抣偵墳偠偰丄
dispStringCenter(g,"SELECT MENU"); //丂丂丂暥帤楍傪彂偔
} //丂丂偙傟偱揰柵偡傞偙偲偵側傞
break;
case GameMode_Flash1: //夋憸僼儔僢僔儏侾側傜偽
flashView(g,2); //丂仌忦審俀偱揰柵
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -