-
Notifications
You must be signed in to change notification settings - Fork 0
/
ConnectionWindow.py
executable file
·75 lines (65 loc) · 3.05 KB
/
ConnectionWindow.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import socket
import threading
import pygame
import pygame_gui
from pygame_gui.elements import UIWindow, UILabel, UIButton
import CardsGame
from Constants import *
class ConnectionWindow(UIWindow):
def __init__(self, args: dict, int_sec, rect, ui_manager):
self.game_args = args
self.int_sec = int_sec
super().__init__(rect, ui_manager,
window_display_title='Waiting for connections',
object_id='#connection_window',
resizable=True)
self.enable_close_button = False
self.close_window_button = None
size = [150, 35]
self.nb_online = self.game_args["nb_online"]
self.socket = socket.socket()
HOST = socket.gethostbyname(socket.gethostname())
print(HOST, PORT)
self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.socket.bind((HOST, PORT))
self.socket.listen(self.nb_online)
self.socket_list = []
self.socket_list.append((self.int_sec.player_name, self.socket))
self.thread = ListeningThread(self)
self.thread.setDaemon(True)