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

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

?? applet1.java

?? Bomberman + source code. This Bomberman has many, many more features then regular Bomberman-games d
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
	                    bombs[bC].setBomb(false);
	                    bombs[bC].setBombTimer(0);
	                    bombs[bC].setCenter(X-i*tileS, Y);
	                }
	            }
	        }
	        catch (ArrayIndexOutOfBoundsException e) { }
	            checkHit(explosions[ID].toAbsX(X-i*tileS), explosions[ID].toAbsY(Y)); 
	    }
	    for (i = 1; i <= bombs[ID].getMaxUp(); i++) {
	        //Draw the correct fire
	        if (X == bombs[ID].getCenterX() && Y-i*tileS == bombs[ID].getCenterY())
	            b.drawImage(explosion[0],X,Y-i*tileS,tileS,tileS,this);
	        else if (i == bombs[ID].getMaxUp())
	            b.drawImage(explosion[5],(X),(Y-i*tileS),tileS,tileS,this);
	        else
	            b.drawImage(explosion[2],(X),(Y-i*tileS),tileS,tileS,this);
	        //Check if there is another bomb in the line of fire, and make it explode
	        try {
	            if (pMap[aX][aY-(i*tileS)/tileS] >= 30 && i > 0) {
	                bC = pMap[aX][aY-(i*tileS)/tileS]-30;
	                if (bC >= 0) {    
	                    explosions[bC] = new Explosion();
                        explosions[bC].setExplosionTimer((explosionDuration*1000)/cycleTime);
                        explodeBomb(bC);
	                    bombs[bC].setBomb(false);
	                    bombs[bC].setBombTimer(0);
	                    bombs[bC].setCenter(X,Y-i*tileS);
	                }
	            }
	        }
	        catch (ArrayIndexOutOfBoundsException e) { }
	        checkHit(explosions[ID].toAbsX(X), explosions[ID].toAbsY(Y-i*tileS)); 
	    }
	    for (i = 1; i <= bombs[ID].getMaxDown(); i++) {
	        //Draw the correct fire
	        if (X == bombs[ID].getCenterX() && Y+i*tileS == bombs[ID].getCenterY())
	            b.drawImage(explosion[0],X,Y+i*tileS,tileS,tileS,this);
	        else if (i == bombs[ID].getMaxDown())
	            b.drawImage(explosion[6],(X),(Y+i*tileS),tileS,tileS,this);
	        else
    	        b.drawImage(explosion[2],(X),(Y+i*tileS),tileS,tileS,this);
	        //Check if there is another bomb in the line of fire, and make it explode    
	        try {
	            if (pMap[aX][aY+(i*tileS)/tileS] >= 30 && i > 0) {
	                bC = pMap[aX][aY+(i*tileS)/tileS]-30;
	                if (bC >= 0) {    
	                    explosions[bC] = new Explosion();
                        explosions[bC].setExplosionTimer((explosionDuration*1000)/cycleTime);
                        explodeBomb(bC);
	                    bombs[bC].setBomb(false);
	                    bombs[bC].setBombTimer(0);
	                    bombs[bC].setCenter(X,Y+i*tileS);
	                }
	            }
	        }
	        catch (ArrayIndexOutOfBoundsException e) { }
	        checkHit(explosions[ID].toAbsX(X), explosions[ID].toAbsY(Y+i*tileS));
	    }
	    requestedPaint = true;
	}
	
	public void checkHit(int eAX, int eAY) {
	    int pAX;
	    int pAY;
	    for (int i = 0; i < player.length; i++) {
	        for (int Y = 0; Y < mapSize; Y++) {
	            pAY = player[i].toAbsY(player[i].getY()+pH/2);
	            if (eAY == pAY) {
	                for (int X = 0; X < mapSize; X++) {
        	            pAX = player[i].toAbsX(player[i].getX()+pW/2);
        	            if (pAX == eAX) {
        	                //player[i].setCanMove(false);
        	                gotHit(i);
        	            }
	                }
	            }
	        }
	    }
	}
	
	public void checkItemHit(int eAX, int eAY) {
	    if (destroyItemsOnHit) {
	        int iAX;
	        int iAY;
	        for (int i = 0; i < itemCounter; i++) {
	            if (item[i].isItem()) {
	                for (int Y = 0; Y < mapSize; Y++) {
	                    iAY = item[i].getAbsY();
	                    if (eAY == iAY) {
	                        for (int X = 0; X < mapSize; X++) {
	                            iAX = item[i].getAbsX();
        	                    if (iAX == eAX) {
        	                        itemGotHit(i);
        	                    }
	                        }
	                    }
	                }
	            }
	        }
	    }
	}
	
	public void gotHit(int playerID) {
	    if (!player[playerID].isImmortal()) {
	        player[playerID].setAnimation(1);
	        player[playerID].setImmortal(true);
	        player[playerID].setImmortalTimer((immortalTime*1000)/cycleTime);
	        died(playerID);
	    }
	}
	
	public void itemGotHit(int itemID) {
	    //destroy();
	    item[itemID].setItem(false);
	    item[itemID].setPos(getWidth(), getHeight());
	    
	}
	
	public void newBomb(int playerID) {
	    if (player[playerID].isImmortal())
	        return;
	    int bAX;
	    int bAY;
        for (int i = 0; i < player.length; i++) {
            if (playerID == i) {
                bAX = player[i].toAbsX(player[i].getX()+pW/2);
                bAY = player[i].toAbsY(player[i].getY()+pH/2);
                player[i].addBombPlaced();
                bombs[bombCounter] = new Bomb();
                bombs[bombCounter].setPlayerID(playerID);
                newBomb2(bAX,bAY);
            }
        }
       
	}
	public void newBomb2(int bAX, int bAY) {
	    bombs[bombCounter].setX(bombs[bombCounter].toX(bAX));
		bombs[bombCounter].setY(bombs[bombCounter].toY(bAY));
		bombs[bombCounter].setAbsPos(bAX, bAY);
        bombs[bombCounter].setBomb(true);
        bombs[bombCounter].setDestroyedBlockD(false);
        bombs[bombCounter].setDestroyedBlockU(false);
        bombs[bombCounter].setDestroyedBlockR(false);
        bombs[bombCounter].setDestroyedBlockL(false);
		bombs[bombCounter].setBombTimer((bombDuration*1000)/cycleTime);
		oldPMap[bAX][bAY] = pMap[bAX][bAY];        			
		pMap[bAX][bAY] = bombCounter+30; //30 or higher means there's a bomb at that place
		bombCounter++;
	}
	
	public void moveBomb(int bAX, int bAY, int direction) {
	    int bombID;
	    for (int i = 0; i < bombs.length; i++) {
	        try {
	            if (bombs[i].isBomb() && bombs[i].getAbsX() == bAX && bombs[i].getAbsY() == bAY) {
	                bombID = i;
	                //pMap[bAX][bAY] = oldPMap[bAX][bAY];
	                bombs[i].setMoving(true);
	                bombs[i].setDirection(direction);
	                bombs[i].move();
	                break;
	            }
	        }
	        catch (NullPointerException e) {
	            break;
	        }
	    }
	}
		
	public void makeItem(int bAX, int bAY) {
	    if (Misc.rand(0,100) < itemChance) {
	        item[itemCounter] = new Item(); //Create new item
	        item[itemCounter].setAbsPos(bAX,bAY); //Set the abs position
	        if (gameMode != 5)
	            item[itemCounter].setItemID(Misc.rand(1,items.length)); //Pick a random item
	        else {
	            switch (Misc.rand(1,5)) {
	                case 1: item[itemCounter].setItemID(1); break;
	                case 2: item[itemCounter].setItemID(3); break;
	                case 3: item[itemCounter].setItemID(7); break;
	                case 4: item[itemCounter].setItemID(8); break;
	            }
	        }
	        item[itemCounter].setItem(true); 
	        //item[itemCounter].setDestroyed(false);
	        int itemID = item[itemCounter].getItemID();
	        if (gameMode == 4)
	            itemID = 5;
	        if (itemID == 5 || itemID == 6) {       //Since the 'mine' has
                if ((bAX%2 == 0 && bAY%2 == 0) ||   //not one, but
                    (bAX%2 != 0 && bAY%2 != 0))     //two versions, with 
                    itemID = 6;                     //light and dark green 
                else                                //background, this is
                    itemID = 5;                     //needed to make the right
	        item[itemCounter].setItemID(itemID);    //one appear.
	        }                                   
	        itemCounter++;
	        //updateItems = true;
	    }
	}
	
	public void checkItem(int playerID) {
	    int iAX;
	    int iAY;
	    int pAX;
	    int pAY;
	    for (int i = 0; i < itemCounter; i++) {
	        try {
	            iAX = item[i].getAbsX();
	            iAY = item[i].getAbsY();
	            pAX = player[playerID].toAbsX(player[playerID].getX()+pW/2);
	            pAY = player[playerID].toAbsY(player[playerID].getY()+pH/2);
	            if (item[i].isItem() && pAX == iAX && pAY == iAY) {
	                takeItem(i,playerID);
	                break;
	            }
	        }
	        catch (NullPointerException e) { break; } 
	    }
	}
	/*
	    items[1]  //Image for extra bomb	
		items[2]  //Image for a bomb less
		items[3]  //Image for speed++
		items[4]  //Image for speed--
		items[5]  //Mine, light green field
		items[6]  //Mine, dark green field
		items[7]  //Make explosion longer
		items[8]  //Ability to kick a bomb
    */
	
	public void takeItem(int itemCount, int playerID) {
	    if (effectsAreOn)
	        soundEffect[2].play();
	    int itemID = item[itemCount].getItemID();
	    switch (itemID) {
	        case 1: player[playerID].addMaxBombs(); break;
	        case 2: player[playerID].delMaxBombs(); break;
	        case 3: player[playerID].addMoveSpeed(.5); break;
	        case 4: player[playerID].delMoveSpeed(.5); break;
	        case 5: explodeMine(itemCount); break;
	        case 6: explodeMine(itemCount); break;
	        case 7: player[playerID].addExplosionLength(); break;
	        case 8: player[playerID].setKickBombs(true); break;
	    }
	    item[itemCount].setItem(false);    
	}
	
	public void explodeMine(int itemCount) {
	    if (effectsAreOn)
	        soundEffect[1].play();
        bombs[bombCounter] = new Bomb();
	    bombs[bombCounter].setAbsPos(item[itemCount].getAbsX(),item[itemCount].getAbsY());
	    explosions[bombCounter] = new Explosion();
	    explosions[bombCounter].setExplosionTimer((explosionDuration*1000)/cycleTime);
	    item[itemCount].setItem(false);
	    isMine[bombCounter] = true;
	    bombCounter++;
	}
	
	public void drawItems() {
	    int itemID;
	    int x;
	    int y;
	    for (int i = 0; i < item.length; i++) {
	        try {
	            itemID = item[i].getItemID();
	            if (item[i].isItem()) {
	                x = item[i].getX();
	                y = item[i].getY();
	                b.drawImage(items[itemID],x,y,tileS,tileS,this);
	            }
	        }
	        catch (NullPointerException e) {
	            break; //With nullpointer, there has never been a 'new Item()' so after that there's no reason to look further
	        }
	    }
	    //updateItems = false;
	}	
	
	public void checkFields() { //Makes sure fields don't end empty
	    if (lifesField.getText().length() <= 0)
	        lifesField.setText("3");
	    if (timeField.getText().length() <= 0)
	        timeField.setText("10");
	    if (minBombField.getText().length() <= 0)
	        minBombField.setText("1");
	    if (maxBombField.getText().length() <= 0)
	        maxBombField.setText("10");
	    if (explosionTimeField.getText().length() <= 0)
	        explosionTimeField.setText("1");
	    if (bombTimeField.getText().length() <= 0)
	        bombTimeField.setText("3");
	    if (immortalTimeField.getText().length() <= 0)
	        immortalTimeField.setText("5");	    
	}

    public void died(int p) { //R.I.P.
        if (effectsAreOn)
	        soundEffect[0].play();
        player[p].delLives();
        player[p].setMoving(false);
        if ((res

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人看片黄a免费看在线| av在线一区二区三区| 国产suv精品一区二区6| 欧美影视一区二区三区| 久久久影视传媒| 午夜精品一区二区三区电影天堂| 韩国女主播成人在线观看| aaa亚洲精品一二三区| 欧美va日韩va| 婷婷丁香久久五月婷婷| 91视视频在线直接观看在线看网页在线看| 欧美一个色资源| 亚洲一区二区三区四区中文字幕| 国产凹凸在线观看一区二区| 日韩一本二本av| 亚洲国产精品一区二区久久恐怖片 | 久久这里只有精品首页| 亚洲精品国产视频| 国产成人欧美日韩在线电影| 欧美一级精品大片| 亚洲成在线观看| 91国在线观看| 中文字幕中文字幕在线一区 | 亚洲午夜激情网页| 91在线视频免费观看| 久久精品视频在线看| 麻豆91免费看| 91精品国产aⅴ一区二区| 亚洲综合图片区| 在线精品视频免费播放| 亚洲乱码一区二区三区在线观看| 懂色一区二区三区免费观看| 久久亚洲精华国产精华液| 麻豆91免费观看| 久久亚洲影视婷婷| 国产成人精品影院| 国产一区二区视频在线播放| 欧美电影免费观看高清完整版在线| 亚洲国产成人91porn| 在线视频国内自拍亚洲视频| 樱花影视一区二区| 欧美视频一区二区三区| 亚洲国产成人tv| 91精品中文字幕一区二区三区| 午夜在线成人av| 日韩欧美一区中文| 狠狠色丁香久久婷婷综合_中 | 欧美精品第1页| 日韩在线卡一卡二| 精品国产乱子伦一区| 国产一本一道久久香蕉| 中文字幕av在线一区二区三区| 成人黄色小视频在线观看| 中文字幕一区在线观看视频| 一本一道综合狠狠老| 亚洲一二三四久久| 91精品国产手机| 国产高清精品久久久久| 国产精品国产三级国产三级人妇| 色综合久久久久| 蜜臀av性久久久久蜜臀av麻豆| 久久香蕉国产线看观看99| 成人免费福利片| 亚洲va韩国va欧美va| 精品久久国产97色综合| 成人国产电影网| 首页国产丝袜综合| 欧美激情综合五月色丁香| 91麻豆福利精品推荐| 日韩一区欧美二区| 国产丝袜在线精品| 欧美日韩aaa| 大尺度一区二区| 日韩制服丝袜先锋影音| 国产亚洲欧美激情| 欧美性一二三区| 国产成都精品91一区二区三 | 中文字幕一区在线观看视频| 欧美电影影音先锋| 不卡欧美aaaaa| 蜜臀99久久精品久久久久久软件| 国产精品久久久久影院色老大 | 精品国产免费一区二区三区香蕉| 91原创在线视频| 久久99精品国产.久久久久| 国产精品午夜久久| 日韩精品中文字幕在线不卡尤物| 粉嫩av一区二区三区在线播放| 亚洲大型综合色站| **网站欧美大片在线观看| 日韩美女视频在线| 色综合网站在线| 国产成人精品免费看| 日日夜夜免费精品| 亚洲一区二区四区蜜桃| 国产精品视频麻豆| 久久女同精品一区二区| 欧美色爱综合网| 91网站视频在线观看| 天天综合色天天综合| 亚洲欧美日韩国产另类专区| 久久九九久精品国产免费直播| 6080国产精品一区二区| 色婷婷综合久色| 99久久久免费精品国产一区二区| 韩国三级中文字幕hd久久精品| 视频一区二区三区中文字幕| 亚洲精品高清在线观看| 国产精品久久久一本精品| 久久精品综合网| 国产欧美精品一区二区色综合| 日韩一区二区三区电影在线观看 | 国产亚洲一区二区三区在线观看| 日韩欧美一级二级三级久久久| 欧美日韩成人综合| 欧美性色欧美a在线播放| 色香色香欲天天天影视综合网| 成人av在线资源网站| 成人午夜激情视频| 国产91精品一区二区麻豆网站| 国产乱子伦视频一区二区三区| 免费欧美高清视频| 麻豆国产欧美一区二区三区| 蜜臀av一区二区三区| 久久精品国内一区二区三区| 久久av老司机精品网站导航| 久久激情五月婷婷| 国产美女娇喘av呻吟久久| 国产凹凸在线观看一区二区| 成人黄色在线网站| 91国在线观看| 日韩一级精品视频在线观看| 日韩一级成人av| 国产欧美精品一区二区色综合朱莉 | 亚洲免费视频成人| 亚洲丶国产丶欧美一区二区三区| 午夜精品视频一区| 久久不见久久见免费视频7| 国产一区在线不卡| 91在线观看美女| 欧美高清一级片在线| 精品三级在线看| 国产精品三级在线观看| 亚洲精品少妇30p| 日韩国产精品大片| 国产精品白丝jk白祙喷水网站| 成人av中文字幕| 制服丝袜亚洲色图| 久久精品视频一区二区三区| 亚洲美女精品一区| 麻豆精品在线观看| 99视频精品全部免费在线| 欧美日韩aaaaa| 国产精品久久久久影院色老大 | 日韩一区二区三区视频在线| 中文在线免费一区三区高中清不卡| 伊人婷婷欧美激情| 久久精品国产在热久久| 91小宝寻花一区二区三区| 日韩三区在线观看| 久久国产精品区| 亚洲一区二区三区中文字幕在线| 精品中文av资源站在线观看| 高清国产一区二区| 欧美一区二区三区免费视频| 国产精品无遮挡| 久久精品国产精品亚洲综合| 91在线云播放| 久久综合国产精品| 午夜欧美视频在线观看| 粉嫩av一区二区三区粉嫩| 日韩午夜三级在线| 一级日本不卡的影视| 国产大陆亚洲精品国产| 91精品国产综合久久精品图片| 亚洲人成网站影音先锋播放| 国产日本欧洲亚洲| 日本伊人精品一区二区三区观看方式| 成人午夜av电影| 欧美一区二区播放| 亚洲高清视频在线| 色先锋久久av资源部| 国产精品黄色在线观看| 狠狠色狠狠色合久久伊人| 91精品视频网| 香蕉成人啪国产精品视频综合网 | 中文字幕高清一区| 精品一区二区三区在线播放| 欧美日韩久久久一区| 一级特黄大欧美久久久| 色综合久久精品| 日韩理论片在线| 波多野结衣亚洲| 中文字幕欧美区| 国产一二精品视频| 日本一二三四高清不卡| 国产福利一区二区三区视频在线| 精品裸体舞一区二区三区| 久久精工是国产品牌吗| 精品少妇一区二区三区免费观看|