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

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

?? mypanel.java

?? Java平臺上實現的五子棋對戰程序
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
			if(line[pos+i]==0) {break;}
			if(line[pos+i]== 2-color) 	{rblock=true; break;}
			if(line[pos+i] == color+1)	{runion++;}
			i++;
		}
		i=2;
		while(pos-i>-1 && line[pos-1]==0){
			if(line[pos-i]==0) {break;}
			if(line[pos-i]== 2-color) 	{lblock=true; break;}
			if(line[pos-i] == color+1)	{lunion++;}
			i++;
		}
		if(lunion==3 && runion==3) return 50;
		if(lunion==2 && !lblock) return 10;
		if(runion==2 && !rblock) return 10;
		if(lunion==3 && lblock) return 12;
		if(runion==3 && rblock)	return 12;
		return -1;
	}
	
	private int checkline(int[] line, int pos, int color, int dir, int []union)
	{
		int weight = 0, count=0, i=dir, max=0;
		boolean firsp = true;
		union[0]=0;
		if(pos+dir==-1 || pos+dir==line.length) return -3; // meet wall
		while(pos+i > -1 && pos+i<line.length)
		{
			if(line[pos+i] == color + 1){ // 遇到己方
				if(firsp) {max++; union[0]=max;}
				else {count++; max=0;}
				if(pos+i == 0 || pos+i == line.length - 1) {weight += 2; break;}
				if(!firsp) weight += 4;
				else {
					if(max==4) return 50;
					weight += 5;
				}
			}
			//else if(line[pos+i]<0) break; //遇到禁手
			else if(line[pos+i]<=0 && firsp){ //遇到第一空
				if(i==dir) break;
				firsp = false;
				weight += 1;
				max = 0;
			}
			else if(line[pos+i]<=0 && !firsp) {//遇到第二空
				if(count>2)
					weight += 1;
				break;
			}
			else {//遇到敵方子
				if(firsp)
					weight -= 3;
				else if(!firsp && (count==0 || count>2)) weight -= 1;
				else if(!firsp && (count>0 && count<3)) weight -= 2;
				break;
			}
			i += dir;
		}
		return weight;
	}
	
	private void shu(int r, int c){
		int line[] = new int[15];
		int left[] = new int[1];
		int right[] = new int[1];
		int temp;
		for(int i=0;i<15;i++)
			line[i] = table[i][c];
		
		temp = checkbase(line, r, mycolor);
		if(temp==-1) temp= checkspecial(line, r, mycolor);
		else p_table[r][c][0] = temp;
		if(temp==-1){
			p_table[r][c][0] = checkline(line, r, mycolor, 1, left) + checkline(line, r, mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) p_table[r][c][0]=14; // 隔三差五型
			else if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=12) p_table[r][c][0]=10; // 活三型
			else if(left[0]+right[0]==3 && p_table[r][c][0]>=17) p_table[r][c][0]=16; //活四型
			else if(left[0]+right[0]==4) p_table[r][c][0]=50; // 必勝型
			else if(left[0]+right[0]>4) p_table[r][c][0]=60; // 六子型
		}
		
		temp = checkbase(line, r, 1-mycolor);
		if(temp==-1) temp= checkspecial(line, r, 1-mycolor);
		else c_table[r][c][0] = temp;
		if(temp==-1){
			c_table[r][c][0] = checkline(line, r, 1-mycolor, 1, left) + checkline(line, r, 1-mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && c_table[r][c][0]>=15) c_table[r][c][0]=14;
			else if(left[0]==1 && right[0]==1 && c_table[r][c][0]>=12) c_table[r][c][0]=10; // 活三型
			else if(left[0]+right[0]==3 && c_table[r][c][0]>=17) c_table[r][c][0]=16;
			else if(left[0]+right[0]==4) c_table[r][c][0]=50;
			else if(left[0]+right[0]>4) c_table[r][c][0]=60;
		}
	}
	
	private void heng(int r, int c){
		int line[] = new int[15];
		int left[] = new int[1];
		int right[] = new int[1];
		int temp;
		for(int i=0;i<15;i++)
			line[i] = table[r][i];
		
		temp = checkbase(line, c, mycolor);
		if(temp==-1) temp= checkspecial(line, c, mycolor);
		else p_table[r][c][1] = temp;
		if(temp==-1){
			p_table[r][c][1] = checkline(line, c, mycolor, 1, left) + checkline(line, c, mycolor, -1, right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) p_table[r][c][1]=14;
			else if(left[0]==1 && right[0]==1 && p_table[r][c][1]>=12) p_table[r][c][1]=10; // 活三型
			else if(left[0]+right[0]==3 && p_table[r][c][1]>=17) p_table[r][c][1]=16;
			else if(left[0]+right[0]==4) {p_table[r][c][1]=50;}
			else if(left[0]+right[0]>4) p_table[r][c][1]=60;
		}
		
		temp = checkbase(line, c, 1-mycolor);
		if(temp==-1) temp= checkspecial(line, c, 1-mycolor);
		else c_table[r][c][1] = temp;
		if(temp==-1){
			c_table[r][c][1] = checkline(line, c, 1-mycolor, 1, left) + checkline(line, c, 1-mycolor, -1, right);
			if(left[0]==1 && right[0]==1 && c_table[r][c][0]>=15) c_table[r][c][1]=14;
			else if(left[0]==1 && right[0]==1 && c_table[r][c][1]>=12) c_table[r][c][1]=10; // 活三型
			else if(left[0]+right[0]==3 && c_table[r][c][1]>=17) c_table[r][c][1]=16;
			else if(left[0]+right[0]==4) {c_table[r][c][1]=50;}
			else if(left[0]+right[0]>4) c_table[r][c][1]=60;
		}
	}
	
	private void pie(int r, int c){
		int length, baser, basec;
		int left[] = new int[1];
		int right[] = new int[1];
		int temp;
		if(r+c<=14) {
			length = r+c+1;
			baser = r + c;
			basec = 0;
		}
		else {
			length = 28-r-c+1;
			baser = 14;
			basec = c + r - 14;
		}
		int line[] = new int[length];
		for(int i=0;i<length;i++)
			line[i] = table[baser-i][basec+i];
		
		temp = checkbase(line, baser-r, mycolor);
		if(temp==-1) temp= checkspecial(line, baser-r, mycolor);
		else p_table[r][c][2] = temp;
		if(temp==-1){
			p_table[r][c][2] = checkline(line, baser-r, mycolor, 1,left) + checkline(line, baser-r, mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) p_table[r][c][2]=14;
			else if(left[0]==1 && right[0]==1 && p_table[r][c][2]>=12) p_table[r][c][2]=10; // 活三型
			else if(left[0]+right[0]==3 && p_table[r][c][2]>=17) p_table[r][c][2]=16;
			else if(left[0]+right[0]==4) p_table[r][c][2]=50;
			else if(left[0]+right[0]>4) p_table[r][c][2]=60;
		}
		
		temp = checkbase(line, baser-r, 1-mycolor);
		if(temp==-1) temp= checkspecial(line, baser-r, 1-mycolor);
		else c_table[r][c][2] = temp;
		if(temp==-1){
			c_table[r][c][2] = checkline(line, baser-r, 1-mycolor, 1,left) + checkline(line, baser-r, 1-mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) c_table[r][c][2]=14;
			else if(left[0]==1 && right[0]==1 && c_table[r][c][2]>=12) c_table[r][c][2]=10; // 活三型
			else if(left[0]+right[0]==3 && c_table[r][c][2]>=17) c_table[r][c][2]=16;
			else if(left[0]+right[0]==4) c_table[r][c][2]=50;
			else if(left[0]+right[0]>4) c_table[r][c][2]=60;
		}
	}
	
	private void na(int r, int c){
		int length, baser, basec;
		int left[] = new int[1];
		int right[] = new int[1];
		int temp;
		if(r>=c) {
			length = 14-r+c+1;
			baser = r - c;
			basec = 0;
		}
		else {
			length = 14-c+r+1;
			baser = 0;
			basec = c-r;
		}
		int line[] = new int[length];
		for(int i=0;i<length;i++)
			line[i] = table[baser+i][basec+i];
		
		temp = checkbase(line, r-baser, mycolor);
		if(temp==-1) temp= checkspecial(line, r-baser, mycolor);
		else p_table[r][c][3] = temp;
		if(temp==-1){
			p_table[r][c][3] = checkline(line, r-baser, mycolor, 1,left) + checkline(line, r-baser, mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) p_table[r][c][3]=14;
			else if(left[0]==1 && right[0]==1 && p_table[r][c][3]>=12) p_table[r][c][3]=10; // 活三型
			else if(left[0]+right[0]==3 && p_table[r][c][3]>=17) p_table[r][c][3]=16;
			else if(left[0]+right[0]==4) p_table[r][c][3]=50;
			else if(left[0]+right[0]>4) p_table[r][c][3]=60;
		}
		
		temp = checkbase(line, r-baser, 1-mycolor);
		if(temp==-1) temp= checkspecial(line, r-baser, 1-mycolor);
		else c_table[r][c][3] = temp;
		if(temp==-1){
			c_table[r][c][3] = checkline(line, r-baser, 1-mycolor, 1,left) + checkline(line, r-baser, 1-mycolor, -1,right);
			if(left[0]==1 && right[0]==1 && p_table[r][c][0]>=15) c_table[r][c][3]=14;
			else if(left[0]==1 && right[0]==1 && c_table[r][c][3]>=12) c_table[r][c][3]=10; // 活三型
			else if(left[0]+right[0]==3 && c_table[r][c][3]>=17) c_table[r][c][3]=16;
			else if(left[0]+right[0]==4) c_table[r][c][3]=50;
			else if(left[0]+right[0]>4) c_table[r][c][3]=60;
		}
	}
	
	public void paint(Graphics pic){  // 刷新函數
		super.paint(pic);
		Image im = board.getImage();
		pic.drawImage(im, 0, 0, this);  // 畫河流圖片
	}
	
	public void paint(int row, int col) {
		int x = col*23+1;
		int y = row*23+1;
		Image im1 = black.getImage();
		Image im2 = white.getImage();
		if(bw == 0) {
			this.getGraphics().drawImage(im1, x, y, this);
		}
		else {
			this.getGraphics().drawImage(im2, x, y, this);
		}
	}
	
	public byte waitforanother_black(int n) {
		ByteBuffer bytebuf = ByteBuffer.allocate(n);   //   創建一個指定大小的緩沖區 
		bytebuf.order(ByteOrder.LITTLE_ENDIAN);
		try {
			socket.getInputStream().read(bytebuf.array());
			byte b = bytebuf.get(0);
			byte c = bytebuf.get(n - 1);
			switch(b) {
			case 6:
				System.out.println("game start");
				if(flag == 0) {
					step(7,7);
					flag = 1;
				}
				break;
			case 7:
				xnow = bytebuf.get(3);
				ynow = bytebuf.get(4);
				bw = bytebuf.get(2);
				table[xnow][ynow] = bw + 1;
				bytebuf.flip();
				paint(xnow, ynow);
				num++;
				break;
			case 2:
				invalid = false;
				break;
			case 1:
				table[laststep[0]][laststep[1]] = -1;
				invalid = true;
				break;
			case 9: case 10: case 11:
				break;
			default:
				break;
			}
			if(c == 10 || c == 11) return c;
			bytebuf.flip();
			bytebuf.clear();
			return b;
		} catch (IOException e) {
			e.printStackTrace();
			return 0;
		}
	}
	
	public byte waitforanother_white(int n) {
		ByteBuffer bytebuf = ByteBuffer.allocate(n);   //   創建一個指定大小的緩沖區 
		bytebuf.order(ByteOrder.LITTLE_ENDIAN);
		try {
			socket.getInputStream().read(bytebuf.array());
			byte b = bytebuf.get(0);
			byte c = bytebuf.get(n - 1);
			switch(b) {
			case 7:
				xnow = bytebuf.get(3);
				ynow = bytebuf.get(4);
				bw = bytebuf.get(2);
				table[xnow][ynow] = bw + 1;
				bytebuf.flip();
				paint(xnow, ynow);
				num++;
				break;
			case 2:
				break;
			case 9: case 10: case 11:
				break;
			default:
				break;
			}
			if(c == 10 || c == 11) return c;
			bytebuf.flip();
			bytebuf.clear();
			return b;
		} catch (IOException e) {
			e.printStackTrace();
			return 0;
		}
	}
	
	public void step(int r, int c){
		color = (byte)mycolor;
		row = (byte)r;
		col = (byte)c;
		
		if(table[row][col] > 0) {
			System.out.println(row + " " + col);
			System.out.println("can't go");
			return;
		}
		try {
			ByteBuffer bytebuf = ByteBuffer.allocate(10);   //   創建一個指定大小的緩沖區 
			bytebuf.order(ByteOrder.LITTLE_ENDIAN);   //按照LITTLE_ENDIAN字節序收發數據BIG_ENDIAN
			bytebuf.put(messages.COMM_MSG_CHESS);
			bytebuf.put(index);
			bytebuf.put(color);
			bytebuf.put(row);
			bytebuf.put(col);
			bytebuf.put(nothing);
			bytebuf.put(nothing);
			bytebuf.put(nothing);
			bytebuf.put(nothing);
			byte [] bb = new byte[9];			
			bytebuf.flip();
			bytebuf.get(bb);
			socket.getOutputStream().write(bb);
			socket.getOutputStream().flush();
			bytebuf.flip();
			bytebuf.clear();
		} catch(Exception ex) {
			ex.printStackTrace();
		}
	}
	
	private MouseListener lay = new MouseListener() {
		public void mouseClicked(MouseEvent e) {
			if(e.getButton() == 1)
			{
				ynow = e.getX()/23;
				xnow = e.getY()/23;
				
				if(table[xnow][ynow] > 0) {
					System.out.println("can't go");
					return;
				}

				bw = 1-bw;
				paint(xnow, ynow);
				num++;
				table[xnow][ynow] = bw+1;
				filltable();
				int[] result = new int[2];
				result = seekpos();
				bw = 1-bw;
				paint(result[0], result[1]);
				table[result[0]][result[1]] = bw+1;
			}
		}
		public void mousePressed(MouseEvent e) {
		}
		public void mouseReleased(MouseEvent e) {
		}
		public void mouseEntered(MouseEvent e) {
		}
		public void mouseExited(MouseEvent e) {
		}
	};
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产suv精品一区二区6| 黑人巨大精品欧美黑白配亚洲 | 中文幕一区二区三区久久蜜桃| 欧美三级日韩三级| 欧美日韩免费一区二区三区| 欧美乱熟臀69xxxxxx| 欧美精品aⅴ在线视频| 欧美日韩国产一区二区三区地区| 欧美专区在线观看一区| 欧美日韩一区二区三区在线看| 欧美无砖专区一中文字| 日韩欧美国产小视频| 精品成人佐山爱一区二区| 国产女同性恋一区二区| 国产精品福利一区| 婷婷国产在线综合| 麻豆91精品视频| 91精品国产免费| 99v久久综合狠狠综合久久| 国产成人av影院| 欧美日韩免费电影| 久久精品欧美一区二区三区麻豆| 精品福利一区二区三区 | 91精品国产黑色紧身裤美女| 精品国产91乱码一区二区三区| 国产精品免费av| 五月婷婷综合在线| 成人免费视频视频在线观看免费| 色一区在线观看| 欧美国产一区视频在线观看| 亚洲国产日韩精品| 成人美女视频在线看| 日韩欧美卡一卡二| 亚洲国产成人av好男人在线观看| 成人一区二区三区视频在线观看 | 亚洲综合一区在线| 成人一道本在线| 精品国产免费一区二区三区四区 | 欧美色偷偷大香| 亚洲伦理在线精品| 91久久一区二区| 有坂深雪av一区二区精品| 不卡一区在线观看| 国产精品欧美极品| 成人免费视频视频| 日韩美女视频一区| 在线一区二区三区四区| 日韩欧美成人激情| 经典三级视频一区| 日本一区二区三区国色天香| 成人精品小蝌蚪| 亚洲欧美日韩一区二区三区在线观看| 国产夫妻精品视频| 亚洲欧美另类在线| 欧美日韩一本到| 韩国v欧美v日本v亚洲v| 国产欧美一区二区精品忘忧草| 精品一区二区三区久久| 国产精品理伦片| 欧洲激情一区二区| 精品一区二区三区香蕉蜜桃 | 午夜婷婷国产麻豆精品| 欧美精品一区二区三区蜜臀| 国产成人av一区| 亚洲最新视频在线观看| 久久婷婷色综合| 91成人看片片| 成人在线视频首页| 久久精品久久综合| 亚洲综合丝袜美腿| 中文在线资源观看网站视频免费不卡 | 日韩激情视频在线观看| 国产精品欧美一区二区三区| 日韩午夜激情免费电影| av在线不卡免费看| 国产一区二区在线看| 天天综合色天天综合色h| 中文字幕一区二区三| 久久久精品免费免费| 91精品国产综合久久久久久久| 成+人+亚洲+综合天堂| 高清国产午夜精品久久久久久| 久久99最新地址| 日本成人在线视频网站| 亚洲国产成人av网| 亚洲成人7777| 亚洲男女毛片无遮挡| 国产精品免费网站在线观看| 亚洲国产激情av| 久久久久国产精品人| 久久久精品tv| 久久久99精品免费观看不卡| 欧美大胆人体bbbb| 2023国产精华国产精品| 久久婷婷国产综合国色天香| 日韩色在线观看| 久久人人超碰精品| 中文字幕一区二区三区乱码在线 | 国产精品一区久久久久| 99久久久精品| 欧美色视频一区| 久久久亚洲精品石原莉奈 | 国产乱子伦视频一区二区三区 | 久久久无码精品亚洲日韩按摩| 久久久亚洲综合| 18成人在线观看| 天天色综合天天| 国产美女精品人人做人人爽| 成人国产精品免费观看动漫| 国产欧美一区二区三区沐欲| 欧美日韩专区在线| 91一区二区在线| 精品国产免费人成在线观看| 国产视频一区二区三区在线观看| 亚洲视频在线一区观看| 日韩不卡一二三区| 成人免费视频一区二区| 欧美一区二区在线免费观看| 亚洲国产精品激情在线观看| 视频在线观看一区| 国产成人在线色| 欧美一区二区黄| 一区二区三区精品| 91毛片在线观看| 国产精品美女久久久久高潮| 免费在线观看一区二区三区| 在线观看精品一区| 中文字幕在线不卡| 精品一区二区三区影院在线午夜| 538prom精品视频线放| 亚洲最大成人网4388xx| 91九色最新地址| 亚洲国产精品天堂| 欧美人牲a欧美精品| 日韩二区三区四区| 精品久久人人做人人爰| 麻豆91精品91久久久的内涵| 欧美大黄免费观看| 国产精品一区二区在线观看不卡| 精品粉嫩aⅴ一区二区三区四区| 日本伊人午夜精品| 久久久精品黄色| 成人av午夜电影| 午夜欧美视频在线观看| 91精品在线免费观看| 国产剧情在线观看一区二区| 国产精品区一区二区三| 欧美亚洲精品一区| 日韩中文字幕区一区有砖一区| 日韩欧美激情四射| 国产成人精品免费一区二区| 亚洲男同1069视频| 欧美一级理论性理论a| 国产成人a级片| 天天操天天色综合| 中文字幕日韩欧美一区二区三区| 欧美日韩精品欧美日韩精品一| 精品系列免费在线观看| 一区二区久久久| 精品久久久三级丝袜| 欧美日韩国产片| 色综合一个色综合亚洲| 久久国产福利国产秒拍| 亚洲国产裸拍裸体视频在线观看乱了| 日韩欧美国产综合一区| 成人国产亚洲欧美成人综合网| 国产香蕉久久精品综合网| 欧美日本国产一区| 91视频xxxx| 国产成人av在线影院| 日韩和的一区二区| 中文字幕一区二区三区不卡| 久久影院电视剧免费观看| 欧美日韩精品专区| 欧美高清视频一二三区 | 国产亚洲一本大道中文在线| 欧美日韩日日夜夜| 欧美三级三级三级爽爽爽| 91国偷自产一区二区三区观看| 不卡免费追剧大全电视剧网站| 国产自产v一区二区三区c| 韩日精品视频一区| 国产乱码精品1区2区3区| 国产伦理精品不卡| 成人午夜在线免费| 不卡的电视剧免费网站有什么| 国产精品亚洲第一区在线暖暖韩国| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩中文字幕区一区有砖一区| 美国一区二区三区在线播放| 精品中文av资源站在线观看| 久久国产欧美日韩精品| 成人午夜视频在线| 91老司机福利 在线| 91精品国产综合久久久久| 国产亚洲精品久| 亚洲自拍偷拍av| 国产91露脸合集magnet| 欧美视频日韩视频| 中文字幕一区二区三区四区|