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

📄 adseesaw.java

📁 手机游戏
💻 JAVA
📖 第 1 页 / 共 3 页
字号:

        }

        private int getMykey(){                                               //僉乕傪庢傝弌偡

            int result = key;                                                 //曐娗偝傟偰偄傞僉乕傪庢傝弌偟丄
            key = 0;                                                          //曐娗屔偼僋儕傾偟偰偍偔
            return result;                                                    //

        }

//------------------------ 僌儔僼傿僢僋儕僜乕僗偺撉傒崬傒

        private final int grseeSaw1  = 0;                                     //儕僜乕僗攝楍偺斣崋傪巜掕
        private final int grseeSaw2  = 1;                                     //丂僔乕僜乕偺奊偺2斣栚
        private final int grman      = 2;                                     //丂恖娫偺奊
        private Image [] gr = new Image[3];                                   //梫慺3偺儕僜乕僗攝楍傪嶌惉

        private void loadResource() {                                         //懳墳偡傞儕僜乕僗僼傽僀儖傪巜掕偺攝楍梫慺偵曐娗

            gr[grseeSaw1] = loadGres("dai1.png");                             //僔乕僜乕1恾暱偺撉傒崬傒
            gr[grseeSaw2] = loadGres("dai2.png");                             //僔乕僜乕2恾暱偺撉傒崬傒
            gr[grman]     = loadGres("man.png");                              //恖娫恾暱偺撉傒崬傒

        }

        private Image loadGres(String s){                                     //儕僜乕僗撉傒崬傒傛偆娭悢

            Image a = null;                                                   //丂僀儊乕僕偺杮懱傪嶌惉偟偰丄

            try {                                                             //

                a = Image.createImage("/"+s);                                 //丂柤徧傪巜掕偟偰撉傒崬傓

            } catch (Exception ex) {                                          //偍偦傜偔巊傢傟側偄僄儔乕張棟

                ex.printStackTrace();                                         //

            }                                                                 //

            return a;                                                         //撉傒崬傫偩僀儊乕僕傪曉偡

        }

