def init_game_view(self, loaded_map, init_response): self.players = {} # Player replicas. for player in init_response['players']: if player[1] == init_response['id']: # Local player self.char = Character(nick=player[0], playerid=player[1], team=player[2]) self.players[player[1]] = self.char else: self.players[player[1]] = Replica(nick=player[0], playerid=player[1], team=player[2], pos=(-42, -42)) self.mv = MapView(loaded_map, self.char, self.players) self.add_widget(self.mv) # self.add_widget(self.char) # after the map to keep it always visible! self.char.bind(offset=self.mv.update_pos) self.char.set_game_pos(init_response['pos']) # Also updates the map