diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..cfd7bff Binary files /dev/null and b/.DS_Store differ diff --git a/__pycache__/vikingsClasses.cpython-312.pyc b/__pycache__/vikingsClasses.cpython-312.pyc new file mode 100644 index 0000000..081cd77 Binary files /dev/null and b/__pycache__/vikingsClasses.cpython-312.pyc differ diff --git a/vikingsClasses.py b/vikingsClasses.py index 25322cd..9eeb60d 100644 --- a/vikingsClasses.py +++ b/vikingsClasses.py @@ -5,56 +5,85 @@ class Soldier: def __init__(self, health, strength): - # your code here - + self.health = health + self.strength = strength + def attack(self): - # your code here + return self.strength def receiveDamage(self, damage): - # your code here - + self.health -= damage + # Viking class Viking(Soldier): def __init__(self, name, health, strength): - # your code here - - def battleCry(self): - # your code here + super().__init__(health, strength) + self.name = name def receiveDamage(self, damage): - # your code here + self.health -= damage + if self.health > 0: + return f"{self.name} has received {damage} points of damage" + else: + return f"{self.name} has died in act of combat" + + def battleCry(self): + return "Odin Owns You All!" # Saxon class Saxon(Soldier): def __init__(self, health, strength): - # your code here + super().__init__(health, strength) def receiveDamage(self, damage): - # your code here + self.health -= damage + if self.health > 0: + return f"A Saxon has received {damage} points of damage" + else: + return "A Saxon has died in combat" # Davicente -class War(): +import random + +class War: def __init__(self): - # your code here + self.vikingArmy = [] + self.saxonArmy = [] def addViking(self, viking): - # your code here - + self.vikingArmy.append(viking) + def addSaxon(self, saxon): - # your code here - + self.saxonArmy.append(saxon) + def vikingAttack(self): - # your code here - + saxon = random.choice(self.saxonArmy) + viking = random.choice(self.vikingArmy) + result = saxon.receiveDamage(viking.attack()) + if saxon.health <= 0: + self.saxonArmy.remove(saxon) + return result + def saxonAttack(self): - # your code here + saxon = random.choice(self.saxonArmy) + viking = random.choice(self.vikingArmy) + result = viking.receiveDamage(saxon.attack()) + if viking.health <= 0: + self.vikingArmy.remove(viking) + return result def showStatus(self): - # your code here + if not self.saxonArmy: + return "Vikings have won the war of the century!" + elif not self.vikingArmy: + return "Saxons have fought for their lives and survive another day..." + else: + return "Vikings and Saxons are still in the thick of battle." + pass