⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gobangdeal.java

📁 java程序五子棋源代码。 java程序五子棋源代码。
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
		String countgroup="";
		String stepnum="1",xvalue="0",yvalue="0";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if(stringtokenizer.hasMoreTokens()){
			stepflag = Integer.parseInt(stringtokenizer.nextToken());
		
		}if(stringtokenizer.hasMoreTokens()){
			stepnum = stringtokenizer.nextToken();
		
		}if(stringtokenizer.hasMoreTokens()){
			xvalue = stringtokenizer.nextToken();
		
		}if(stringtokenizer.hasMoreTokens()){
			yvalue = stringtokenizer.nextToken();
		}
		if(stringtokenizer.hasMoreTokens()){
			 stringtokenizer.nextToken();
		}
		if(stepflag != 0){
			//	更新用户的统计信息
			if(stringtokenizer.hasMoreTokens()){
				countgroup = stringtokenizer.nextToken();
			}
			commstructnode.SetCount(countgroup);
			maingameevent.setCommNode(commstructnode);
			//更新对家的统计信息
			if(stringtokenizer.hasMoreTokens()){
				countgroup = stringtokenizer.nextToken();
			}
			otheruserinfo.SetCount(countgroup);
			
		}
		maingameevent.setByName("stepnum",stepnum);
		maingameevent.setByName("xvalue",xvalue);
		maingameevent.setByName("yvalue",yvalue);
		
		switch(stepflag){
			case 1:
				gameeventdeal.handleEvent(GobangEvent.BLACKWIN,maingameevent);
				break;
			case 2:
				gameeventdeal.handleEvent(GobangEvent.WHITEWIN,maingameevent);
				break;
			case 3:
				gameeventdeal.handleEvent(GobangEvent.GAMEEQUAL,maingameevent);
				break;
			case 0: 
				
			default:
				gameeventdeal.handleEvent(GobangEvent.OPPPLAYRESPOND,maingameevent);
				break;
		}
		
	}
	
	//用户放弃下子响应
	private void UserGiveUpRespond(String body){
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens())
			if(stringtokenizer.nextToken().equals("0")){
				gameeventdeal.handleEvent(GobangEvent.USERGIVEUP,maingameevent);
			}
	}
	
	//对家放弃下子响应
	private void OppGiveUpRespond(String body){
		String stepnum="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens())
			stepnum = stringtokenizer.nextToken();
		maingameevent.setByName("stepnum",stepnum);
		gameeventdeal.handleEvent(GobangEvent.OPPGIVEUP,maingameevent);
	}
	//用户悔棋响应
	private void UserRegretRespond(String body){
		String x1="",y1="",x2="",y2="",x3="",y3="";
		String stepnum="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens())
			if(stringtokenizer.nextToken().equals("0")){//对家同意
				if (stringtokenizer.hasMoreTokens()){
					stepnum = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					x1 = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					y1 = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					x2 = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					y2 = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					x3 = stringtokenizer.nextToken();
				}
				if (stringtokenizer.hasMoreTokens()){
					y3 = stringtokenizer.nextToken();
				}
				maingameevent.setByName("stepnum",stepnum);
				maingameevent.setByName("firprex",x1);
				maingameevent.setByName("firprey",y1);
				maingameevent.setByName("secprex",x2);
				maingameevent.setByName("secprey",y2);
				maingameevent.setByName("thiprex",x3);
				maingameevent.setByName("thiprey",y3);
				gameeventdeal.handleEvent(GobangEvent.OPPAGREENREGRET,maingameevent);
			}else{//对家不同意
				if (stringtokenizer.hasMoreTokens()){
					stepnum = stringtokenizer.nextToken();
				}
				maingameevent.setByName("stepnum",stepnum);
				gameeventdeal.handleEvent(GobangEvent.OPPANTIREGRET,maingameevent);
			}
	}
	
	//对家悔棋请求
	private void OppRegretRequest(String body){
		String stepnum="0";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens()){
			stepnum = stringtokenizer.nextToken();
		}
		maingameevent.setByName("stepnum",stepnum);
		gameeventdeal.handleEvent(GobangEvent.OPPREGRET,maingameevent);
	}
	
	//同意对家悔棋响应
	private void AgreenOppRegret(String body){
		String x1="",y1="",x2="",y2="",x3="",y3="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens()){
			x1 = stringtokenizer.nextToken();
		}
		if (stringtokenizer.hasMoreTokens()){
			y1 = stringtokenizer.nextToken();
		}
		if (stringtokenizer.hasMoreTokens()){
			x2 = stringtokenizer.nextToken();
		}
		if (stringtokenizer.hasMoreTokens()){
			y2 = stringtokenizer.nextToken();
		}
		if (stringtokenizer.hasMoreTokens()){
			x3 = stringtokenizer.nextToken();
		}
		if (stringtokenizer.hasMoreTokens()){
			y3 = stringtokenizer.nextToken();
		}
		maingameevent.setByName("firprex",x1);
		maingameevent.setByName("firprey",y1);
		maingameevent.setByName("secprex",x2);
		maingameevent.setByName("secprey",y2);
		maingameevent.setByName("thiprex",x3);
		maingameevent.setByName("thiprey",y3);
		gameeventdeal.handleEvent(GobangEvent.USERAGREENREGRET,maingameevent);
	}
	
	
	//用户求和响应
	private void UserTieRespond(String body){
		String countgroup="",stepnum="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens())
			if(stringtokenizer.nextToken().equals("0")){//对家同意
				if (stringtokenizer.hasMoreTokens()){
					stepnum = stringtokenizer.nextToken();
				}
				//				更新用户的统计信息
				if(stringtokenizer.hasMoreTokens()){
					countgroup = stringtokenizer.nextToken();
					commstructnode.SetCount(countgroup);
				}
				maingameevent.setCommNode(commstructnode);
				//更新对家的统计信息
				if(stringtokenizer.hasMoreTokens()){
					countgroup = stringtokenizer.nextToken();
					otheruserinfo.SetCount(countgroup);
				}
				maingameevent.setByName("stepnum",stepnum);
				gameeventdeal.handleEvent(GobangEvent.OPPAGREENTIE,maingameevent);
			}else{//对家不同意
				if (stringtokenizer.hasMoreTokens()){
					stepnum = stringtokenizer.nextToken();
				}
				maingameevent.setByName("stepnum",stepnum);
				gameeventdeal.handleEvent(GobangEvent.OPPANTITIE,maingameevent);
			}
	}
	

	//对家求和请求
	private void OppTie(String body){
		String stepnum="0";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens()){
			stepnum = stringtokenizer.nextToken();
		}
		maingameevent.setByName("stepnum",stepnum);
		gameeventdeal.handleEvent(GobangEvent.OPPTIE,maingameevent);
	}
	
	
	
	//同意对家求和响应
	private void AgreenOppTie(String body){
		String countgroup="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		//更新用户的统计信息
		if(stringtokenizer.hasMoreTokens()){
			countgroup = stringtokenizer.nextToken();
			commstructnode.SetCount(countgroup);
		}
		maingameevent.setCommNode(commstructnode);
		//更新对家的统计信息
		if(stringtokenizer.hasMoreTokens()){
			countgroup = stringtokenizer.nextToken();
			otheruserinfo.SetCount(countgroup);
		}
		gameeventdeal.handleEvent(GobangEvent.USERAGREENTIE,maingameevent);
	}
	

	//用户投降请求响应
	private void UserSurrenderRespond(String body){
		String countgroup="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if (stringtokenizer.hasMoreTokens())
			if(stringtokenizer.nextToken().equals("0")){//
//				更新用户的统计信息
				if(stringtokenizer.hasMoreTokens()){
					countgroup = stringtokenizer.nextToken();
					commstructnode.SetCount(countgroup);
				}
				maingameevent.setCommNode(commstructnode);
				//更新对家的统计信息
				if(stringtokenizer.hasMoreTokens()){
					countgroup = stringtokenizer.nextToken();
					otheruserinfo.SetCount(countgroup);
				}
				gameeventdeal.handleEvent(GobangEvent.USERSURRENDER,maingameevent);
			}
	}
	
	
	//对家投降响应
	private void OppSurrender(String body){
		String countgroup="";
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		//更新用户的统计信息
		if(stringtokenizer.hasMoreTokens()){
			countgroup = stringtokenizer.nextToken();
			commstructnode.SetCount(countgroup);
		}
		maingameevent.setCommNode(commstructnode);
		//更新对家的统计信息
		if(stringtokenizer.hasMoreTokens()){
			countgroup = stringtokenizer.nextToken();
			otheruserinfo.SetCount(countgroup);
		}
		gameeventdeal.handleEvent(GobangEvent.OPPSURRENDER,maingameevent);
		
	}
	
	
	
	//其他用户一盘游戏结束
	private void OtherGameOver(String body){
		String tableid = "";
		int tempid=0;
		int i = 0;
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if(stringtokenizer.hasMoreTokens()){
			tableid=stringtokenizer.nextToken();
		}
		if(tableid.equals("")){
			i = 0;
		}
		else
		{
			tempid = Integer.parseInt(tableid);
			i = tempid*2 - 1;
		}
		if(i!=0){
			player[i].status = "01";   //桌子左侧用户
			player[i+1].status = "01"; //桌子右侧用户
			
			maingameevent.setByName("modnum",String.valueOf(i));   //设置已经修改了的大厅信息里的数组编号
			gameeventdeal.handleEvent(GobangEvent.OTHERGAMEOVER,maingameevent);
			
		}
	}
	
	//指定用户信息获取成功
	private void OtherInfoRecive(String body){
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if(stringtokenizer.hasMoreTokens()){
			if(stringtokenizer.nextToken().equals("0")){
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setNickName(stringtokenizer.nextToken());
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setPicture(stringtokenizer.nextToken());
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setSex(Integer.parseInt(stringtokenizer.nextToken()));
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setUserType(Integer.parseInt(stringtokenizer.nextToken()));
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setAge(Integer.parseInt(stringtokenizer.nextToken()));
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setGameMoney(stringtokenizer.nextToken());
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.setStatus(stringtokenizer.nextToken());
				}
				if(stringtokenizer.hasMoreTokens()){
					otheruserinfo.SetCount(stringtokenizer.nextToken());
				}
			}
		}
		gameeventdeal.handleEvent(GobangEvent.OTHERINFORECIVE,maingameevent);
		
	}
	
	//其他用户退出游戏
	public void OtherExit(String body){
		String userid="",tableid = "",tableseq="";
		int tempid=0,tempseq=0;
		int i = 0;
		StringTokenizer stringtokenizer = new StringTokenizer(body, UniversalDefine.SUBDIVISION);
		if(stringtokenizer.hasMoreTokens()){
			userid=stringtokenizer.nextToken();
		}
		if(stringtokenizer.hasMoreTokens()){
			tableid=stringtokenizer.nextToken();
		}
		if(stringtokenizer.hasMoreTokens()){
			tableseq=stringtokenizer.nextToken();
		}
		if(tableid.equals("")||tableseq.equals("")){
			i = 0;
		}
		else
		{
			tempid = Integer.parseInt(tableid);
			tempseq = Integer.parseInt(tableseq);
			i = tempid*2 - 1 + tempseq;
		}
		if(i!=0){
			player[i].userid = "";
			if(tableid.equals(commstructnode.getTableid())){  //对家退出
				otheruserinfo.init();  //清空对家信息
				gameeventdeal.handleEvent(GobangEvent.OPPEXIT,maingameevent);
			}else{
				maingameevent.setByName("modnum",String.valueOf(i));   //设置已经修改了的大厅信息里的数组编号
				gameeventdeal.handleEvent(GobangEvent.OTHEREXIT,maingameevent);
			}
			player[i].status = "";   //不和userid一起清空是因为,这几个值会暂时被gameeventdeal用到
			player[i].tableid = "";
			player[i].tableseq = "";
		}
	}
	
	

	public void setNull(){
		gameeventdeal=null;   //事件处理接口
		maingameevent=null;    //
		commstructnode=null;   //通信结点
		otheruserinfo = null;   //游戏对手信息
		roomstruct = null;
		player = null;    //存放大厅里的所有用户信息
		instance = null;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -