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

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

?? piecesselect.java

?? 一個簡單的Java Swing 游戲Blokus~方塊圈地~Eclipse3.0 Project
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
/*
 * 創建日期 2005-4-12
 *
 * TODO 要更改此生成的文件的模板,請轉至
 * 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
 */
package frame;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Random;

/**
 * @author Robert
 *
 * TODO 要更改此生成的類型注釋的模板,請轉至
 * 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
 */
public class PiecesSelect implements MouseListener,MouseWheelListener,
										Runnable,KeyListener{
	private CreateGame game;
	private CreateBlue bluePieces;
	private CreateYellow yellowPieces;
	private CreateRed redPieces;
	private CreateGreen greenPieces;
	private Pieces temp;
	
	private Thread startGame;
	
	private int playMode = 5;
	private int turn = 1;
	private boolean start = false;
	private boolean onMouse = false;
	private boolean canPut = false;
	private boolean finishP = false;
	private int blueS = 0, yellowS = 0, redS = 0, greenS = 0; 
	private boolean skipB = false, skipY = false, skipR = false, skipG = false;
	private boolean blueC = false, yellowC = false, redC = false, greenC = false;
	private boolean end =false;
	private int a1 = 1;
	private int a2 = 2;
	private int[] a3 = new int[2];
	private int[] a4 = new int[5];
	private int[] a5 = new int[12];
	private int[] c1 = new int[6]; 
	private int gametype = 0;
	
	//構造函數
	public PiecesSelect(CreateGame game){
		this.game = game;
		a3[0] = 3; a3[1] = 4;
		a4[0] = 5; a4[1] = 6; a4[2] = 7; a4[3] = 8; a4[4] = 9;
		for(int i = 0; i < 12; i ++)
			a5[i] = 10 + i;
		c1[0] = 0; c1[1] = 1; c1[2] = 2; c1[3] = 3; c1[4] = 4; c1[5] = 5;
	}
	
	//鼠標事件
	public void mouseClicked(MouseEvent e){
		int x,y;
		
		//鼠標左鍵而且沒有選擇棋子
		if(e.getClickCount() >= 1 && e.getButton() == 1 && onMouse == false){
			//autoRun(1);
			x = e.getX();
			y = e.getY();
			
			if(x > 440 && x < 840 && y > 20 && y < 720 && start == false){
				CreateDialog wD = new CreateDialog('n');
			}
			//System.out.println("x:" + x + " y:" + y);
			if(x >= 20 && x <= 200 && y >= 480 && y <= 540 && start == false){
				startGame = new Thread(this);
				startGame.start();
				start = true;
				game.setStartG(true);
				game.repaint();
			}
				
			if(x >= 240 && x <= 420 && y >= 480 && y <= 540 && start == false){
				CreateDialog optionD = new CreateDialog('o', game, this);
				game.repaint();
				//System.out.println("Options");
			}
				
			if(x >= 20 && x <= 200 && y >= 580 && y<= 640){
				CreateDialog exitD = new CreateDialog('e');
				//System.out.println("Exit");
			}
				
			if(x >= 240 && x <= 420 && y >= 580 && y<= 640 
					&& blueS > 1 && yellowS > 1 && redS > 1 && greenS > 1){
				//System.out.println("Give up!");
				if(turn == 1){
					skipB = true;
					if(skipY == false){
						turn = 2;
						game.setYl(180);
					}
					else{
						if(skipR == false){
							turn = 3;
							game.setYl(360);
						}
						else{
							if(skipG == false){
								turn = 4;
								game.setYl(540);
							}
							else
								end = true;
						}
					}					
				}
				else if(turn == 2){
					skipY = true;
					if(skipR == false){
						turn = 3;
						game.setYl(360);
					}
					else{
						if(skipG == false){
							turn = 4;
							game.setYl(540);
						}
						else{
							if(skipB == false){
								turn = 1;
								game.setYl(0);
							}
							else
								end = true;
						}
					}					
				}
				else if(turn == 3){
					skipR = true;
					if(skipG == false){
						turn = 4;
						game.setYl(540);
					}
					else{
						if(skipB == false){
							turn = 1;
							game.setYl(0);
						}
						else{
							if(skipY == false){
								turn = 2;
								game.setYl(180);
							}
							else
								end = true;
						}
					}					
				}
				else if(turn == 4){
					skipG = true;
					if(skipB == false){
						turn = 1;
						game.setYl(0);
					}
					else{
						if(skipY == false){
							turn = 2;
							game.setYl(180);
						}
						else{
							if(skipR == false){
								turn = 3;
								game.setYl(360);
							}
							else
								end = true;
						}
					}					
				}
				if(skipB == true && skipY ==true && skipR == true && skipG == true){
					end = true;
				}
				
				if(end == true){
					try{
						Thread.sleep(2000);					
						start = false;
						game.setStartG(false);
						CreateDialog endD = new CreateDialog('d', game, this);
					//game.repaint();
					}
					catch(InterruptedException evt){
							
					}
				}
				
				game.repaint();
			}
			if(start == true){	
			if(skipB == false){
				if(x >= 440 && x <= 840 && y >= 20 && y<= 180 && turn == 1 && blueC == false){
					int tn = 0;
					game.setPx(x);
					game.setPy(y);
					game.setKeyX(x);
					game.setKeyY(y);
					//System.out.println("x:" + x + " y:" + y);
					this.bluePieces = game.getBluePieces();
					Iterator ite = bluePieces.getImagePieces().iterator();
						
					tn = selectedPieceType(440, 20, x, y);
					if(tn != 0){
						while(ite.hasNext()){
							Pieces temp = (Pieces)ite.next();
							if(temp.getTypeNo() == tn && temp.getInUse() == true){
								blueS += 1;
								game.setPColor(1);
								temp.setPSelected(true);
								this.setTemp(temp);
								game.setTemp(temp);
								//turn = 2;
								//System.out.println("BlueS:" + blueS);
							}
						}
					}
					game.repaint();
				}
			}
			
			if(skipY == false){
				if(x >= 440 && x <= 840 && y >= 200 && y<= 360 && turn == 2 && yellowC == false){
					int tn = 0;
					game.setPx(x);
					game.setPy(y);
					game.setKeyX(x);
					game.setKeyY(y);
					//System.out.println("x:" + x + " y:" + y);
					this.yellowPieces = game.getYellowPieces();
					Iterator ite = yellowPieces.getImagePieces().iterator();
						
					tn = selectedPieceType(440, 200, x, y);
					if(tn != 0){
						while(ite.hasNext()){
							Pieces temp = (Pieces)ite.next();
							if(temp.getTypeNo() == tn && temp.getInUse() == true){
								yellowS += 1;
								game.setPColor(2);
								temp.setPSelected(true);
								this.setTemp(temp);						
								game.setTemp(temp);
								//turn = 3;
							}
						}
					}
					game.repaint();
				}
			}
			
			if(skipR == false){	
				if(x >= 440 && x <= 840 && y >= 380 && y<= 540 && turn == 3 && redC == false){
					int tn = 0;
					game.setPx(x);
					game.setPy(y);
					game.setKeyX(x);
					game.setKeyY(y);
					//System.out.println("x:" + x + " y:" + y);
					this.redPieces = game.getRedPieces();
					Iterator ite = redPieces.getImagePieces().iterator();
						
					tn = selectedPieceType(440, 380, x, y);
					if(tn != 0){
						while(ite.hasNext()){
							Pieces temp = (Pieces)ite.next();
							if(temp.getTypeNo() == tn && temp.getInUse() == true){
								redS += 1;
								game.setPColor(3);
								temp.setPSelected(true);
								this.setTemp(temp);
								game.setTemp(temp);
								//turn = 4;
							}
						}
					}
						
					game.repaint();
				}
			}
			
			if(skipG == false){
				if(x >= 440 && x <= 840 && y >= 560 && y<= 720 && turn == 4 && greenC == false){
					int tn = 0;
					game.setPx(x);
					game.setPy(y);
					game.setKeyX(x);
					game.setKeyY(y);
					//System.out.println("x:" + x + " y:" + y);
					this.greenPieces = game.getGreenPieces();
					Iterator ite = greenPieces.getImagePieces().iterator();
						
					tn = selectedPieceType(440, 560, x, y);
					if(tn != 0){
						while(ite.hasNext()){
							Pieces temp = (Pieces)ite.next();
							if(temp.getTypeNo() == tn && temp.getInUse() == true){
								greenS += 1;
								game.setPColor(4);
								temp.setPSelected(true);
								this.setTemp(temp);
								game.setTemp(temp);
								//turn = 1;
							}
						}
					}
						
					game.repaint();
				}
			}
			}
		
		}//End 鼠標左鍵
		//鼠標右鍵
		else if(e.getClickCount() == 1 && e.getButton() == 3 && onMouse == true){
			this.temp.setPSelected(false);
			this.temp.setGrid(temp.getBak());
			setOnMouse(false);
			game.setPOnMouse(false);
			game.setPColor(0);
			game.setCir(0);
			if(blueS == 1 && turn == 1){
				blueS = 0;
				game.setYl(0);
			}
			else if(yellowS == 1 && turn == 2){
				yellowS = 0;
				game.setYl(180);
			}
			else if(redS == 1 && turn == 3){
				redS = 0;
				game.setYl(360);
			}
			else if(greenS == 1 && turn == 4){
				greenS = 0;
				game.setYl(540);
			}
			
			/*if(turn == 1){
				turn = 4;
				game.setYl(540);
			}
			else{
				turn -= 1;
				game.setYl(180 * (turn - 1));
			}*/
			
			game.repaint();
		}//End 鼠標右鍵
		//棋盤上的鼠標左鍵
		else if(e.getClickCount() >= 1 && e.getButton() == 1 && onMouse == true){
			int x1,y1;
			x1 = e.getX();
			y1 = e.getY();
			finishP = false;
			//setCanPut(true);
			if(x1 > 20 && x1 < 420 && y1 > 20 && y1 < 420){
				float rx,cy,r,c;
				float ct;
				int[][] gr = this.temp.getGrid();
				int[][] br = game.getBoardGrid();
				
				r = game.getR();
				c = game.getS();
				rx = (x1 - r)/ 20 - 1;
				cy = (y1 - c)/ 20 - 1;
				if(rx - (int)rx > 0.3)
					rx += 1;
				if(cy - (int)cy > 0.3)
					cy += 1;
				//System.out.println("rx:" + rx + " cy:" + cy + " r:" + r + " sc:" + c);
				
				if(blueS == 1){				
					blueS = firstTurn(1,cy,rx);
					//System.out.println("S1:" + blueS);
					//finishP = true;
					blueS += 1;
				}
				if(yellowS == 1){
					yellowS = firstTurn(2,cy,rx);
					//System.out.println("S2:" + yellowS);
					//finishP = true;
					yellowS += 1;
				}
				if(redS == 1){
					redS = firstTurn(3,cy,rx);
					//finishP = true;
					redS += 1;
				}
				if(greenS == 1){
					greenS = firstTurn(4,cy,rx);
					//finishP = true;
					greenS += 1;
				}
				
				if(blueS >= 2 && yellowS >= 2 && redS >= 2 && greenS >= 2 && finishP == false){
					for(int i = 0; i < temp.getScore(); i ++){
						for(int j = 0; j < temp.getScore(); j ++){
							//System.out.print(gr[i][j] + " ");
							if(gr[i][j] == 1){
								canBePutOn(br,i,j,cy,rx);	
							}
						}
						//System.out.println();
					}
					for(int i = 0; i < temp.getScore(); i ++){
						for(int j = 0; j < temp.getScore(); j ++){
							//System.out.print(gr[i][j] + " ");
							if(gr[i][j] == 1){
								canNotBePutOn(br,i,j,cy,rx);
							}
						}
						//System.out.println();
					}
					
					if(canPut == true){
						for(int i = 0; i < temp.getScore(); i ++){
							for(int j = 0; j < temp.getScore(); j ++){
								//System.out.print(gr[i][j] + " ");
								if(gr[i][j] == 1 && br[(int)cy + i][(int)rx + j] != 0){
									setCanPut(false);
								}
							}
						}
					}
					if(canPut == true){
						for(int i = 0; i < temp.getScore(); i ++){
							for(int j = 0; j < temp.getScore(); j ++){
								//System.out.print(gr[i][j] + " ");
								if(gr[i][j] == 1){
									br[(int)cy + i][(int)rx + j] = temp.getpColor();
								}
							}
						}
						setCanPut(false);
						game.setBoardGrid(br);
						//System.out.println();
						//for(int i = 0; i < 20; i ++){
							//for(int j = 0; j < 10; j ++){
							//	System.out.print(br[i][j] + " ");
							//}
							//System.out.println();
						//}
						
						//game.setBoardGrid(br);
						temp.setOnBoard(true);
						game.setPOnMouse(false);
						setOnMouse(false);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品免费久久| 亚洲欧美在线视频| 亚洲天堂久久久久久久| 青青草成人在线观看| 福利电影一区二区| 精品国产成人在线影院 | 91亚洲资源网| 欧美一级片在线| 一区二区三区国产精华| 国产激情精品久久久第一区二区 | 日韩一区二区三区视频在线观看| 欧美经典一区二区| 蜜臀精品一区二区三区在线观看 | 成人理论电影网| 日韩一区二区在线看片| 亚洲国产欧美日韩另类综合| 99在线精品一区二区三区| 久久午夜羞羞影院免费观看| 男女男精品视频| 欧美精品欧美精品系列| 亚洲国产成人va在线观看天堂| www.成人在线| 中文字幕在线观看一区二区| 国产寡妇亲子伦一区二区| 欧美一区二区三区四区五区| 亚洲福利一二三区| 色综合久久久久综合| 1024成人网色www| 成人av电影在线播放| 欧美激情综合五月色丁香| 国产传媒一区在线| 欧美激情一区二区| 成人a区在线观看| 1000部国产精品成人观看| 99久久精品免费| 最新国产の精品合集bt伙计| 91年精品国产| 一区二区三区高清| 欧美日韩国产成人在线91| 亚洲成av人**亚洲成av**| 91麻豆精品国产自产在线观看一区 | 欧美精品v国产精品v日韩精品| 亚洲国产乱码最新视频| 欧美日韩中字一区| 日韩国产在线观看| 精品国产乱码91久久久久久网站| 国产一区二区三区综合| 中文字幕欧美日本乱码一线二线| 91网站在线播放| 亚洲va欧美va人人爽午夜| 日韩一区二区三区免费观看| 九九精品视频在线看| 中文字幕精品在线不卡| 91搞黄在线观看| 蜜桃视频在线观看一区| 国产香蕉久久精品综合网| 99国产精品一区| 天堂资源在线中文精品| 欧美一级免费大片| 国产91精品免费| 亚洲国产日韩a在线播放| 精品国产三级a在线观看| 国产福利电影一区二区三区| 亚洲精品视频一区二区| 日韩亚洲欧美成人一区| 成人久久18免费网站麻豆| 亚洲电影中文字幕在线观看| 欧美电影免费观看高清完整版在线| 成人自拍视频在线| 图片区小说区国产精品视频| 精品美女一区二区三区| 色偷偷88欧美精品久久久| 青青草原综合久久大伊人精品优势| 亚洲国产高清aⅴ视频| 欧美精品高清视频| 99re亚洲国产精品| 九九精品视频在线看| 亚洲视频免费看| 欧美不卡123| 欧美日韩小视频| 成人午夜在线视频| 免费成人小视频| 一区二区三区四区在线播放| 精品国产乱码久久久久久久| 欧美日韩一区二区在线视频| 国产成人免费视频网站| 美女任你摸久久| 亚洲福利视频导航| 樱桃国产成人精品视频| 日本一二三不卡| 久久久一区二区三区捆绑**| 欧美三级三级三级爽爽爽| www.欧美日韩| 国产成人av一区| 韩国精品主播一区二区在线观看| 天堂蜜桃一区二区三区| 亚洲一区二区三区三| 亚洲欧美一区二区不卡| 日本一区二区成人| 久久你懂得1024| 久久综合丝袜日本网| 日韩一级高清毛片| 欧美高清一级片在线| 欧美午夜精品一区二区三区| 日本高清成人免费播放| 成人av电影在线| 丰满白嫩尤物一区二区| 丁香婷婷综合色啪| 国产成人av一区| 国产91精品一区二区麻豆网站| 国产真实乱偷精品视频免| 久久99精品久久久久久国产越南| 人人超碰91尤物精品国产| 日韩在线一二三区| 日本欧美大码aⅴ在线播放| 一区二区三区精品在线观看| 亚洲精品视频在线| 一区二区三区在线免费视频 | 亚洲第一av色| 亚洲一本大道在线| 天天射综合影视| 麻豆国产精品官网| 国产乱人伦精品一区二区在线观看| 国产在线精品一区在线观看麻豆| 久久狠狠亚洲综合| 国产乱对白刺激视频不卡| 成人免费毛片嘿嘿连载视频| 成人午夜视频免费看| 91亚洲永久精品| 欧美色倩网站大全免费| 日韩一区二区三免费高清| 欧美精品一区二区三区视频| 久久精品一区四区| 亚洲人吸女人奶水| 日韩国产精品久久| 国产精品一区久久久久| 不卡区在线中文字幕| 色成人在线视频| 91精品国产综合久久久久久漫画| 日韩限制级电影在线观看| 国产亚洲一区字幕| 亚洲在线观看免费视频| 久久99热99| 99久久99久久精品国产片果冻| 欧美视频一区二| 久久综合给合久久狠狠狠97色69| 亚洲欧洲av一区二区三区久久| 亚洲一区免费在线观看| 黄一区二区三区| 色天天综合色天天久久| 欧美一区二区观看视频| 国产精品丝袜一区| 日韩综合在线视频| 成人短视频下载| 欧美乱妇15p| 国产精品丝袜在线| 日本成人在线电影网| 不卡的av网站| 日韩一区二区三区精品视频| 国产精品进线69影院| 青青草91视频| 在线免费精品视频| 国产三级精品在线| 日本中文在线一区| 一本久久a久久免费精品不卡| 日韩美女一区二区三区| 亚洲三级在线免费| 国产99久久久国产精品潘金| 91精品视频网| 亚洲精品福利视频网站| 国产激情精品久久久第一区二区| 欧美伊人久久久久久久久影院 | 国产成人丝袜美腿| 欧美一区二区在线看| 一区二区在线观看av| 国产精品91xxx| 日韩欧美中文一区二区| 亚洲精品少妇30p| 成人免费av网站| 久久精品人人爽人人爽| 免费高清视频精品| 69堂成人精品免费视频| 亚洲最新视频在线播放| 91视频免费播放| 国产精品日韩成人| 国产激情一区二区三区| 精品国产电影一区二区| 蜜桃视频在线观看一区| 69堂成人精品免费视频| 亚洲一区电影777| 91国产免费观看| 亚洲一区二区美女| 91国在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 五月天激情综合| 91久久线看在观草草青青| 国产精品久久久一区麻豆最新章节| 国产精品一区二区久激情瑜伽| 欧美一二区视频| 久久99国内精品|