def post(self, gid): uid, gid, user, game = auth_util.auth_into_game(self, gid, ['pregame']) game.game_state = 'init' game.put() self.redirect('/games/game%i' % gid)
def get(self, gid): uid, gid, user, game = auth_util.auth_into_game(self, gid, ['pregame', 'init', 'inplay']) game_map = game.load_map() game_users = game.load_users() game_pieces = game.load_pieces() cell_images = game_map.get_cell_images() cur_user = game.load_cur_user() has_placed = game.has_placed(uid) # lump into dict game_data = {'game_map' : game_map, 'game_users': game_users, 'game_pieces': game_pieces, 'cell_images': cell_images, 'cur_user' : cur_user, 'has_placed': has_placed} # finally check if there were any errors if self.request.get('error') == 'y': error = True else: error = False # render page self.render(game, gid, game_data, user, error)
def get(self, gid): uid, gid, user, game = auth_util.auth_into_game(self, gid, ['inplay']) # get the direction direction = self.request.get('d') vectors = {'left': (-1, 0), 'up': (0, -1), 'right': (1, 0), 'down': (0, 1)} pos_diff = vectors[direction] # make move if not game.make_move(pos_diff): self.redirect('../game%i?error=y'%gid) else: game.put() self.redirect('../game%i' % gid)
def get(self, gid): uid, gid, user, game = auth_util.auth_into_game(self, gid, ['init']) if not game.load_piece_by_uid(uid): place_x = int(self.request.get('x')) place_y = int(self.request.get('y')) place_pos = (place_x, place_y) if game.load_map().valid_placement((place_x, place_y)): new_character = Character(place_x, place_y, game.random_color(), uid) game.add_character(new_character) if game.ready_to_play(): game.game_state = 'inplay' game.put() self.redirect('../game%i' % gid) self.redirect('../game%i?error=y' % gid)
def post(self, gid): uid, gid, user, game = auth_util.auth_into_game(self, gid, ['pregame']) username = self.request.get('username') query = db.Query(User) query.filter('name =', username) new_user = query.get() if new_user: # add user and update the game game.add_new_user(new_user.key().id()) game.put() # now update the user new_user.add_game_id(gid) new_user.put() # redirect back to the main page self.redirect('../game%i' % gid) else: # this user doesn't exist # TODO: send an error message back self.redirect('../game%i?error=y' % gid)