Example #1
0
 def spWeb(self, enemy: NPC):
     # TODO Add logic for root special attacks
     printc(f"{self.name} spits web on {enemy.name}")
     sleep(1)
     printc(
         f"The web hardens as it comes in contact with air, {colors.BOLD}rooting {colors.RESET}{enemy.name} in place!"
     )
Example #2
0
 def spBite(self, enemy: NPC):
     # TODO Add logic for poison special attack
     printc(f"{self.name} bites {enemy.name}")
     sleep(1)
     printc(
         f"{self.name} fangs inject a deadly {colors.GREEN} poison  {colors.RESET}in {enemy.name} body!"
     )
Example #3
0
 def spGaiaFlower(self, enemy: NPC):
     # Roots the target enemy with chance to inflict poison?
     printc(
         f"{self.name} touches the ground calling the spirits of the forest"
     )
     sleep(1)
     printc(
         f"Thorny vines emerge from below and {colors.BOLD}root {colors.RESET}{enemy.name} in place"
     )
Example #4
0
 def spInferno(self, enemy: NPC):
     # TODO Add Ablaze effect
     printc(
         f"{self.name} starts hitting the ground violently with his hammers causing a magma eruption below {enemy.name}"
     )
Example #5
0
 def spShadowStep(self, enemy: NPC):
     # Double weapon DMG and chance to instakill or stun
     printc(
         f"{self.name} hides and emerges from the shadows behind {enemy.name} striking a weak spot."
     )
Example #6
0
 def spDivineLight(self):
     # TODO Heal the character and maybe add 1 turn of invinsibility (Holy Shield)
     printc(
         f"{self.name} raises his hand and calls forth a divine beam of light {colors.YELLOW}healing {colors.RESET}him"
     )
Example #7
0
 def attack(self, enemy):
     printc(f"{self.name} attacks {enemy.name}")
Example #8
0
    def printStats(self):
        printc(f"{len(self.name) * '_'}")
        printc(f'|{self.name}|')
        printc(f"+{len(self.name) * '-'}+")
        printc(f'HP: {self.hp}/{self.maxHp}')
        printc(f'MP: {self.mp}/{self.maxMp}')
        for i, j in self.stats.items():
            printc(f"{i.upper()}: {j}") if (
                len(str(j)) > 1) else printc(f"{i.upper()}:  {j}")

        printc(self.desc)
Example #9
0
 def spScavenge(self, item: Item):
     # TODO make new battle items? find battle items?
     printc(
         f"{self.name} takes a quick look around and finds a {colors.CYAN}{item.name} under a pile of trash."
     )