Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--game.py17
-rw-r--r--messenger.py7
2 files changed, 17 insertions, 7 deletions
diff --git a/game.py b/game.py
index 769f368..4626a32 100644
--- a/game.py
+++ b/game.py
@@ -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()