예제 #1
0
 def alt__attack(self):
     damage = 80 + 80 * (self.dexterity / 100)
     self.mana = self.mana - 50
     typing(
         "Герой отвечает на удары противников, нанося чистый урон всем врагам вокруг себя. Наносит: "
         + str(damage) + " урона")
     return damage
예제 #2
0
 def hard__attack(self):
     damage = 50 + 50 * (self.dexterity / 100)
     self.mana = self.mana - 30
     typing(
         "Приводит врага в бешенство, замедляя его и нанося ему урон. Наносит: "
         + str(damage) + " урона")
     return damage
예제 #3
0
 def make_a_turn(self, player):
     typing("Введите число [1,2,3]: ")
     attack = int(input())
     if (attack == 1):
         return int(player.simple__attack())
     elif (attack == 2):
         return int(player.hard__attack())
     elif (attack == 3):
         return int(player.alt__attack())
     else:
         typing("Промазал")
         return 0
예제 #4
0
    def choice__character(self):
        typing("1. Маг-волшебник ")
        typing("2. Воин-варвар ")
        typing("3. Охотник-следопыт ")

        typing(" \n Введите число [1,2,3]: ")
        player_class = int(input())
        if (player_class == 1):
            return Mage()
        elif (player_class == 2):
            return Warrior()
        elif (player_class == 3):
            return Hunter()
        else:
            typing("Что-то пошло не так(\nПопробуйте снова")
            return self.choice__character()
예제 #5
0
    def battle(self):
        round_counter = 1
        while (True):
            typing("Раунд " + str(round_counter))

            typing("Ходит игрок 1")
            damage = self.make_a_turn(self.player1)
            self.player2.health = self.player2.health - int(damage)
            typing("HP player2 " + str(self.player2.health))

            typing("\nХодит игрок 2")
            damage = self.make_a_turn(self.player2)
            self.player1.health = self.player1.health - int(damage)
            typing("HP player2 " + str(self.player1.health))

            if (self.player2.health <= 0):
                return "player1 win"
            elif (self.player1.health <= 0):
                return "player2 win"

            round_counter += 1
예제 #6
0
    def menu(self):
        typing("Перед началом поединка, выберите персонажа!")

        typing("Игрок №1 ")
        self.player1 = self.choice__character()

        typing("Игрок №2 ")
        self.player2 = self.choice__character()
예제 #7
0
 def alt__attack(self):
     damage = 30 + 30*(self.dexterity / 100)
     self.mana = self.mana - 20
     typing("Охотник направляет ветер в сторону врага, чтобы увеличить скорость атаки. Наносит: " + str(damage) +" урона")
     return damage
예제 #8
0
 def hard__attack(self):
     damage = 100 + 100*(self.dexterity / 100)
     self.mana = self.mana - 70
     typing("Охотник заряжает свой лук несколько секунд и делает одиночный выстрел. Наносит: " + str(damage) +" урона")
     return damage
예제 #9
0
 def simple__attack(self):
     damage = random.randrange(24,36)
     typing("Воин наносит сокрушительный удар топором и наносит: " + str(damage) + "урона")
     return damage