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

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

?? combattank34.java

?? JAVA版的坦克大戰
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
							if(Wall[j].Bulletdestoried()){
								Wall[j].restore();
								tankbulletdestory = true;
							}
							if(Wall[j].walldestoried())
									Wall[j] = null;
						}
					}
				}
			}
			if(tankBullet[i] != null){
				for(int j = 0; j < SteelWall.length; j++){
					if(SteelWall[j] != null && tankBullet[i] != null){
						if((SteelWall[j].getborder()).intersects(tankBullet[i].getbulletborder())){
							SteelWall[j].damageWall(tankBullet[i].getbulletborder(), bulletpower, tankBullet[i].getbulletdirection());
							if(SteelWall[j].Bulletdestoried()){
								SteelWall[j].restore();
								tankbulletdestory = true;
							}
							if(SteelWall[j].walldestoried())
									SteelWall[j] = null;
						}
					}
				}
			}
			if(tankBullet[i] != null){
				for(int j = 0; j < Enemyindex; j++){
					if(E1[j] != null){
						if((E1[j].getE1()).intersects(tankBullet[i].getbulletborder())){
							Score +=100;
							BB[indexOfBB] = new bigBomb(E1[j].getxPos(), E1[j].getyPos());
							indexOfBB++;
							tankbulletdestory = true;
							if(E1[j].isFlashing()){
								PowerUp[indexOfpu] = new powerup();
								indexOfpu++;
							}
							E1[j] = null;
							if(Enemyindex < Enemylimits)
								EnemyNo++;
							break;
						}
					}
					if(E2[j] != null){
						if((E2[j].getE1()).intersects(tankBullet[i].getbulletborder())){
							Score +=200;
							BB[indexOfBB] = new bigBomb(E2[j].getxPos(), E2[j].getyPos());
							indexOfBB++;
							tankbulletdestory = true;
							if(E2[j].isFlashing()){
								PowerUp[indexOfpu] = new powerup();
								indexOfpu++;
							}
							E2[j] = null;
							if(Enemyindex < Enemylimits)
								EnemyNo++;
							break;
						}
					}
					if(E3[j] != null){
						if((E3[j].getE1()).intersects(tankBullet[i].getbulletborder())){
							Score+=300;
							BB[indexOfBB] = new bigBomb(E3[j].getxPos(), E3[j].getyPos());
							indexOfBB++;
							tankbulletdestory = true;
							if(E3[j].isFlashing()){
								PowerUp[indexOfpu] = new powerup();
								indexOfpu++;
							}
							E3[j] = null;
							if(Enemyindex < Enemylimits)
								EnemyNo++;
							break;
						}
					}
					if(E4[j] != null){
						if((E4[j].getE1()).intersects(tankBullet[i].getbulletborder())){
							E4[j].hurt();
							if(E4[j].getStatus() > 3){
								Score+=400;
								BB[indexOfBB] = new bigBomb(E4[j].getxPos(), E4[j].getyPos());
								indexOfBB++;
								E4[j] = null;
								if(Enemyindex < Enemylimits)
									EnemyNo++;
							}
							tankbulletdestory = true;
							if(E4[j] != null){
								if(E4[j].isFlashing()){
									PowerUp[indexOfpu] = new powerup();
									E4[j].stopFlashing();
									indexOfpu++;
								}
							}
							break;
						}
					}
				}
			}
			if(tankbulletdestory){
				SB[indexOfSB] = new smallBomb(tankBullet[i].getbulletposition());
				indexOfSB++;
				tankBullet[i] = null;
			}
		}

		//-- enemy bullets
		boolean enemybulletdestory = false;
		for(int i = 0; i < Enemyindex; i++){
			enemybulletdestory = false;
			if(enemyBullet[i] != null){
				enemyBullet[i].move();
				if(!Border.contains(enemyBullet[i].getbulletposition()))
					enemybulletdestory = true;
			}
			if(enemyBullet[i] != null){
				for(int j = 0; j < Wall.length; j++){
					if(Wall[j] != null && enemyBullet[i] != null){
						if((Wall[j].getborder()).intersects(enemyBullet[i].getbulletborder())){
							Wall[j].damageWall(enemyBullet[i].getbulletborder(),1, enemyBullet[i].getbulletdirection());
							if(Wall[j].Bulletdestoried()){
								Wall[j].restore();
								enemybulletdestory = true;
							}
							if(Wall[j].walldestoried())
								Wall[j] = null;
						}
					}
				}
			}
			if(enemyBullet[i] != null){
				for(int j = 0; j < SteelWall.length; j++){
					if(SteelWall[j] != null && enemyBullet[i] != null){
						if((SteelWall[j].getborder()).intersects(enemyBullet[i].getbulletborder())){
							SteelWall[j].damageWall(enemyBullet[i].getbulletborder(), 1, enemyBullet[i].getbulletdirection());
							if(SteelWall[j].Bulletdestoried()){
								SteelWall[j].restore();
								enemybulletdestory = true;
							}
						}
					}
				}
			}
			if(enemyBullet[i] != null){
				for(int j = indexOftankBullet - 2; j <= indexOftankBullet; j++){
					if(tankBullet[j] != null){
						if((tankBullet[j].getbulletborder()).intersects(enemyBullet[i].getbulletborder())){
                        	tankBullet[j] = null;
                			enemybulletdestory = true;
                        	break;
						}
					}
				}
			}
			if(enemyBullet[i] != null){
				if((enemyBullet[i].getbulletborder()).intersects(tank.getVBorder())){
					enemybulletdestory = true;
					if(sheild <= 0 && tank.gettankhealth() != 2){
						BB[indexOfBB] = new bigBomb(tank.getxPos(), tank.getyPos());
						indexOfBB++;
						if(life > 0)
							life--;
						if(life > 0){
							tank = new Tank(223, 498, 0 , 1);
							sheild = 200;
						}
						if(life <= 0 && sheild <= 0){
							tank = new Tank(600, 800, 0 , 1);
							gameover = true;
						}
						tankbulletNumber = 1;
						bulletpower = 1;
						tankbulletspeed = 7;
						TBI = 7;
					}
					if(tank.gettankhealth() == 2){
						bulletpower = 1;
						tank.hurt();
						tank.changeStatus(3);
					}
				}
			}
			if(enemyBullet[i] != null && Base.getImageNo() == 1){
				if((enemyBullet[i].getbulletborder()).intersects(Base.getBaseborder())){
					Base.doom();
					BB[indexOfBB] = new bigBomb(260, 498);
					indexOfBB++;
					enemybulletdestory = true;
					gameover = true;
				}
			}

			if(enemybulletdestory){
				SB[indexOfSB] = new smallBomb(enemyBullet[i].getbulletposition());
				indexOfSB++;
				enemyBullet[i] = null;
			}

		}

		// other essential movement
		if(fire_TYPED  && tankBullet[indexOftankBullet - tankbulletNumber] == null && tankbulletinterval <= 0 && !drawVictoryPics && !gameover){
			tankBullet[indexOftankBullet] = new bullet(tank.getxPos(), tank.getyPos(), tank.getDirection(),tankbulletspeed, bulletpower);
			indexOftankBullet++;
			tankbulletinterval = TBI;
		}
		tankbulletinterval--;

		// change bomb shape
		for(int i = 0; i <= indexOfSB; i++){
			if(SB[i] != null){
				if(SB[i].BombTimeleft() > 0)
					SB[i].keepbombing();
				if(SB[i].BombTimeleft() <= 0)
					SB[i] = null;
			}
		}
		for(int i = 0; i <= indexOfBB; i++){
			if(BB[i] != null){
				if(BB[i].BombTimeleft() > 0)
					BB[i].keepbombing();
				if(BB[i].BombTimeleft() <= 0)
					BB[i] = null;
			}
		}

		repaint();
	}

