def deferred_find_item_in(client, parent, func): i = client.world.find_item_in(parent, func) if i is not None: return defer.succeed(i) d = defer.Deferred() e = OpenContainer(client, parent).deferred def second_lookup(): i = client.world.find_item_in(parent, func) if i is not None: d.callback(i) else: d.errback(NoSuchEntity()) def callback(result): reactor.callLater(1, second_lookup) return result def errback(fail): d.errback(fail) return fail e.addCallbacks(callback, errback) return d
def run(client): backpack = client.world.backpack() if backpack is None: return defer.fail('No backpack') d = OpenContainer(client, backpack).deferred d.addCallback(print_contents, client.world, backpack) return d
def _source_opened2(self): client = self._client if self._destination.is_bank(client.world.player): self._destination_opened(None) else: d = OpenContainer(client, self._destination).deferred d.addCallbacks(self._destination_opened, self._failure)
def open_backpack(self): backpack = self._client.world.backpack() if backpack is None: return defer.fail('No backpack') d = OpenContainer(self._client, backpack).deferred d.addCallback(self.get_runes, self._client.world, backpack) return d
def open_backpack(self): backpack = self._client.world.backpack() if backpack is None: return defer.fail("No backpack") d = OpenContainer(self._client, backpack).deferred d.addCallback(self.get_runes, self._client.world, backpack) return d
def restock_box_opened(client, restock_box): backpack = client.world.backpack() if backpack is None: return defer.fail('No backpack') d = OpenContainer(client, backpack).deferred d.addCallback(backpack_opened0, client, restock_box) return d
def __init__(self, client, container=None): Engine.__init__(self, client) self.__failed = False self.__tries = 10 self.container = container d = OpenContainer(client, self.container).deferred d.addCallbacks(self._more, self._failure)
def harvested(result, client): chest = find_chest_at(client.world, client.world.player.position.x - 2, client.world.player.position.y) if chest is None: return defer.fail('No chest') d = OpenContainer(client, chest).deferred d.addCallback(chest_opened0, client, chest) return d
def run(client): PrintMessages(client) backpack = client.world.backpack() if backpack is None: return defer.fail('No backpack') d = OpenContainer(client, backpack).deferred d.addCallback(backpack_opened, client) return d
def run(client): PrintMessages(client) backpack = client.world.backpack() if backpack is None: return defer.fail("No backpack") d = OpenContainer(client, backpack).deferred d.addCallback(backpack_opened, client) return d
def run(client): PrintMessages(client) restock_box = find_restock_box(client.world) if restock_box is None: return defer.fail('No box') d = OpenContainer(client, restock_box).deferred d.addCallback(restock_box_opened0, client, restock_box) return d
def __init__(self, client, source, destination, func, amount): Engine.__init__(self, client) assert amount > 0 self.source = source self.destination = destination self.func = func self.amount = amount d = OpenContainer(client, destination).deferred d.addCallbacks(self._opened, self._failure)
def __init__(self, client, ids): Engine.__init__(self, client) self._source = client.world.backpack() if self._source is None: self._failure(NoSuchEntity('No backpack')) return self.ids = ids d = OpenContainer(client, self._source).deferred d.addCallbacks(self._source_opened, self._failure)
def __init__(self, client, container, counts=(), func=None): Engine.__init__(self, client) self._source = client.world.backpack() if self._source is None: self._failure(NoSuchEntity('No backpack')) return self._destination = container self._counts = [] if isinstance(counts, dict): self._counts.extend(counts.iteritems()) else: self._counts.extend(counts) self._func = func d = OpenContainer(client, self._source).deferred d.addCallbacks(self._source_opened, self._failure)
def deferred_amount_in(client, parent, func): d = defer.Deferred() e = OpenContainer(client, parent).deferred def count(): total = 0 for i in client.world.items_in(parent): if func(i): total += i.amount d.callback(total) def callback(result): reactor.callLater(1, count) return result def errback(fail): d.errback(fail) return fail e.addCallbacks(callback, errback) return d
def __init__(self, client, container): Engine.__init__(self, client) self.container = container d = OpenContainer(client, container).deferred d.addCallbacks(self._opened, self._failure)