Ich habe das Boxes-Game als Beispiel zur Hand genommen.
server.py
Code: Alles auswählen
class BoxesServer(PodSixNet.Server.Server):
channelClass = ClientChannel
def __init__(self, *args, **kwargs):
PodSixNet.Server.Server.__init__(self, *args, **kwargs)
self.players = WeakKeyDictionary()
self.games = []
self.queue = None
self.currentIndex=0
def Connected(self, channel, addr):
print('new connection:', channel)
self.AddPlayer(channel)
if self.queue==None:
self.currentIndex+=1
channel.gameid=self.currentIndex
self.queue=Game(channel, self.currentIndex)
else:
channel.gameid=self.currentIndex
self.queue.player1=channel
self.queue.player0.Send({"action": "startgame","player":0, "gameid": self.queue.gameid})
self.queue.player1.Send({"action": "startgame","player":1, "gameid": self.queue.gameid})
self.games.append(self.queue)
self.queue=None
Ich möchte aber nun Clients sammeln und diese dann selber ihren Gegner auswählen lassen.
Im Code-Schnipsel oben sind mir aber ein paar Dinge nicht ganz klar.
Wie ist channel.gameid zu verstehn? Ist das ein Tupel (1D Array)?
Ich müsste ja irgendwie die Clients in ein Array speichern, welches die Verbindung und Nickname enthält.
Aber zBsp self.userchannel[self.currentIndex] = channel funktioniert aber nicht.
Bin für jeden Rat dankbar und bitte habt Nachsicht, dass ich es mit vielen Profi-Ausdrücken nicht so habe.
Bitte möglichst einfach ausdrücken, auch wenn es vllt nicht ganz dem perfekten Programmierer-Latein entspricht