亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? player_west.java

?? j2me 橫版過關游戲工程。(demo).可以參考下
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
            }
            if (idUse == -1)
            {
                cloudIdx = -1;
            }
            else
            {
                int dXUse = 0;
                int dYUse = 0;
                if (npc.npc[idUse].littleId == 1)
                    dXUse = -npc.npc[idUse].speed;
                if (npc.npc[idUse].littleId == 2)
                    dYUse = -npc.npc[idUse].speed;
                WestGameCanvas.mapX += dXUse;
                WestGameCanvas.mapY += dYUse;
                for (i = npcLen; --i >= 0;)
                    if (npc.npc[i] != null)
                        npc.npc[i].move(dXUse, dYUse);
            }
        }

        Npc_West npcTemp;
        int tempId;
        short[] arrayTemp;
        for (i = npcLen; --i >= 0;)
        {
            npcTemp = npc.npc[i];
            if (null != npcTemp && npcTemp.num != -1 && npcTemp.visible)
            {
                //與npc的碰撞檢測
                int collectFram;
                tempId=(npcTemp.id==3&&WestGameCanvas.gameLevel>2)?0:npcTemp.id;
                switch (tempId)
                {
                    //普通NPC
                    case 0:
                        if ((3934 & prePlayerState) == 0
                                || (42 & npcTemp.npcState) == 0)
                            break;
                        collectFram = npcTemp.frameSequence[npcTemp.getFrame()];
                        if(npcTemp.id==3)
                            arrayTemp = data.BossFrame(npcTemp.id)[collectFram];
                        else
                            arrayTemp = data.NpcFrame(npcTemp.id)[collectFram];
                        npcTemp.defineCollisionRectangle(arrayTemp[0],
                                arrayTemp[1], arrayTemp[2], arrayTemp[3]);
                        collectFram = frameSequence[getFrame()];
                        arrayTemp = data.getPlayerRec()[collectFram];
                        if ((8 & npcTemp.npcState) != 0)
                        {
                            defineCollisionRectangle(arrayTemp[0],
                                    arrayTemp[1], arrayTemp[2], arrayTemp[3]);
                            if (collidesWith(npcTemp))
                            {
                                playerState = 128 + (1 & prePlayerState);
                                if(npcTemp.id==3)
                                  //無敵
                                  //WestGameCanvas.hp -= data.getBossKind()[npcTemp.littleId][5];
                                   ;
                                   else
                                    //無敵 WestGameCanvas.hp -= data.getNpcKind()[npcTemp.littleId][5];
                                    WestGameCanvas.hp += data.getNpcKind()[npcTemp.littleId][5];
                                npcTemp.x += (1 & npcTemp.npcState) == 0 ? -20
                                        : 20;
                            }
                        }
                        //TODO player collide with npc
                        if ((64 & prePlayerState) != 0)
                        {
                            int wcx, wcw = 24;
                            //判斷是否使用棒子,計算攻擊范圍寬度
                            if (this.getFrame() == 4 && this.imgWeapon != null)
                                wcw += this.weaponIdx > 3 ? 59 : 43;
                            //判斷左右,計算攻擊范圍x位置位移
                            wcx = (1 & prePlayerState) != 0 ? (24-wcw) : 29;
                            //設置供給范圍
                            defineCollisionRectangle(wcx, arrayTemp[1], wcw,
                                    arrayTemp[3]);
                            if (collidesWith(npcTemp))
                            {
                                npcTemp.npcState = 16 + (1 & npcTemp.npcState);
                                if(npcTemp.id==3)
                                	npcTemp.hp -= data.getBossKind()[npcTemp.littleId][4];
                                else
                                	npcTemp.hp -= data.getNpcKind()[npcTemp.littleId][4];
                                //npcTemp
                                npcTemp.x += (1 & npcTemp.npcState) == 0 ? -20
                                        : 20;
                            }
                        }
                        break;
                    //與云層相碰
                    case 1:
                        if ((16 & prePlayerState) == 0)
                            break;
                        if (x + 26 > npcTemp.x
                                && x + 26 < npcTemp.x + npcTemp.srcFrameWidth
                                && y + 54 > npcTemp.y
                                && y + 54 < npcTemp.y + npcTemp.srcFrameHeight
                                && cloudIdx == -1)
                        {
                            playerState = 2 | (1 & prePlayerState);
                            cloudIdx = npcTemp.num;
                            int dY = y + srcFrameHeight - npcTemp.y - 10;
                            WestGameCanvas.mapY += dY;
                            for (int j = npc.npc.length; --j >= 0;)
                                if (null != npc.npc[j])
                                    npc.npc[j].y += dY;
                        }
                        else
                        {
                            if (cloudIdx == npcTemp.num)
                                cloudIdx = -1;
                        }
                        break;
                    //與道具相碰撞
                    case 2:
                        collectFram = frameSequence[getFrame()];
                        arrayTemp = data.getPlayerRec()[collectFram];
                        defineCollisionRectangle(arrayTemp[0], arrayTemp[1],
                                arrayTemp[2], arrayTemp[3]);
                        if (collidesWith(npcTemp))
                        {
                            npcTemp.visible = false;
                            switch (npcTemp.littleId)
                            {
                                case 0:
                                    WestGameCanvas.hp += 20;
                                    break;
                                case 1:
                                    WestGameCanvas.hp += 50;
                                    break;
                                case 2:
                                    WestGameCanvas.hp += 100;
                                    break;
                            }
                            if (WestGameCanvas.hp > 100)
                                WestGameCanvas.hp = 100;
                        }
                        break;
                    //TODO boss coll
                    case 3:
                        if ((1886 & prePlayerState) == 0)
                            break;
                        collectFram = npcTemp.frameSequence[npcTemp.getFrame()];
                        arrayTemp = data.BossFrame(npcTemp.id)[collectFram];
                        npcTemp.defineCollisionRectangle(arrayTemp[0],
                                arrayTemp[1], arrayTemp[2], arrayTemp[3]);
                        int stoneIdx;
                        for (stoneIdx = npc.npc.length; --stoneIdx >= 0;)
                        {
                            if (null != npc.npc[stoneIdx]
                                    && npc.npc[stoneIdx].id == 4)
                                break;
                        }
                        if (stoneIdx >= 0
                                && (npc.npc[stoneIdx].npcState & 8) != 0)
                        {
                            if (npcTemp.collidesWith(npc.npc[stoneIdx]))
                            {
                                int space = 1 & npcTemp.npcState;
                                npcTemp.npcState = space | 32;
                                space = space == 0 ? -5 : 5;
                                npcTemp.x += space;
                                npcTemp.hp -= data.getBossKind()[npcTemp.littleId][4];
                                npc.npc[stoneIdx].npcState = 2;
                                npc.npc[stoneIdx].x += space;
                                npc.npc[stoneIdx].y = data.getNpcPosition()[npc.npc[stoneIdx].num][3]
                                        + WestGameCanvas.mapY;
                                return;
                            }
                        }
                        switch (collectFram)
                        {
                            case 4:
                            case 5:
                            case 13:
                            case 14:
                                collectFram = frameSequence[getFrame()];
                                arrayTemp = data.getPlayerRec()[collectFram];
                                defineCollisionRectangle(arrayTemp[0],
                                        arrayTemp[1], arrayTemp[2],
                                        arrayTemp[3]);
                                if (collidesWith(npcTemp))
                                {
                                    playerState = 128 + (1 & prePlayerState);
                                    //WestGameCanvas.hp -= data.getBossKind()[npcTemp.littleId][5];
                                    if (stoneIdx >= 0
                                            && (prePlayerState & 768) != 0)
                                    {
                                        npc.npc[stoneIdx].npcState = 2;
                                        npc.npc[stoneIdx].y = data
                                                .getNpcPosition()[npc.npc[stoneIdx].num][3]
                                                + WestGameCanvas.mapY;
                                    }
                                }
                                defineCollisionRectangle(0, 0, srcFrameWidth,
                                        srcFrameHeight);
                                break;
                        }
                        break;
                }

            }
        }
        defineCollisionRectangle(0, 0, srcFrameWidth, srcFrameHeight);
    }

    /**
     * 設置最后的動畫序列
     *
     */
    private void setFinalSequence(boolean isChangeBack)
    {

        if (playerState != prePlayerState || isChangeBack)
        {
            boolean isChangeDir = false;
            if ((1 & playerState) != (1 & prePlayerState))
            {
                isChangeDir = true;
            }
            int question;//有問題: 當由左下跳的狀態到左站立的狀態變化時此處判斷不起作用
            if ((65471 & playerState) != (65471 & prePlayerState)
                    || isChangeBack)
            {
                switch (65471 & playerState)
                {
                    case 2:
                    case 3:
                        prePlayerState = (65471 & playerState)
                                + (64 & prePlayerState);
                        if ((64 & playerState) == 0)
                            setCurrSequence(data.getPlayer()[24], data
                                    .getPlayer()[25]);
                        speedX = speedY = mark = 0;
                        break;
                    case 4:
                    case 5:
                        if ((70 & prePlayerState) != 0)
                        {
                            prePlayerState = (65471 & playerState)
                                    + (64 & prePlayerState);
                            if (!isChangeBack)
                            {
                                speedX = data.getPlayer()[5];
                                speedY = mark = 0;
                                if ((1 & prePlayerState) == 1)
                                {
                                    speedX = -speedX;
                                }
                            }
                            if ((64 & prePlayerState) == 0)
                                setCurrSequence(data.getPlayer()[18], data
                                        .getPlayer()[19]);
                        }
                        break;
                    case 8:
                    case 9:
                        if ((2118 & prePlayerState) != 0)
                        {
                            if (!isChangeBack)
                            {
                                mark = 0;
                            }
                            prePlayerState = (65471 & playerState)
                                    + (64 & prePlayerState);
                            if ((64 & playerState) == 0)
                                setCurrSequence(data.getPlayer()[8], data
                                        .getPlayer()[9]);
                            if ((1 & prePlayerState) == 1)
                            {
                                speedX = -speedX;
                            }
                        }
                        break;
                    case 16:
                    case 17:
                        if ((318 & prePlayerState) != 0)
                        {
                            prePlayerState = (65471 & playerState)
                                    + (64 & prePlayerState);
                            if ((64 & playerState) == 0)
                                setCurrSequence(data.getPlayer()[10], data
                                        .getPlayer()[11]);
                            mark = data.playerJump()[0].length - 1;
                        }
                        break;
                    case 32:
                    case 33:
                        setCurrSequence(data.getPlayer()[26],
                                data.getPlayer()[27]);
                        mark = 0;
                        prePlayerState = playerState;
                        speedX = speedY = 0;
                        break;
                    case 128:
                    case 129:
                        if ((3934 & prePlayerState) != 0)
                        {
                            prePlayerState = 128 + (1 & prePlayerState);
                            speedX = 0;
                            setCurrSequence(data.getPlayer()[14], data
                                    .getPlayer()[15]);
                            mark = 5;
                        }
                        break;
                    case 256:
                    case 257:
                        if ((582 & prePlayerState) != 0)
                        {
                            prePlayerState = playerState;
                            speedX = 0;
                            setCurrSequence(data.getPlayer()[12], data
                                    .getPlayer()[13]);
                        }
                        break;
                    case 512:
                    case 513:
                        prePlayerState = playerState;
                        speedX = data.getPlayer()[5];
                        if (prePlayerState == 513)
                        {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人午夜99999| 日韩视频在线一区二区| 91精品国产综合久久久蜜臀粉嫩| 精品福利在线导航| 一区二区三区成人在线视频| 国产一区日韩二区欧美三区| 欧美日韩国产大片| 亚洲欧美偷拍卡通变态| 国产一区二区三区免费播放| 欧美日韩免费高清一区色橹橹 | 激情综合网av| 在线视频欧美精品| 欧美国产在线观看| 国产一区二区三区视频在线播放| 欧美亚洲综合色| 一区精品在线播放| 丁香五精品蜜臀久久久久99网站 | 成人黄色小视频| 精品国产免费人成电影在线观看四季 | 久久99日本精品| 欧美一区二区啪啪| 日韩av中文字幕一区二区三区| 91九色最新地址| 亚洲综合男人的天堂| 99re热视频这里只精品| 国产精品久久久久国产精品日日| 国产美女精品一区二区三区| 久久色成人在线| 国产精品自在在线| 国产亚洲综合在线| 成人理论电影网| 亚洲欧美另类久久久精品| 91首页免费视频| 亚洲成人777| 欧美变态tickle挠乳网站| 久久99这里只有精品| 久久婷婷色综合| www.亚洲精品| 一区二区三区成人| 欧美精品电影在线播放| 喷水一区二区三区| 久久久www免费人成精品| 成人av网在线| 亚洲一区二区av在线| 欧美一卡在线观看| 国模少妇一区二区三区| 国产精品日产欧美久久久久| a美女胸又www黄视频久久| 亚洲欧洲日韩女同| 欧美精品乱码久久久久久按摩| 久久精品噜噜噜成人88aⅴ| 国产女人水真多18毛片18精品视频| 不卡的看片网站| 亚洲成人av电影在线| 精品国产91洋老外米糕| 成人h动漫精品一区二| 亚洲第四色夜色| 久久免费美女视频| 欧美午夜精品电影| 国产精品中文欧美| 亚洲国产欧美一区二区三区丁香婷| 欧美日韩免费电影| 成人免费看的视频| 天天亚洲美女在线视频| 国产日韩欧美制服另类| 色先锋资源久久综合| 奇米精品一区二区三区四区| 久久久久久久电影| 欧美亚洲另类激情小说| 国产精品白丝av| 午夜成人免费视频| 国产精品美女www爽爽爽| 欧美另类高清zo欧美| 成人性生交大片免费看视频在线| 午夜亚洲福利老司机| 国产精品午夜在线| 日韩一区二区三区在线观看| 91网址在线看| 国产成人亚洲综合a∨婷婷图片| 亚洲国产va精品久久久不卡综合| 国产亚洲精品中文字幕| 欧美高清视频在线高清观看mv色露露十八 | 欧美色老头old∨ideo| 国产乱色国产精品免费视频| 亚洲成人免费观看| 亚洲视频免费在线| 欧美激情一区三区| 欧美成人精品二区三区99精品| 在线观看免费一区| 成人不卡免费av| 国产91精品在线观看| 高清日韩电视剧大全免费| 亚洲成a人片在线观看中文| 亚洲视频一区二区免费在线观看| 日韩欧美国产一区二区三区| 欧美日本一区二区三区四区| 在线免费观看日本欧美| www.欧美色图| 丁香五精品蜜臀久久久久99网站| 久久se这里有精品| 久久国产日韩欧美精品| 青草av.久久免费一区| 亚洲国产aⅴ天堂久久| 亚洲黄色录像片| 亚洲欧洲精品一区二区三区| 欧美国产日韩在线观看| 久久精品免视看| 国产精品女上位| 中文字幕av一区二区三区免费看| 久久伊人中文字幕| 久久综合久久综合亚洲| 久久久久久久综合日本| 国产网红主播福利一区二区| 日韩美女主播在线视频一区二区三区| 这里只有精品视频在线观看| 欧美四级电影在线观看| 欧美日韩一区中文字幕| 欧美久久久久免费| 日韩欧美在线综合网| 欧美mv日韩mv国产网站app| 日韩精品综合一本久道在线视频| 日韩免费高清电影| 国产日韩欧美精品电影三级在线| 欧美国产日韩a欧美在线观看| 国产人伦精品一区二区| 中文字幕一区免费在线观看| 亚洲情趣在线观看| 亚洲国产日韩av| 蜜桃精品在线观看| 久草在线在线精品观看| 国产风韵犹存在线视精品| 成人午夜碰碰视频| 在线观看亚洲一区| 91精品国产91热久久久做人人 | 青青草91视频| 狠狠色狠狠色综合| 成人午夜视频网站| 欧美日韩国产经典色站一区二区三区 | 久久综合av免费| 中文字幕+乱码+中文字幕一区| 国产精品女主播av| 婷婷综合另类小说色区| 精品一区二区在线播放| 成人app下载| 欧美蜜桃一区二区三区| 久久久久成人黄色影片| 亚洲一区二区欧美| 国产一区二区三区四| 色婷婷精品久久二区二区蜜臀av| 制服丝袜一区二区三区| 日本一区二区三区电影| 五月天亚洲婷婷| 成人在线一区二区三区| 欧美人与z0zoxxxx视频| 国产欧美一区二区精品性| 亚洲高清免费一级二级三级| 久久精品999| 欧美亚洲国产一区二区三区 | 色视频成人在线观看免| 精品少妇一区二区三区日产乱码 | 久久精品人人做人人爽97| 亚洲美女免费在线| 国产一区中文字幕| 欧美久久久久久久久久| 1区2区3区精品视频| 精品一区二区精品| 欧美日韩美女一区二区| 亚洲欧美色综合| 国产成人av网站| 91精品国产综合久久蜜臀| 一区二区三区欧美| 高清在线不卡av| 久久综合视频网| 日本成人中文字幕| 欧美亚洲高清一区二区三区不卡| 久久先锋影音av鲁色资源| 亚洲国产精品久久久久秋霞影院| 国产精品77777| 精品国产乱码久久久久久夜甘婷婷| 伊人开心综合网| 色综合欧美在线| 国产精品视频一二三区 | 日本视频一区二区| 欧美日精品一区视频| 国产精品家庭影院| 丁香另类激情小说| 久久久不卡网国产精品二区| 免费美女久久99| 欧美一区二区三区白人| 日韩国产精品久久久久久亚洲| 欧美在线不卡一区| 亚洲一级二级在线| 欧美艳星brazzers| 日日噜噜夜夜狠狠视频欧美人| 91黄视频在线| 一区二区免费视频| 欧美亚洲综合另类| 日韩成人一级片| 日韩午夜av一区| 精品一区二区三区影院在线午夜|