def on_open(self, *args, **kwargs): global next_id server.clients.add(self) self.id = next_id print 'Created client ' + str(self.id) next_id += 1 packet = {'init': {'id': self.id}} server.send(self, packet)
def on_open(self, *args, **kwargs): global next_id server.clients.add(self) self.id = next_id; print 'Created client ' + str(self.id) next_id += 1; packet = {'init': {'id': self.id}} server.send(self, packet)
def on_open(self, *args, **kwargs): global next_id server.participants.add(self) self.id = next_id; print 'Created player ' + str(self.id) next_id += 1; self.x = server.map.start[0] self.y = server.map.start[1] packet = {'init': {'id': self.id, 'x': self.x, 'y': self.y, 'map': server.map.cells}} server.send(self, packet)
def on_message(self, message): if 'move' in message: nx = self.x ny = self.y dir = message['move'] if dir == 'left': nx -= 1 elif dir == 'up': ny -= 1 elif dir== 'right': nx += 1 elif dir == 'down': ny += 1 if not server.map.is_passable(nx, ny, self): return self.x = nx self.y = ny for p in server.participants: server.send(p, {'update': {'id': self.id, 'x': self.x, 'y': self.y}}) server.map.tick(server)
def on_close(self): server.participants.remove(self) packet = {'left': {'id': self.id}} for p in server.participants: server.send(p, packet)