def post(self): """Creates a new Player Character. """ _trace = TRACE + "APICreatePlayerCharacters:: post() " logging.info(_trace) user = self.get_user() if user is None: r = API404 r[MSG] = "User not found." return self.response.out.write(simplejson.dumps(r)) key = self.request.get("key") logging.info(_trace + "key = " + key) template = db.get(key) if template is not None: try: name = self.request.get("name") except AttributeError: r = API400 r[MSG] = "Missing 'name' parameter." return self.response.out.write(simplejson.dumps(r)) logging.info(_trace + "name = " + name) player = character.createPlayerFromTemplate(template, name, user) r = API201 r[MSG] = "Fortune favors the bold!" r[player.class_name()] = character.getJSONPlayer(player) else: r = API404 r[MSG] = "Template not found for key " + key + " ." return self.response.out.write(simplejson.dumps(r))
def post(self): '''Creates a new Player Character. ''' _trace = TRACE+'APICreatePlayerCharacters:: post() ' logging.info(_trace) user = self.get_user() if user is None: r = API404 r[MSG] = 'User not found.' return self.response.out.write(simplejson.dumps(r)) key = self.request.get('key') logging.info(_trace+'key = '+key) template = db.get(key) if template is not None: try: name = self.request.get('name') except AttributeError: r = API400 r[MSG] = 'Missing \'name\' parameter.' return self.response.out.write(simplejson.dumps(r)) logging.info(_trace+'name = '+name) player = character.createPlayerFromTemplate(template, name, user) r = API201 r[MSG] = 'Fortune favors the bold!' r[player.class_name()] = character.getJSONPlayer(player) else: r = API404 r[MSG] = 'Template not found for key '+key+' .' return self.response.out.write(simplejson.dumps(r))
def get(self, player_party_key, monster_party_key): _trace = TRACE+'LootHandler.get() ' logging.info(_trace) keys = [player_party_key, monster_party_key] parties = db.get(keys) _party = None npc_party = None for p in parties: if p.class_name() == 'NonPlayerParty': npc_party = p elif p.class_name() == 'PlayerParty': _party = p party_key = str(_party.key()) _player = character.getJSONPlayer(_party.leader) gold, entities = party.getGoldLoot(npc_party, _party) db.put(entities) user = users.get_current_user() template_values = { 'player': _player, 'party_key': party_key, 'gold': gold, 'user': user } generate(self, 'character_quest.html', template_values)
def get(self, key): _trace = TRACE+'CharacterSheetHandler.get() ' logging.info(_trace) _character = db.get(key) _player = character.getJSONPlayer(_character) _party = _character.party user = users.get_current_user() template_values = { 'player': _player, 'party': _party, 'user': user } generate(self, 'character_sheet.html', template_values)
def get(self, key): """Returns a PlayerCharacter provided a key. """ _trace = TRACE + "APIPlayerCharacters:: get() " logging.info(_trace) _character = db.get(key) if _character is not None and _character.class_name() == "Player": r = API200 r[MSG] = "A hero returns!" r[_character.class_name()] = character.getJSONPlayer(_character) else: r = API404 r[MSG] = "PlayerCharacter not found for key " + key + " ." return self.response.out.write(simplejson.dumps(r))
def get(self, key): _trace = TRACE+'CharacterQuestHandler.get() ' logging.info(_trace) _character = db.get(key) _player = character.getJSONPlayer(_character) party_key = str(_character.party.key()) user = users.get_current_user() template_values = { 'player': _player, 'party_key': party_key, 'user': user } generate(self, 'character_quest.html', template_values)
def get(self, key): '''Returns a PlayerCharacter provided a key. ''' _trace = TRACE+'APIPlayerCharacters:: get() ' logging.info(_trace) _character = db.get(key) if _character is not None and _character.class_name() == 'Player': r = API200 r[MSG] = 'A hero returns!' r[_character.class_name()] = character.getJSONPlayer(_character) else: r = API404 r[MSG] = 'PlayerCharacter not found for key '+key+' .' return self.response.out.write(simplejson.dumps(r))
def get(self, player_key, monster_party_key): _trace = TRACE+'CharacterAttackHandler.get() ' logging.info(_trace) _character = db.get(player_key) _party = db.get(monster_party_key) monster_party = party.getJSONParty(_party) _player = character.getJSONPlayer(_character) party_key = str(_character.party.key()) user = users.get_current_user() template_values = { 'player': _player, 'monster_party': monster_party, 'party_key': party_key, 'user': user } generate(self, 'character_attack.html', template_values)