📄 chessserver.java
字号:
import java.awt.*;
import java.net.*;
import java.io.*;
import chessArray;
//
// chessServer
//
public class chessServer extends Dialog implements Runnable
{
Thread thread;
ServerSocket server=null;
Socket socket;
OutputStream outS;
InputStream inS;
Label lb=new Label ("正在等待挑战者......");
public chessServer(Frame frbak)
{
super(frbak,"等待连接",false);
setBackground(Color.cyan);
int width=300;
int height=70;
thread=new Thread(this);
setFont(new Font("chequer",Font.BOLD,26));
this.add("Center",lb);
setBounds(chessArray.offsize.width/2-width/2,chessArray.offsize.height/2-height/2,width,height);
show();
}
public synchronized void run()
{
try{
server=new ServerSocket(1666);
}catch(IOException e){
System.out.println(e);
return ;
}
while(true)
{
try{
socket=server.accept ();
this.setVisible (false);
chessArray.change =true;
chessArray.information("网络连接成功,您可以走棋了");
outS=socket.getOutputStream ();
inS=socket.getInputStream ();
}catch(IOException e){
chessArray.information("网络连接有误,对家可能已退出");
System.out.println(e);
}
while(true)
try{
if(chessArray.readyOut )
{
outS.write (chessArray.changeCount1 );
outS.write (chessArray.changeCount2 );
if(chessArray.changeCount1 !=254){
chessArray.information("等待对家走棋......");
chessArray.readyIn=true;
}else{
chessArray.information("已告诉对家,可以走棋了");
chessArray.change=true;
chessArray.readyIn=false;
}
chessArray.readyOut=false;//数据已发送
}else if(chessArray.readyIn )
{
chessArray.changeCount1=inS.read ();
System.out.println(chessArray.changeCount1);
chessArray.changeCount2=inS.read();
if(chessArray.changeCount1==254)
{
chessArray.information("对家已选择重下,若同意,请走棋");
chessArray.startInf("走棋");
chessArray.endInf ("落子");
chessArray.changeCount1=-1;
chessArray.chA(chessArray.arrayBak);
chessArray.repaint=true;
chessArray.change=true;
chessArray.readyIn=false;
// chessArray.netChange =false;
// chessArray.readyOut=false;//数据已发送
}else
{
chessArray.readyIn=false;
chessArray.netChange =true;
}
try{
thread.sleep(1000);
}catch(InterruptedException e)
{ };
}
}catch(IOException e){
chessArray.information("网络连接有误,对家可能已退出");
}
}
}
public void start()
{
thread.start();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -