예제 #1
0
    def POST_use_item(self, item_name, target):
        try:
            inventory.consume_item(c.user, item_name)
        except inventory.NoSuchItemError:
            abort(400)

        c.user.f2p = "participated"
        c.user._commit()

        item = items.get_item(item_name)
        if not item.is_target_valid(target):
            abort(400)
        item.on_use(c.user, target)

        return json.dumps(c.state_changes)
예제 #2
0
    def POST_use_item(self, item_name, target):
        try:
            inventory.consume_item(c.user, item_name)
        except inventory.NoSuchItemError:
            abort(400)

        c.user.f2p = "participated"
        c.user._commit()

        item = items.get_item(item_name)
        if not item.is_target_valid(target):
            abort(400)
        item.on_use(c.user, target)

        return json.dumps(c.state_changes)
예제 #3
0
    def on_use(self, user, target):
        target_items = [item_dict['kind']
                        for item_dict in inventory.get_inventory(target)]
        if target_items:
            to_steal = random.choice(target_items)
            inventory.consume_item(target, to_steal)
            inventory.add_to_inventory(user, to_steal)

            to_steal_title = g.f2pitems[to_steal]['title']
            item_title = self.item['title']
            subject = "you've been robbed!"
            msg = ('%s used %s to steal your %s' %
                   (user.name, item_title, to_steal_title))
            send_system_message(target, subject, msg)

            subject = "you stole an item"
            msg = ("you used %s to steal %s from %s" %
                   (item_title, to_steal_title, target.name))
            send_system_message(user, subject, msg)

            self.apply_damage_and_log(user, target, [target])
예제 #4
0
    def on_use(self, user, target):
        target_items = [
            item_dict['kind'] for item_dict in inventory.get_inventory(target)
        ]
        if target_items:
            to_steal = random.choice(target_items)
            inventory.consume_item(target, to_steal)
            inventory.add_to_inventory(user, to_steal)

            to_steal_title = g.f2pitems[to_steal]['title']
            item_title = self.item['title']
            subject = "you've been robbed!"
            msg = ('%s used %s to steal your %s' %
                   (user.name, item_title, to_steal_title))
            send_system_message(target, subject, msg)

            subject = "you stole an item"
            msg = ("you used %s to steal %s from %s" %
                   (item_title, to_steal_title, target.name))
            send_system_message(user, subject, msg)

            self.apply_damage_and_log(user, target, [target])