diff options
-rw-r--r-- | game.py | 17 | ||||
-rw-r--r-- | messenger.py | 7 |
2 files changed, 17 insertions, 7 deletions
@@ -112,10 +112,10 @@ class MemorizeGame(GObject): self.emit('change_game_signal', mode, self.get_grid(), - self.get_data(), + self.model.data, self.waiting_players, self.model.data['game_file']) - self.emit('change_game', self.get_data(), self.get_grid()) + self.emit('change_game', self.model.data, self.get_grid()) for buddy in self.players: self.players_score[buddy] = 0 self.current_player = None @@ -284,14 +284,19 @@ class MemorizeGame(GObject): self.emit('highlight-card', id, True) - def increase_point(self, buddy): - self.players_score[buddy] += 1 - self.emit('increase-score', buddy) + def increase_point(self, buddy, inc=1): + self.players_score[buddy] += inc + for i in range(inc): + self.emit('increase-score', buddy) def get_grid(self): return self.model.grid - def get_data(self): + def collect_data(self): + for player, score in self.players_score.items(): + index = self.players.index(player) + score = self.players_score[player] + self.model.data[str(index)] = str(score) return self.model.data def change_game(self, widget, game_name, size, mode, title = None, color= None): diff --git a/messenger.py b/messenger.py index 65ce900..3748880 100644 --- a/messenger.py +++ b/messenger.py @@ -82,7 +82,7 @@ class Messenger(ExportedGObject): remote_object = self._tube.get_object(sender, PATH) remote_object.load_game(self.ordered_bus_names, self.game.get_grid(), - self.game.get_data(), + self.game.collect_data(), self.game.players.index(self.game.current_player), #self.game.waiting_players, path) @@ -93,6 +93,11 @@ class Messenger(ExportedGObject): self.player_id = bus_names.index(self._tube.get_unique_name()) #self.game.load_waiting_list(list) self._change_game_receiver(data['mode'], grid, data, path) + + for i in range(len(self.game.players)): + self.game.increase_point(self.game.players[i], + int(data.get(str(i), '0'))) + self.game.current_player = self.game.players[current_player] self.game.update_turn() |