from app_instance import api from wiz_game import the_game from starlette.websockets import WebSocketDisconnect import asyncio # don't define here, it's defined elsewhere! #playing_lock = asyncio.Lock() @api.route("/gplayer/{player}") def show(req, resp, player: str): p = int(player) tcard = the_game.trump_card tcolor = the_game.get_trump_color() try: isActive = the_game.players_ordered[the_game.active_player].id == p except IndexError: isActive = False prev_player = the_game.get_prev_player() if tcard and tcard.value == 'Z' and tcolor == '-': choose_trump_color = True else: choose_trump_color = False resp.content = api.template('home/gplayer.html', player=p, playerActive=isActive, choose_trump_player=prev_player, cards=the_game.players[p].cards, choose_trump_color=choose_trump_color, trump_card=tcard, trump_color=tcolor, played_cards=the_game.played_cards, last_trick=the_game.last_trick)