def get(self,game_id=None): user = users.get_current_user() template = jinja_environment.get_template('game.html') if not game_id: self.response.write("You need to have a game_id") return try: game = Game.get_by_id(int(game_id)) if not game: raise Exception("No table retrieved") except Exception as e: self.response.write("invalid table_id specified") return # player = Player.query(ndb.AND(Player.game_id == int(game_id),Player.player_id == user.user_id())) # player = ndb.gql('SELECT * From Player') for player in game.players: if player.player_id == user.user_id(): result = player values = { 'game' : game, 'curr_player' : result, 'user_id' : user.user_id(), } self.response.out.write( template.render(values) )
def get(self,game_id=None): user = users.get_current_user() template = jinja_environment.get_template('player.html') game = Game.get_by_id(int(game_id)) values = { 'game' : game } for player in game.players: if player.player_id == user.user_id(): self.redirect_to('table',game_id=game_id) self.response.out.write( template.render(values) )
def get(self,game_id=None): game = Game.get_by_id(int(game_id)) user = users.get_current_user() player_array = [] for player in game.players: if player.player_id == user.user_id(): result = player else: player_array.append(player.player_id) if len(player_array) == 0: player_array.append(user.user_id()) game.current_turn = random.choice(player_array) result.cards_visible = GameUpdater(game).deal_cards() game.common_cards_visible = [] GameUpdater(game).init_deck() result.put() game.put() self.redirect_to('table',game_id=game_id)
def post(self,game_id=None): user = users.get_current_user() game = Game.get_by_id(int(game_id)) ## need to make a check to see if game exceeds max players game.players_current = game.players_current + 1 player = Player( game_id = int(game_id), player_id = user.user_id(), name = self.request.get('player_name'), tokens = 1000, cards_not_visible = game.deck, ) if not game.current_turn: game.current_turn = user.user_id() player.cards_visible = GameUpdater(game).deal_cards() player.put() game.players.append(player) game.put() self.redirect_to('table',game_id=game_id)
def post(self,game_id=None): # Query the data store and get the approriate playerid # Set that queried data store object and set the appropriate action # Based on that action do the appropriate thing # Play # Draw # Fold template = jinja_environment.get_template('action.html') game = Game.get_by_id(int(game_id)) action = self.request.get('Action') user = users.get_current_user() bet = int(self.request.get('bet_field')) for player in game.players: if player.player_id == user.user_id(): result = player if action == 'Play': value = GameUpdater(game).play(result,bet) elif action == 'Draw': value = GameUpdater(game).draw(result) if value == 'Cards' : self.redirect_to('table',game_id=game_id) return elif action == 'Fold': self.redirect_to('clear',game_id=game_id) return values = { 'player' : result, 'game' : game, 'value' : value } self.response.out.write( template.render(values) )