def purchaseItemForUser(userID, itemID): usr = getUser(userID) if not usr: return None vi = shared.getVirtualItem(itemID) if not vi: return None if vi.itemType == "credits": usr.credits += vi.itemData0 return True return None
def unlockItemForUser(userID, itemID): usr = getUser(userID) if not usr: return None vi = shared.getVirtualItem(itemID) if not vi: return None #Do this the hacky way and jusr push it to the end. usr.virtualItems.append(itemID) usr.credits -= vi.priceInCredits usr.push() return True
def userAttemptToBuy(userID, itemID): assert userID assert itemID result = "" usr = getUser(userID) if not usr: return {'result': False, 'message': 'User not found'} vi = shared.getVirtualItem(itemID) if not vi: return {'result': False, 'message': 'Item not found; please check with the admin'} #if the user has enough credits for the item, unlock the item if usr.credits >= vi['priceInCredits']: usr.virtualItems.append(itemID) usr.credits -= vi['priceInCredits'] usr.put() return {'result': True, 'itemID': itemID, 'userCredits': usr.credits} return {'result': False, 'itemID': itemID, 'userCredits': usr.credits}
def userAttemptToBuy(userID, itemID): assert userID assert itemID result = "" usr = getUser(userID) if not usr: return {'result': False, 'message': 'User not found'} vi = shared.getVirtualItem(itemID) if not vi: return { 'result': False, 'message': 'Item not found; please check with the admin' } #if the user has enough credits for the item, unlock the item if usr.credits >= vi['priceInCredits']: usr.virtualItems.append(itemID) usr.credits -= vi['priceInCredits'] usr.put() return {'result': True, 'itemID': itemID, 'userCredits': usr.credits} return {'result': False, 'itemID': itemID, 'userCredits': usr.credits}