def _Handle(self, channel, user, item_name): inventory = self._core.inventory.GetUserInventory(user) for key, params in inventory.items(): item = inventory_lib.Create(key, self._core, user, params) if item_name.lower() == item.human_name.lower(): msg, should_delete = item.Use() if should_delete: self._core.inventory.RemoveItem(user, item) return msg return 'You try to use your %s, but it was just a dream.' % item_name
def _Handle(self, channel: channel_pb2.Channel, user: user_pb2.User, target_user: user_pb2.User) -> hype_types.CommandResponse: inventory = self._core.inventory.GetUserInventory(target_user) if not inventory: return ('%s\'s backpack has a hole in the bottom' % target_user.display_name) msgs = ['%s\'s inventory:' % target_user.display_name] for key, params in inventory.items(): item = inventory_lib.Create(key, self._core, target_user, params) msgs.append('%s%s' % (item.human_name, FormatStacks(params))) # TODO: Worry about putting multiple items on a single line if # inventories become large. return msgs
def _Handle(self, channel, user, inventory_user): inventory_user = inventory_user or user if inventory_user == 'me': self._core.last_command = partial(self._Handle, inventory_user=inventory_user) inventory_user = user inventory = self._core.inventory.GetUserInventory(inventory_user) if not inventory: return '%s\'s backpack has a hole in the bottom' % inventory_user msgs = ['%s\'s inventory:' % inventory_user] for key, params in inventory.items(): item = inventory_lib.Create(key, self._core, inventory_user, params) msgs.append('%s%s' % (item.human_name, FormatStacks(params))) # TODO(someone): Worry about putting multiple items on a single line if # inventories become large. return msgs
def __init__(self, bookie): self._bookie = bookie self._winning_item = inventory_lib.Create('CoinPurse', None, None, {})
def _Handle(self, channel: channel_pb2.Channel, user: user_pb2.User, message: Text) -> hype_types.CommandResponse: if random.random() < self._params.find_chance: item = inventory_lib.Create('HypeEgg', self._core, user, {}) self._core.inventory.AddItem(user, item) return '%s found a(n) %s' % (user, item.human_name)