插座(网络) - Tictactoe游戏



我正在创建自己的tic-tac-toe游戏。

在此阶段,我正在尝试向其添加一个网络功能,这将允许同一网络中的两个播放器(但在不同的设备中)相互对抗。

我要做的第一件事是通过服务器将游戏发送到客户端,但是在这种情况下服务器端而不是客户端。

特别突出显示代码的最后一部分(主函数)!

有帮助吗?

def Main():
    host = "127.0.0.1"
    port = 5000
    mySocket = socket.socket()
    mySocket.bind((host,port))
    mySocket.listen(1)
    conn, addr = mySocket.accept()
    print ("Connection from: " + str(addr))
    while True:
            data = conn.recv(1024).decode()
            if not data:
                    break
            print ("from connected  user: " + str(data))
            data = game
            print ("sending: ")
            conn.send(data().encode())
    conn.close()
if __name__ == '__main__':
    Main()

首先,您需要一个游戏类来替换游戏功能。然后,客户端和服务器(假设您想要客户端和服务器之间的游戏)应维护游戏实例。这样,当客户端采取行动时,它可以更新自己的游戏实例,并将更新发送到服务器。服务器可以做同样的事情来保持游戏的运行。
无论如何,此存储库可能会在此问题上为您提供帮助。它还没有完成,甚至没有错误处理。但是它的游戏功能可以起作用。

最新更新