예제 #1
0
 def remove(self, item, price):
     """Deze is voor purchase"""
     if price < 1:
         Output.quantity_less_than_one()
         return False
     if item not in self:
         Output.quantity_not_enough(item.NAME, price, item.quantity - 1)
         return False
     elif self[item.RAW].quantity < price:
         Output.quantity_not_enough(item.NAME, price, item.quantity)
         return False
     else:
         self[item.RAW].quantity -= price
         return True
예제 #2
0
파일: hero.py 프로젝트: henkburgstra/pyRPG
    def gain_experience(self, xp_input):
        """Deze is voor xp"""
        if xp_input < 1:
            Output.quantity_less_than_one()
            raise ValueError

        if self.level.quantity < self.level.MAXIMUM:
            self.experience.remaining += xp_input
            self.experience.total += xp_input
            Output.character_gain_xp(self.NAME, xp_input)

        while self.level.next(self.experience.total) <= 0:
            self.level.quantity += 1
            self.level.current += 1
            Output.character_gain_level(self.NAME, self.level.quantity)
예제 #3
0
파일: container.py 프로젝트: thomas64/pyRPG
    def add(self, item, quantity=1, verbose=True):
        """Deze is voor find, purchase, sell, equip en unequip"""
        if quantity < 1:
            Output.quantity_less_than_one()
            raise ValueError

        if "empty" in item.RAW and item in self.inside:  # de eerste keer moet hij wel alle empty's toevoegen
            return                                       # maar als ze er eenmaal inzitten hoeft dat ingame niet meer

        if item in self.inside:
            self.inside[item.RAW].quantity += quantity
        else:
            self.inside[item.RAW] = item                    # self[item] bestaat uit zichzelf al uit quantity = 1
            self.inside[item.RAW].quantity += quantity - 1
            # dus daarom, wanneer hij voor het eerst wordt toegevoegd: - 1
        if verbose:
            Output.add_item(quantity, item.NAME, self.NAME)
예제 #4
0
    def remove(self, gear, quantity=1, verbose=True):
        """Deze is voor sell en equip"""
        if gear.RAW not in self.inside:
            Output.no_item()
            raise AttributeError
        if quantity < 1:
            Output.quantity_less_than_one()
            raise ValueError

        if gear.quantity > quantity:
            gear.quantity -= quantity
        elif gear.quantity == quantity:
            del self.inside[gear]
        else:
            Output.error_quantity_not_enough()
            raise ValueError

        if verbose:
            Output.remove_item(quantity, gear.NAME, self.NAME)