//------------------------ 僎乕儉杮懱偺曗彆娭悢

        private void initGame(){                                              //PLAY捈慜偺弶婜壔

            score = 0;                                                        //揰悢偼侽偵
            key = 0;                                                          //擖椡僉乕傕僋儕傾
            seesawPosX = grXWidth/2;                                          //僔乕僜乕偼夋柺拞墰偵
            manSwitch = ismanRight;                                           //嵍懁偺恖娫傪曻傝弌偡偙偲偵偟偰
            manX = seesawPosX+manRightPos;                                    //丂忋婰偺X埵抲
            manY = manFirstHight;                                             //丂忋婰偺Y埵抲
            manVectX = 0;                                                     //嵍塃偺堏摦偼柍偟
            manVectY = 0;                                                     //忋壓偺堏摦傕柍偟乮偟偩偄偵帺桼棊壓乯

        }

        private void keyAction(){                                             //僉乕擖椡偵傛傞僀儀儞僩張棟

            int pushedkey = getMykey();                                       //墴偝傟偨僉乕傪曔傜偊傞

            if(pushedkey == keyLeft){                                         //嵍堏摦僉乕偱偁傟偽丄

                seesawPosX -= seeSawMoveSize;                                 //丂偲傝偁偊偢堏摦偝偣偰

                if(seesawPosX < seeSawXLeftLimit){                            //丂嵍尷搙傪挻偊偰偄傟偽

                    seesawPosX = seeSawXLeftLimit;                            //丂挻偊側偄斖埻偵栠偡

                }

            }else if(pushedkey == keyRight){                                  //塃堏摦僉乕偱偁傟偽丄

                seesawPosX += seeSawMoveSize;                                 //丂偲傝偁偊偡堏摦偝偣偰丄

                if(seesawPosX > seeSawXRightLimit){                           //丂塃尷搙傪挻偊偰偄傟偽
            
                    seesawPosX = seeSawXRightLimit;                           //丂挻偊側偄斖埻偵栠偡

                }
        
            }
        
        }

        private boolean moveman(){                                            //旘傫偱偄傞恖娫偺堏摦

            manVectY -= gravity;                                              //枅夞丄廳椡偵傛傞壓曽岦傊偺堏摦検傪憹戝偝偣傞
            manX += manVectX;                                                 //嵍塃堏摦傪峴偆
            manY += manVectY;                                                 //忋壓堏摦傪峴偆

            if(manY > grYWidth){                                              //揤堜偵傇偮偐偭偨側傜偽丄

                manY = grYWidth;                                              //丂Y埵抲傪揤堜傑偱偵婯惂偟偰丄
                manVectY = 0;                                                 //丂偦偙偐傜帺桼棊壓

            }

            if(manX < 0){                                                     //X埵抲偑嵍尷搙傪挻偊偰偄傟偽丄

                manX = 0;                                                     //丂尷搙尷奅埲撪偵偟偰
                manVectX = -manVectX;                                         //丂暻偱挼偹曉傞乮堏摦偺岦偒傪斀懳偵偡傞乯

            } else if(manX > grXWidth){                                       //X埵抲偑塃尷搙傪挻偊偰偄傟偽丄

                manX = grXWidth;                                              //丂尷搙尷奅埲撪偵偟偰
                manVectX = -manVectX;                                         //丂暻偱挼偹曉傞乮堏摦偺岦偒傪斀懳偵偡傞乯

            }

            if(manY < seeSawHight){                                           //Y埵抲偑懌応偺崅偝埲壓偵側偭偨傜丄
                                                                              //丂峔憿懱傛傝僙乕僼椞堟偺僆僼僙僢僩傪庢傝崬傒丄
                                                                              //丂僔乕僜乕埵抲傪懌偟偰幚抣偺僙乕僼椞堟傪嶌惉
                int mini = seesawPosX + seeSawPedal[manSwitch*seeSawPedalDim+seeSawPedalDimMini];
                int max  = seesawPosX + seeSawPedal[manSwitch*seeSawPedalDim+seeSawPedalDimMax];

                if((mini <= manX)&&(manX <= max)){                            //恖娫偺X埵抲偑僙乕僼椞堟撪偱偁傟偽乮柍帠拝抧乯丄

                    manSwitch = (manSwitch == ismanLeft)?(ismanRight):(ismanLeft); //崱搙偼斀懳懁偺恖娫偑旘傫偱偄傞偙偲偵偟偰丄
                    manY = seeSawHight;                                       //丂偲傝偁偊偢Y偼懌応偺崅偝
                    manX = seesawPosX + seeSawPedal[manSwitch*seeSawPedalDim+seeSawPedalDimJpos]; //X偼懌応偺埵抲
                    manVectY = manJumpPower;                                  //丂Y堏摦検偼懪偪忋偘弶懍搙偲偟
                    manVectX = Math.abs((rand.nextInt()) % 3)-1;              //丂X堏摦検偼庤敳偒偟偰棎悢偵偰揔摉偵巜掕
                    score++;                                                  //惉岟偟偨偺偱僗僐傾傾僢僾
                    PhoneSystem.onIncallLed(PhoneSystem.COLOR_GREEN,PhoneSystem.PATTERN1,500); //椢LED傪婰擮偵揰柵

                    return true;                                              //惗偒偰偄傞僼儔僌傪曉偡

                }
                                                                              //懌尦偵懌応偑側偐偭偨傜丄
                PhoneSystem.onIncallLed(PhoneSystem.COLOR_RED,PhoneSystem.PATTERN3,1500); //愒LED傪揰柵偝偣偰
                PhoneSystem.onVibration(500);                                 //偍傑偗偵500msec傎偳偺僶僀僽儗乕僔儑儞偱帺屓庡挘

                return false;                                                 //巰傫偩僼儔僌傪曉偡

            }

            return true;                                                      //惗偒偰偄傞僼儔僌傪曉偡

        }

//------------------------ 夋柺昞帵

        public void paint(Graphics g) {                                       //昤夋偑梫媮偝傟偨傜偙偙偵棃傞

            clearDisplay(g);                                                  //偲傝偁偊偢夋柺傪儀乕僗怓偱僋儕傾

            switch(gameMode){                                                 //尰嵼偺僎乕儉忬懺偵傛傝張棟暘婒

            case gameMode_StartWait:                                          //丂奐巒慜偺懸偪偱偁傟偽丄
                if((loopCount & 2) != 0){                                     //丂丂僎乕儉儖乕僾僇僂儞僞偺抣偵墳偠偰丄
                    dispStringCenter(g,"PUSH START");                         //丂丂丂暥帤楍傪彂偔
                }                                                             //丂丂偙傟偱揰柵偡傞偙偲偵側傞
                break;

            case gameMode_Play:                                               //僾儗僀拞偐
            case gameMode_End:                                                //廔椆堏峴拞偐
            case gameMode_EndWait:                                            //廔椆昞帵拞側傜丄
                dispSeesaw(g);                                                //丂僔乕僜乕傪昞帵
                dispJumpman(g);                                               //丂旘傫偱偄傞恖娫傪昞帵
                dispOtherman(g);                                              //丂旘傫偱偄側偄傎偆傕昞帵
                dispscore(g);                                                 //丂僗僐傾傕昞帵
                break;

            }

        }

/*

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -