def win_game(self, player_id): self.dead = [] player_id = str(player_id) if player_id in self.player_scores and self.is_ongoing(): self.player_scores[player_id] = self.player_scores[player_id] + 1 socketio.emit('win_game', { 'player_id': player_id, 'score': self.player_scores[player_id], 'finished': self.is_ongoing() }) from Player import Player for player_id in self.player_scores.keys(): Player.query({'_id': player_id}).update({'life': 20}) self.update()
def generate_json(self): from Player import Player json_dict = MongoModel.generate_json(self) if not self.is_ongoing(): json_dict['victor'] = self.get_victor() json_dict['is_ongoing'] = self.is_ongoing() players = self.coerce_type('player_scores').keys() json_dict['players'] = [Player.query({'_id': key}).__dict__ for key in players] for player in json_dict['players']: player['score'] = json_dict['player_scores'][player['_id']] json_dict.pop('player_scores', None) return json_dict