def send_event_on_user_turn(game, word, letters, user): letters_to_send = on_user_turn(game, word, letters, user) logger.debug("{} played word '{}' in game {}".format( user.username, word, game.session_id )) data = { 'letters': letters_to_send, 'score': game.score(), 'word': word } if game.is_all_letters_played(): game.end() logger.info("game {} has ended, the winner is {}".format( game.session_id, user.username )) data['winner'] = game.winner send_event('game_over', data, game.session_id, user.pk) else: send_event('new_turn', data, game.session_id, user.pk)
def new_player(self, user): user_id = user.pk self.gamers.append(user_id) self.save() if len(self.gamers) == self.MAX_GAMERS: send_event('game_ready', {'opponent_name': user.get_full_name()}, self.session_id)
def save(self, *args, **kwargs): super(Message, self).save(*args, **kwargs) send_event('message-create', self.as_dict(), self.session_id)