//====================================== paint ===============================================
	public void paint(Graphics g) {
		// Draw the background
		g.setColor(new Color(128, 64, 0));
		g.fillRect(0, 0 , 610, 520);
		g.setColor(Color.blue);
		g.drawRect(10, 10, 501, 501);
		g.drawRect(9, 9, 503, 503);
		// Draw the the static image objects
		//--- Draw walls
		for(int i = 0; i < Wall.length; i++){
			if(Wall[i] != null){
				g.drawImage(WALL, Wall[i].getxPos() - 12, Wall[i].getyPos() - 12, this);
				Wall[i].draw(g);
			}
		}
		for(int i = 0; i < SteelWall.length; i++){
			if(SteelWall[i] != null){
				g.drawImage(STEELWALL, SteelWall[i].getxPos() - 12, SteelWall[i].getyPos() - 12, this);
				SteelWall[i].draw(g);
			}
		}
		//--- Draw rivers
		for(int i = 0; i < River.length; i++)
			g.drawImage(RIVER, River[i].getxPos() - 12, River[i].getyPos() - 12, this);


		// Draw other moving objects
		for(int i = 0; i <= indexOftankBullet; i++){
			if(tankBullet[i] != null)
				tankBullet[i].draw(g);
		}

		for(int i = 0; i < Enemyindex; i++){
			if(enemyBullet[i] != null)
				enemyBullet[i].draw(g);
		}

		// Draw base
		g.drawImage(BASE[Base.getImageNo() - 1], 260 - 12, 497 - 12, this);

		// Draw bombs if there is any
		for(int i = 0; i <= indexOfSB; i++){
			if(SB[i] != null)
				SB[i].draw(g);
		}
		for(int i = 0; i <= indexOfBB; i++){
			if(BB[i] != null)
				BB[i].draw(g);
		}

		g.drawImage(tankImage[tank.getImageNo()], tank.getxPos() - 12, tank.getyPos() - 12, this);

		// Draw the moving image objects
		// the tank
		g.drawImage(tankImage[tank.getImageNo()], tank.getxPos() - 12, tank.getyPos() - 12, this);
		g.drawImage(tankImage[0], 520, 450 , this);

		if(sheild > 0){
			g.setColor(Color.red);
			g.drawRect(tank.getxPos() - 13, tank.getyPos() - 13, 27, 27);
			g.drawRect(tank.getxPos() - 12, tank.getyPos() - 12, 25, 25);
		}
		// enemy1
		for(int i = 0; i < Enemyindex; i++){
			if(E1[i] != null)
				g.drawImage(E1Image[E1[i].getImageNo()], E1[i].getxPos() - 12, E1[i].getyPos() - 12, this);
		}
		// enemy2
		for(int i = 0; i < Enemyindex; i++){
			if(E2[i] != null)
				g.drawImage(E2Image[E2[i].getImageNo()], E2[i].getxPos() - 12, E2[i].getyPos() - 12, this);
		}
		// enemy3
		for(int i = 0; i < Enemyindex; i++){
			if(E3[i] != null)
				g.drawImage(E3Image[E3[i].getImageNo()], E3[i].getxPos() - 12, E3[i].getyPos() - 12, this);
		}
		// enemy4
		for(int i = 0; i < Enemyindex; i++){
			if(E4[i] != null)
				g.drawImage(E4Image[E4[i].getImageNo()], E4[i].getxPos() - 12, E4[i].getyPos() - 12, this);
		}

		// Draw grass
		for(int i = 0; i < Grass.length; i++)
			Grass[i].draw(g);

		// Draw Power Up images
		for(int i = 0; i < indexOfpu; i++){
			if(PowerUp[i] != null){
				g.drawImage(PUimage[PowerUp[i].getFunction() - 1], PowerUp[i].getxPos() - 12, PowerUp[i].getyPos() - 12, this);
			}
		}

		// draw winning pics
		if(drawVictoryPics){
			g.setColor(Color.lightGray);
			if(GameFlow > 0 && GameFlow < 20){
				g.fillRect(11, 11, 500, GameFlow*15);
				g.fillRect(11, 510 - GameFlow*15, 500, GameFlow*15);
			}
			if(GameFlow >= 20 && GameFlow <= 208)
				g.fillRect(11, 11, 500, 500);
			if(GameFlow > 208 && GameFlow < 229){
				g.fillRect(11, 11, 500, 260 - (GameFlow - 209)*15);
				g.fillRect(11, 261 + (GameFlow - 209)*15, 500, 260 - (GameFlow - 209)*15);
			}
			Font titleFont = new Font("Century Gothic", Font.BOLD, 19);
			g.setFont(titleFont);
			g.setColor(Color.blue);
			if(GameFlow >= 20 && GameFlow <= 208)
			g.drawString("Stage Clear", 200, 250);
		}

		Font titleFont = new Font("Century Gothic", Font.BOLD, 16);
		g.setFont(titleFont);
		g.setColor(new Color(81, 94, 255));
		g.drawString("x", 550, 468);
		g.drawString(life + "", 565, 469);
		String SCORE = Score + "";
		g.drawString("Scores:" + "", 515, 420);
		g.drawString(SCORE.substring(SCORE.length() - 6, SCORE.length()) + "", 525, 438);
		g.setColor(new Color(224, 97, 199));
		g.drawString("Enemy = " + (20 - Enemyindex), 515, 50);

		if(gameover){
			titleFont = new Font("Century Gothic", Font.BOLD, 24);
			g.setFont(titleFont);
			g.setColor(new Color(81, 94, 225));
			g.drawString("G A M E", 212, 220);
			g.drawString("O V  E  R", 212, 250);
		}
	}

//====================================== KeyEvent==============================================
	// when a key is pressed.....
	public void keyPressed(KeyEvent e){
		if(!gameover && !drawVictoryPics){
			if(e.getKeyCode() == KeyEvent.VK_UP){
				if(tank.getDirection() != 0)
					tank.ChangeFace(0);
				UP_TYPED = true;
			}
			if(e.getKeyCode() == KeyEvent.VK_LEFT){
				if(tank.getDirection() != 2)
					tank.ChangeFace(2);
				LEFT_TYPED = true;
			}
			if(e.getKeyCode() == KeyEvent.VK_DOWN ){
				if(tank.getDirection() != 1)
					tank.ChangeFace(1);
				DOWN_TYPED = true;
			}
			if(e.getKeyCode() == KeyEvent.VK_RIGHT ){
				if(tank.getDirection() != 3)
					tank.ChangeFace(3);
				RIGHT_TYPED = true;
			}
			if((fire_TYPED || e.getKeyChar() == 's') && tankBullet[indexOftankBullet - tankbulletNumber] == null && tankbulletinterval <= 0){
				tankBullet[indexOftankBullet] = new bullet(tank.getxPos(), tank.getyPos(), tank.getDirection(),tankbulletspeed, bulletpower);
				indexOftankBullet++;
				fire_TYPED = true;
				tankbulletinterval = TBI;
			}
		}
	}

	// when this key is the released.....
	public void keyReleased(KeyEvent e){
		if(e.getKeyCode() == KeyEvent.VK_UP && UP_TYPED){
			UP_TYPED = false;
		}
		if(e.getKeyCode() == KeyEvent.VK_DOWN && DOWN_TYPED){
			DOWN_TYPED = false;
		}
		if(e.getKeyCode() == KeyEvent.VK_RIGHT && RIGHT_TYPED){
			RIGHT_TYPED = false;
		}
		if(e.getKeyCode() == KeyEvent.VK_LEFT && LEFT_TYPED){
			LEFT_TYPED = false;
		}
		if(e.getKeyChar() == 's' && fire_TYPED){
			fire_TYPED = false;
		}
	}

	public void keyTyped(KeyEvent e){}

//======================================== others ============================================

	public void update(Graphics g) {
		Graphics offScreenGraphics;
		if (offScreenImage == null) {
		offScreenImage = createImage(610, 520);
		}
		offScreenGraphics = offScreenImage.getGraphics();
		offScreenGraphics.setColor(Color.white);
		offScreenGraphics.fillRect(0, 0, 610, 520);
		paint(offScreenGraphics);
		g.drawImage(offScreenImage, 0, 0, this);
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久久久久久久久久久99 | 久久久久久久久久久久久夜| 欧美日韩免费不卡视频一区二区三区 | 久久99精品久久只有精品| 五月激情综合色| 午夜精品久久久久久久久久久| 性久久久久久久| 婷婷丁香激情综合| 美女国产一区二区| 国产在线日韩欧美| 国产白丝精品91爽爽久久| 福利电影一区二区| 91麻豆文化传媒在线观看| 91亚洲精品一区二区乱码| 91在线视频在线| 欧美亚洲一区三区| 91麻豆精品久久久久蜜臀| 日韩久久免费av| 国产嫩草影院久久久久| 中文字幕一区二区不卡 | 成人激情文学综合网| 91色|porny| 欧美男人的天堂一二区| 日韩亚洲欧美中文三级| 精品国产伦一区二区三区观看方式| 国产亚洲综合色| 亚洲视频资源在线| 日日嗨av一区二区三区四区| 国产乱人伦偷精品视频不卡| 成人av电影在线观看| 欧洲在线/亚洲| 日韩免费高清电影| 中文字幕第一区| 亚洲va欧美va国产va天堂影院| 日本v片在线高清不卡在线观看| 国产精品一区久久久久| 91在线免费播放| 日韩一区二区三| 中文字幕一区免费在线观看| 天天色天天操综合| 粉嫩蜜臀av国产精品网站| 欧美亚洲综合一区| 久久一留热品黄| 亚洲精品videosex极品| 激情小说亚洲一区| 日本道精品一区二区三区| 日韩一级免费观看| 亚洲欧美日韩成人高清在线一区| 丝袜美腿亚洲一区二区图片| 成人三级伦理片| 日韩三级.com| 最新中文字幕一区二区三区| 美女一区二区在线观看| www.在线欧美| 欧美电影免费观看高清完整版在线观看| 国产精品视频在线看| 免费成人美女在线观看| 91久久精品午夜一区二区| 久久综合精品国产一区二区三区 | 91视频你懂的| 精品国产一区二区三区不卡| 亚洲国产一区二区三区 | 国产日产欧美一区| 热久久一区二区| 色狠狠综合天天综合综合| 国产亚洲综合在线| 蜜臀久久99精品久久久画质超高清 | 亚洲电影一级片| 成人自拍视频在线观看| 日韩视频中午一区| 亚洲成av人片在www色猫咪| 成人激情开心网| 久久综合视频网| 男女视频一区二区| 91精品福利视频| 中文字幕永久在线不卡| 国产精品一区二区男女羞羞无遮挡 | 国产福利精品一区二区| 日韩一级视频免费观看在线| 亚洲成a人在线观看| 色八戒一区二区三区| 欧美激情中文不卡| 国产精品一区二区无线| 精品粉嫩aⅴ一区二区三区四区| 亚洲aaa精品| 欧美撒尿777hd撒尿| 中文字幕一区二区三区视频| 国产不卡视频在线观看| 26uuu久久综合| 久久国内精品视频| 欧美一区二区三区免费大片| 天天操天天综合网| 67194成人在线观看| 亚洲国产视频一区| 欧美视频一区二区三区在线观看| 亚洲精品视频自拍| 91在线一区二区| 中文字幕在线免费不卡| 99久久精品国产网站| 中文字幕一区免费在线观看| 99视频一区二区| 亚洲视频综合在线| 一本色道久久综合亚洲91| 亚洲嫩草精品久久| 色婷婷综合久久| 亚洲一区二区三区中文字幕| 欧美性猛片xxxx免费看久爱| 亚洲最大成人网4388xx| 欧美中文字幕一区| 日日摸夜夜添夜夜添亚洲女人| 欧美日韩一区二区三区不卡| 亚洲大片免费看| 91精品国产综合久久婷婷香蕉| 蜜桃av噜噜一区二区三区小说| 日韩一级免费一区| 国产精品主播直播| 国产精品成人在线观看| 91成人在线观看喷潮| 天天影视网天天综合色在线播放| 91精品国产一区二区三区香蕉| 免费成人在线网站| 99视频精品全部免费在线| 欧美高清视频www夜色资源网| 五月激情综合色| 欧美精品一区二区精品网| 国产乱子伦视频一区二区三区 | 久久美女高清视频| 成人爱爱电影网址| 一区二区三区.www| 91麻豆精品国产91久久久更新时间 | 国产成人免费高清| 国产精品白丝在线| 欧美日韩国产成人在线免费| 久久er精品视频| 国产精品二区一区二区aⅴ污介绍| 色综合久久88色综合天天6| 日韩二区三区四区| 国产欧美综合在线| 欧美日韩一二三区| 久久精品二区亚洲w码| 久久精品视频免费| 色狠狠av一区二区三区| 精品综合久久久久久8888| 国产欧美日产一区| 欧美日韩一二三区| 国产成人免费在线视频| 亚洲福利一二三区| 久久尤物电影视频在线观看| 色婷婷亚洲精品| 久久成人av少妇免费| 中文字幕日韩精品一区| 欧美一区二区三区四区久久| 99视频精品全部免费在线| 日韩中文字幕1| 亚洲欧美中日韩| 欧美一级视频精品观看| a4yy欧美一区二区三区| 麻豆精品一二三| 亚洲一级片在线观看| 国产色综合一区| 日韩一区二区免费电影| 日本道免费精品一区二区三区| 国产精品自产自拍| 日韩精彩视频在线观看| 最好看的中文字幕久久| 精品国产一区a| 欧美日韩一区二区三区四区五区| 粉嫩aⅴ一区二区三区四区| 麻豆久久一区二区| 亚洲国产一区在线观看| 亚洲欧洲日韩综合一区二区| 精品黑人一区二区三区久久| 欧美日韩在线精品一区二区三区激情| 国产不卡视频在线观看| 麻豆91在线播放| 日韩成人精品在线观看| 亚洲一区二区在线播放相泽| 中文字幕一区在线| 中文字幕乱码亚洲精品一区| 精品国产一区二区三区av性色| 在线观看91av| 精品视频免费在线| 91免费版pro下载短视频| 国产成人av在线影院| 紧缚奴在线一区二区三区| 免费视频一区二区| 日韩国产欧美一区二区三区| 亚洲综合激情另类小说区| 亚洲天堂成人网| 日韩美女精品在线| 中文字幕一区av| √…a在线天堂一区| 国产精品免费av| 中文字幕乱码日本亚洲一区二区| 久久久亚洲精品一区二区三区| 精品久久久久久久一区二区蜜臀| 日韩一区二区三区视频在线 | 欧美国产日韩一二三区| 国产女同性恋一区二区| 久久久九九九九|