Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Armour is not working?
#12
Maybe a different approach will help.
Like making simple framework interface.
Example. An idea how to start.
class EquipArmor:
    def __init__(self):
        self.head = None
        self.chest = None
        self.legs = None
        self.feet = None

    # Check if armor can be equip.
    def equip_chest(self, armor):
        if armor is None:
            self.chest = None
            return True

        if isinstance(armor, ChestArmor):
            self.chest = armor
            return True

        return False

    # Get total protection from all armor.
    def get_protection(self):
        protection = 0
        for armor in vars(self).values():
            if armor:
                protection += armor.protection

        return protection

class Armor:
    library = {}

    def __init__(self, name, protection):
        # Make sure that all armor will have a name and protection variables.
        self.name = name
        self.protection = protection
        Armor.library[self.name] = self

# Identify armor type
class ChestArmor(Armor):
    def __init__(self, name, protection):
        Armor.__init__(self, name, protection)

ChestArmor("Leather Chest Plate", 5)
ChestArmor("Leather", 2)

player = EquipArmor()
print(player.get_protection())

player.equip_chest(Armor.library["Leather Chest Plate"])
print(player.get_protection())

player.equip_chest(Armor.library["Leather"])
print(player.get_protection())
99 percent of computer problems exists between chair and keyboard.
Reply


Messages In This Thread
Armour is not working? - by Piethon - Dec-10-2019, 05:53 PM
RE: Armour is not working? - by nilamo - Dec-10-2019, 06:24 PM
RE: Armour is not working? - by michael1789 - Dec-10-2019, 07:09 PM
RE: Armour is not working? - by Piethon - Dec-11-2019, 07:38 PM
RE: Armour is not working? - by michael1789 - Dec-11-2019, 11:40 PM
RE: Armour is not working? - by Piethon - Dec-12-2019, 05:09 PM
RE: Armour is not working? - by nilamo - Dec-12-2019, 05:38 PM
RE: Armour is not working? - by Piethon - Dec-13-2019, 01:36 PM
RE: Armour is not working? - by michael1789 - Dec-13-2019, 03:58 PM
RE: Armour is not working? - by Piethon - Dec-13-2019, 04:03 PM
RE: Armour is not working? - by michael1789 - Dec-13-2019, 05:29 PM
RE: Armour is not working? - by Piethon - Dec-14-2019, 01:32 PM
RE: Armour is not working? - by Windspar - Dec-13-2019, 11:43 PM
RE: Armour is not working? - by Windspar - Dec-14-2019, 02:22 PM
RE: Armour is not working? - by Piethon - Dec-14-2019, 04:04 PM
RE: Armour is not working? - by michael1789 - Dec-14-2019, 04:38 PM
RE: Armour is not working? - by Piethon - Dec-15-2019, 10:10 AM
RE: Armour is not working? - by Windspar - Dec-15-2019, 10:48 AM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020