Exemplo n.º 1
0
def new_game(request):
    """
    Creates a new game.

    player_id should already be stored inside cookie.
    """
    private = (request.POST['isPrivate'] == 'on' if 'isPrivate' in request.POST
               else False)
    game_type = request.POST['gameType']
    player_id = sessions.get_player_id(request.session)
    player = Player.get_by_id(Player.get_model_id(player_id))
    game = Game(game_type=game_type,
                creator=player,
                private=private,
                current_turn=player)
    game.save()
    game_id = Game.get_game_id(game.id)
    game.game_id = game_id
    game.save()
    text = 'Game created'
    entry = GameLogEntry(game=game, text=text)
    entry.save()

    # Send a ws message to the lobby group
    Group('lobby').send({'text': json.dumps(Game.get_all_games_list())})

    return HttpResponseRedirect(reverse('games:game', args=(game.id,)))