Beispiel #1
0
    def total_stored(self, wanted, slots=None):
        """
        Calculates the total number of items of that type
        in the current window or given slot range.

        Args:
            wanted: function(Slot) or Slot or itemID or (itemID, metadata)
        """
        if slots is None:
            slots = self.window.slots
        wanted = make_slot_check(wanted)
        return sum(slot.amount for slot in slots if wanted(slot))
Beispiel #2
0
    def find_slots(self, wanted, slots=None):
        """
        Yields all slots containing the item.
        Searches the given slots or, if not given,
        active hotbar slot, hotbar, inventory, open window in this order.

        Args:
            wanted: function(Slot) or Slot or itemID or (itemID, metadata)
        """
        if slots is None:
            slots = self.inv_slots_preferred + self.window.window_slots
        wanted = make_slot_check(wanted)

        for slot in slots:
            if wanted(slot):
                yield slot