Exemplo n.º 1
0
def use(request):
    """Use selected item (if it is usable) from users inventory"""
    req = json.load(reader(request))
    student = Student.objects.get(user=request.user)
    avatar = Avatar.objects.get(student=student)
    item = Item.objects.get(id=req['item_to_use'])

    if not Possession.objects.all().filter(avatar=avatar, item=item):
        return HttpResponse('')

    Possession.objects.filter(avatar=avatar, item=item).delete()
    return HttpResponse('')
Exemplo n.º 2
0
def sell(request):
    """Transfer the selected item from user's inventory to the shop.
    User recieves full items price"""
    req = json.load(reader(request))
    student = Student.objects.get(user=request.user)
    avatar = Avatar.objects.get(student=student)
    item = Item.objects.get(id=req['item_to_sell'])

    if not Possession.objects.all().filter(avatar=avatar, item=item):
        return HttpResponse('')

    Possession.objects.filter(avatar=avatar, item=item).delete()
    avatar.point_balance += item.price
    avatar.save()
    return HttpResponse('')
Exemplo n.º 3
0
def buy(request):
    """Transfer selected item from the shop to user's inventory
    and charges him accordingly"""
    req = json.load(reader(request))
    student = Student.objects.get(user=request.user)
    avatar = Avatar.objects.get(student=student)
    item = Item.objects.get(id=req['item_to_buy'])
    if item.price > avatar.point_balance:
        return HttpResponse('')
    if not Possession.objects.all().filter(avatar=avatar, item=item):
        avatar.point_balance -= item.price
        avatar.save()
        b = Possession(avatar=avatar, item=item)
        b.save()
    return HttpResponse('')