parent
b092402eaf
commit
3a5a9aac44
|
@ -25,7 +25,7 @@ public class MainFrame extends JFrame {
|
|||
System.out.println(now);
|
||||
setTitle(now == Cross.BLACK ? "●" : "○");
|
||||
|
||||
setSize(200,230 + BASE_HEIGHT);
|
||||
setSize(200,220 + BASE_HEIGHT);
|
||||
|
||||
addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
|
@ -53,7 +53,7 @@ public class MainFrame extends JFrame {
|
|||
try {
|
||||
String o = (String) Client.recMsg(oi);
|
||||
|
||||
if (o.startsWith("INFO:")) {
|
||||
if (o.startsWith("INFO:") || o.startsWith("WARN:")) {
|
||||
tip = o;
|
||||
} else {
|
||||
map = DataUtil.rawData(o);
|
||||
|
@ -72,7 +72,7 @@ public class MainFrame extends JFrame {
|
|||
@Override
|
||||
public void paint(Graphics g) {
|
||||
g.setColor(Color.white);
|
||||
g.fillRect(0,BASE_HEIGHT,200,230);
|
||||
g.fillRect(0,BASE_HEIGHT,200,220);
|
||||
|
||||
g.setColor(Color.lightGray);
|
||||
for (int i = 1; i <= 9; i++) {
|
||||
|
@ -90,7 +90,10 @@ public class MainFrame extends JFrame {
|
|||
}
|
||||
}
|
||||
|
||||
if(tip.contains("INFO")) g.setColor(Color.GREEN);
|
||||
if(tip.contains("WARN")) g.setColor(Color.RED);
|
||||
g.drawString(tip, BASE_FROM, 200 + BASE_HEIGHT);
|
||||
g.setColor(Color.BLACK);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -88,7 +88,7 @@ public class UserThread extends Thread{
|
|||
}
|
||||
|
||||
if (!allAlive || users.size() != 2) {
|
||||
sendMsg("INFO:对方未在线");
|
||||
sendMsg("WARN:对方未在线");
|
||||
} else {
|
||||
boolean result = CalDataUtil.draw(newClick, map);
|
||||
if (result) {
|
||||
|
@ -108,13 +108,45 @@ public class UserThread extends Thread{
|
|||
System.out.println("::" + e.getMessage());
|
||||
System.out.println("连接断开");
|
||||
isAlive = false;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
thread.start();
|
||||
|
||||
Thread heartBead = new Thread(() -> {
|
||||
while (true){
|
||||
if (users.size() == 2){
|
||||
UserThread u1 = users.get(0);
|
||||
UserThread u2 = users.get(1);
|
||||
|
||||
if (!u1.isAlive && !u2.isAlive) break;
|
||||
if (!u1.isAlive) {
|
||||
try {
|
||||
u2.sendMsg("WARN: 对方已下线");
|
||||
} catch (IOException e) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!u2.isAlive) {
|
||||
try {
|
||||
u1.sendMsg("WARN: 对方已下线");
|
||||
} catch (IOException e) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
TimeUnit.SECONDS.sleep(10);
|
||||
} catch (InterruptedException e) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
heartBead.start();
|
||||
|
||||
// 线程等待
|
||||
try {
|
||||
thread.join();
|
||||
|
@ -124,10 +156,6 @@ public class UserThread extends Thread{
|
|||
|
||||
}
|
||||
|
||||
public Socket getSocket() {
|
||||
return socket;
|
||||
}
|
||||
|
||||
public void sendMsg(Object obj) throws IOException {
|
||||
os.writeObject(obj);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue