Мне нужен клиент для многопользовательской игры в кости, я создал сервер и сеть, я определяюсь следующим классом, мне нужно добавить код в pygame
import tkinter
import random
root = tkinter.Tk()
root.geometry('600x600')
root.title('Roll Dice')
label = tkinter.Label(root, text='', font=('Helvetica', 260))
def roll_dice():
dice = ['u2680', 'u2681', 'u2682', 'u2683', 'u2684', 'u2685']
label.configure(text=f'{random.choice(dice)} ')
label.pack()
button = tkinter.Button(root, text='roll dice', foreground='blue', command=roll_dice)
button.pack()
root.mainloop()
`импортировать сокет из _thread import * импортировать систему
s = гнездо.розетка(розетка.AF_INET, сокет.SOCK_STREAM)
сервер = ‘192.168.1.41’ порт = 5555
server_ip = имя сокета.gethostbyname(сервер)
попробуйте: s.привязать((сервер, порт))
кроме сокета.ошибка как e: печать(str(e))
s.прослушивание(2) печать(«Ожидание соединения»)
currentId = «0» pos = [«0:50,50», «1:100,100»] def threaded_client(conn): глобальный текущий идентификатор, pos-код.отправить(str.кодировать(currentId)) Текущий идентификатор = «1» ответ = » пока верно: попробуйте: данные = conn.recv(2048) ответ = данные.декодировать(‘utf-8’) если нет данных: отправить(str.кодировать(«До свидания»)) прервать еще: печать(«Получено:» + ответ) arr = ответ.разделить(«:») идентификатор = int(arr[0]) pos[идентификатор] = ответить
if id == 0: nid = 1
if id == 1: nid = 0
reply = pos[nid][:]
print("Sending: " + reply)
conn.sendall(str.encode(reply))
except:
break
print("Connection Closed")
conn.close()
в то время как True: conn, addr = s.примите() печать(«Подключено к: «, addr)
start_new_thread(threaded_client, (conn,))`