📄 analysemsg.java~387~
字号:
// vc = new VisualCoordinate();
// vc.setVisible(true);
// vc.user2_icon.setIcon(user_act_icon); //dover下棋动作
SendOneMsg("wzq.#waits#." + chair_user_num
); //没坐满 让座好的人等待
mf.log.AddLine(username + "坐在了" + tableid + "号桌,等待其它用户的加入");
}
System.out.println(cr.getTableInfo());
break;
case 3: //1111.#leave#.3
int tid = new Integer(third).intValue(); //桌子号
String otherside = cr.leaveTable(username, tid);
System.out.println(otherside);
if (!otherside.equals("#"))
{
SendOneMsg("wzq.##." + username + "." + otherside + "leave finished"); //正常离开座位,计算模块成功赶走两人:)
}
System.out.println(cr.getTableInfo());
mf.log.AddLine(username + "和" + otherside + "成功离开" + tid + "号桌");
break;
case 4: //这里要加入发送大厅信息的处理
mf.log.AddLine("向" + username + "发送大厅信息成功!");
if (chair_user_num == 0)
this.SendOneMsg("wzq.##." + username + ".ROOM:" + cr.getTableInfo()); //发送大厅信息
if (chair_user_num == 1)
this.SendOneMsg("wzq.##." + username + ".ROON:" + cr.getTableInfo()); //发送大厅信息
if (chair_user_num == 2)
this.SendOneMsg("wzq.##." + username + ".ROOO:" + cr.getTableInfo()); //发送大厅信息
if (chair_user_num == 3)
this.SendOneMsg("wzq.##." + username + ".ROOP:" + cr.getTableInfo()); //发送大厅信息
System.out.println("" + chair_user_num +
"这是现在的小组人数");
break;
case 5:
// do nothing
break;
case 6:
if (chair_user_num == 3)
{
System.out.println("开始处理多人游戏");
drealGroupChess();
//这里发送信息要注意
//收集四个人各自的走棋信息,发送双方最终下棋信息
}
else this.SendOneMsg("wzq." + s); //双人下棋时传送下棋信息
break;
}
UserOnLine uol = new UserOnLine(mf, Queue, cr); //刷新在线用户列表
uol.refreshQM2C();
uol.refreshQM2M();
}
public void drealGroupChess()
{
int depart1 = message_received.indexOf(".");
int depart2 = message_received.indexOf(".", depart1 + 1);
user_send = message_received.substring(depart1, depart2);
if (username.equals("qq") || username.equals("dover"))
{
if (username.equals("qq"))
{
// depart1 = message_received.indexOf(":");
// qq_chess = message_received.substring(depart1, message_received.length());
qq_chess = third.substring(4);
System.out.println("qq在" + qq_chess + "下棋");
vc.user1_icon.setIcon(user_act_icon); //qq下棋动作
vc.group1_status_icon.setIcon(gather_icon); //向上搜集信息
vc.group_communicate_icon.setIcon(null); //不传信息
vc.descript_textfiled.setText("用户qq动作,开始收集群组信息");
count_group1++;
if (count_group1 == 1)
{
this.SendOneMsg("wzq." + "zhsn.dover.PQT:" + qq_chess);
}
}
else
{
//depart1 = message_received.indexOf(":");
//dover_chess = message_received.substring(depart1, message_received.length());
dover_chess = third.substring(4);
System.out.println("dover在" + dover_chess + "下棋");
count_group1++;
// if(vc.user2_icon.getIcon()!=null)
// try{
vc.user2_icon.setIcon(user_act_icon); //dover下棋动作
// }catch(Exception e){System.out.println(e.toString());}
vc.group1_status_icon.setIcon(gather_icon); //向上搜集信息
vc.group_communicate_icon.setIcon(null); //不传信息
vc.descript_textfiled.setText("用户dover动作,开始协商结果");
if (count_group1 == 1)
{
this.SendOneMsg("wzq." + "zhao.qq.PQT:" + dover_chess);
}
}
if (count_group1 == 2)
{ //组内人员都发送过来信息时,发送经过决策后的走棋信息,同时清空计数器
int decide = (int) (Math.random() * 10);
if (decide > 4)
{
feed_back = qq_chess;
}
else
{
feed_back = dover_chess;
}
this.SendOneMsg("wzq." + "qq.zhao.POT:" + feed_back);
this.SendOneMsg("wzq." + "zhao.qq.PPT:" + feed_back); //发送己方走棋信息
this.SendOneMsg("wzq." + "dover.zhsn.POT:" + feed_back);
this.SendOneMsg("wzq." + "zhsn.dover.PPT:" + feed_back); //发送己方走棋信息
count_group1 = 0;
vc.group1_status_icon.setIcon(coordinate_icon); //协同处理信息
vc.group_communicate_icon.setIcon(transfer_right_icon); //向右传送群1走棋信息
vc.group2_status_icon.setIcon(broadcast_icon); //第二组广播信息
vc.user1_icon.setIcon(user_stop_icon);//屏蔽user1,和user2
vc.user2_icon.setIcon(user_stop_icon);
vc.user3_icon.setIcon(user_icon);//激活user3,和user4
vc.user4_icon.setIcon(user_icon);
vc.descript_textfiled.setText("组一把协同结果发送至组二");
}
}
else
{
if (username.equals("zhao"))
{
// depart1 = message_received.indexOf(":");
// System.out.println(""+depart1);
//zhao_chess = message_received.substring(depart1, message_received.length());
// third
zhao_chess = third.substring(4);
System.out.println("zhao在" + zhao_chess + "下棋");
vc.user3_icon.setIcon(user_act_icon); //zhao下棋动作
vc.group2_status_icon.setIcon(gather_icon); //向上搜集信息
vc.group_communicate_icon.setIcon(null); //不传信息
count_group2++;
if (count_group2 == 1)
{
this.SendOneMsg("wzq." + "dover.zhsn.PQT:" + zhao_chess);
}
}
else
{
//depart1 = message_received.indexOf(":");
// dover_chess = message_received.substring(depart1, message_received.length());
zhsn_chess = third.substring(4);
System.out.println("zhsn在" + zhsn_chess + "下棋");
count_group2++;
vc.user4_icon.setIcon(user_act_icon); //qq下棋动作
vc.group1_status_icon.setIcon(gather_icon); //向上搜集信息
vc.group_communicate_icon.setIcon(null); //不传信息
if (count_group2 == 1)
{
this.SendOneMsg("wzq." + "qq.zhao.PQT:" + zhsn_chess);
}
}
if (count_group2 == 2)
{ //组内人员都发送过来信息时,发送经过决策后的走棋信息,同时清空计数器
int decide2 = (int) (Math.random() * 11);
if (decide2 > 4)
{
feed_back = zhao_chess;
}
else
{
feed_back = zhsn_chess;
}
this.SendOneMsg("wzq." + "qq.zhao.PPT:" + feed_back); //发送己方走棋信息
this.SendOneMsg("wzq." + "zhao.qq.POT:" + feed_back);
this.SendOneMsg("wzq." + "dover.zhsn.PPT:" + feed_back); //发送己方走棋信息
this.SendOneMsg("wzq." + "zhsn.dover.POT:" + feed_back);
count_group2 = 0;
vc.group2_status_icon.setIcon(coordinate_icon); //协同处理信息
vc.group_communicate_icon.setIcon(transfer_left_icon); //向左传送群2走棋信息
vc.group1_status_icon.setIcon(broadcast_icon); //第二组广播信息
vc.user3_icon.setIcon(user_stop_icon);
vc.user4_icon.setIcon(user_stop_icon);
vc.user1_icon.setIcon(user_icon);
vc.user2_icon.setIcon(user_icon);
vc.descript_textfiled.setText("组一把协同结果发送至组二");
}
}
}
private void SendOneMsg(String s)
{
SocketConn sc = new SocketConn(mf.TextField_ip.getText(), 6001);
sc.send(s);
System.out.print(s);
mf.ackMsg.AddLine(s); //record the records
System.out.println("********************************************");
System.out.println(s);
System.out.println("********************************************");
sc.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -