⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adlight.java

📁 手机源码游戏:点亮全部蜡烛。有3种开始方式:全新开始
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
    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 + -