import random
class Hero(object):
    def __init__(self,hero_type,name,tili,max_tili,sdft,sdfy):
        self.tili=tili
        self.max_tili=max_tili
        self.sdft=sdft
        self.sdfy=sdfy
        self.bd=0
        self.name = name
        self.level = 1
        self.hp = 260
        self.attack = 40
        self.max_hp = self.hp
        self.hero_type = hero_type
        print("电脑角色"+self.name+"创建成功,英雄类型为:", self.hero_type)
        print("当前等级、血量、攻击力分别为:",self.level,self.hp,self.attack)


    def cure(self,tili,max_tili):  # 治疗
        self.hp=self.hp+60
        tili=tili-3 
        if self.hp>self.max_hp:
            self.hp=self.max_hp
        print(self.name+"使用了治疗,血量增加:60,目前的血量为:"+str(self.hp)+",体力减少3,目前的体力为:"+str(self.tili))
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)
        

    def combat(self, enemy,tili,max_tili):    # 普通攻击
        enemy.hp -= self.attack
        if self.bd>10:
            enemy.hp -=25
            self.bd=self.bd-11
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起用极限被动攻击,"
                info2 = "造成"+str(self.attack+20)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值11点,目前的被动值为:",self.bd
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==10:
            enemy.hp -=23
            self.bd=self.bd-10
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起荣耀被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值10点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==9:
            enemy.hp -=20
            self.bd=self.bd-9
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起圣力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值9点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==8:
            enemy.hp -=18
            self.bd=self.bd-8
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起神力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值8点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==7:
            enemy.hp -=16
            self.bd=self.bd-7
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起道力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值7点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==6:
            enemy.hp -=13
            self.bd=self.bd-6
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起魂被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值6点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==5:
            enemy.hp -=11
            self.bd=self.bd-5
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起灵被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值5点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==4:
            enemy.hp -=9
            self.bd=self.bd-4
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起超被动攻击,"
                info2 = "造成"+str(self.attack+12)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值4点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==3:
            enemy.hp -=7
            self.bd=self.bd-3
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
                info2 = "造成"+str(self.attack+8)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值3点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==2:
            enemy.hp -=5
            self.bd=self.bd-2
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起被动攻击,"
                info2 = "造成"+str(self.attack+4)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值2点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        else:
            self.bd=self.bd+1
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起攻击,"
                info2 = "造成"+str(self.attack)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="被动值增加1点,目前的被动值为:",self.bd
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)


    def dacombat(self, enemy,tili,max_tili):  #大招:暴击
        self.tili=self.tili-10
        info1 = self.name+"对"+enemy.name+"发起大招:暴击,"
        info2 = "暴击造成"+str(self.attack*2)+"点伤害,"
        enemy.hp=enemy.hp-(self.attack*2)
        if enemy.hp > 0:
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info1+info2+info3
            print(info)
        else:
            info3 = enemy.name+"阵亡,游戏结束"
            info = info1+info2+info3
            print(info)
            exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)

    def zhongcombat(self, enemy,tili,max_tili,sdft,sdfy):   #中招:圣盾防御
        self.tili=self.tili-7
        if self.sdfy==7:
            enemy.hp=enemy.hp-self.sdft
            self.hp=self.hp+30
            if self.hp>self.max_hp:
                self.hp=self.max_hp
            info1 = self.name+"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"+str(self.tili)
            info4 = ",血量增加:30,目前的血量为:"+str(self.hp)
            info2 =",圣盾反弹伤害造成"+str(self.sdft)+"点伤害,"
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info2+info3
            print(info1)
            print(info4)
            print(info)
        elif self.sdfy==6:
            enemy.hp=enemy.hp-self.sdft
            self.hp=self.hp+30
            if self.hp>self.max_hp:
                self.hp=self.max_hp
            info1 = self.name+"开启二级圣盾防御,体力减少7,目前的体力为:"+str(self.tili)
            info4 = ",血量增加:30,目前的血量为:"+str(self.hp)
            info2 =",圣盾反弹伤害造成"+str(self.sdft)+"点伤害,"
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info2+info3
            print(info1)
            print(info4)
            print(info)
        elif self.sdfy==5:
            enemy.hp=enemy.hp-self.sdft
            info1 = self.name+"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"+str(self.tili)
            info2="圣盾反弹伤害造成"+str(self.sdft)+"点伤害,"
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info2+info3
            print(info1)
            print(info)
        elif self.sdfy==4:
            self.hp=self.hp+30
            if self.hp>self.max_hp:
                self.hp=self.max_hp
            info1 = self.name+"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"+str(self.tili)
            info3 = "血量增加:30,目前的血量为:"+str(self.hp)
            print(info1)
            print(info3)
        elif self.sdfy==3:
            enemy.hp -= self.sdft
            info1 = self.name+"开启一级圣盾防御,"
            info2="圣盾反弹伤害造成"+str(self.sdft)+"点伤害,体力减少7,目前的体力为:"+str(self.tili)
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info1+info2+info3
            print(info)
        elif self.sdfy==2:
            self.hp=self.hp+30
            if self.hp>self.max_hp:
                self.hp=self.max_hp
            info1 = self.name+"开启一级圣盾防御,血量增加:30,目前的血量为:"+str(self.hp)+",体力减少7,目前的体力为:"+str(self.tili)
            print(info1)
        elif self.sdfy==1:
            info1 = self.name+"开启一级圣盾防御,体力减少7,目前的体力为:"+str(self.tili)
            print(info1)
        else:
            info1 = self.name+"开启圣盾防御失败,体力减少7,目前的体力为:"+str(self.tili)
            print(info1)
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)


    def xiaocombat(self, enemy,tili,max_tili):  #小招:强化
        self.tili=self.tili-4
        self.hp=self.hp+25
        self.bd=self.bd+3
        if self.hp>self.max_hp:
            self.hp=self.max_hp
        info1 = self.name+"开启强化,血量增加:25,目前的血量为:"+str(self.hp)+",被动值增加3点,目前的被动值为:"+str(self.bd)+",体力减少4,目前的体力为:"+str(self.tili)
        print(info1)
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)

            

class Player(object):
    def __init__(self,hero_type,name,tili,max_tili,ls):
        self.tili=tili
        self.max_tili=max_tili
        self.ls=ls
        self.bd=0
        self.name = name
        self.level = 1
        self.hp = 210
        self.attack = 50
        self.max_hp = self.hp
        self.hero_type = hero_type
        print("玩家角色"+self.name+"创建成功,英雄类型为:", self.hero_type)
        print("当前等级、血量、攻击力分别为:",self.level,self.hp,self.attack)


    def cure(self,tili,max_tili):  # 治疗
        self.hp=self.hp+50
        self.tili=self.tili-3 
        if self.tili<0:
            self.tili=0
        if self.hp>self.max_hp:
            self.hp=self.max_hp
        print(self.name+"使用了治疗,血量增加:50,目前的血量为:"+str(self.hp)+",体力减少3,目前的体力为:"+str(self.tili))
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)


    def combat(self, enemy,tili,max_tili):    # 普通攻击
        enemy.hp -= self.attack
        if self.bd>10:
            enemy.hp -=25
            self.bd=self.bd-11
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起用极限被动攻击,"
                info2 = "造成"+str(self.attack+20)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值11点,目前的被动值为:",self.bd
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==10:
            enemy.hp -=23
            self.bd=self.bd-10
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起荣耀被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值10点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==9:
            enemy.hp -=20
            self.bd=self.bd-9
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起圣力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值9点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==8:
            enemy.hp -=18
            self.bd=self.bd-8
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起神力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值8点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==7:
            enemy.hp -=16
            self.bd=self.bd-7
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起道力被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值7点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==6:
            enemy.hp -=13
            self.bd=self.bd-6
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起魂被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值6点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==5:
            enemy.hp -=11
            self.bd=self.bd-5
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起灵被动攻击,"
                info2 = "造成"+str(self.attack+16)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值5点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==4:
            enemy.hp -=9
            self.bd=self.bd-4
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起超被动攻击,"
                info2 = "造成"+str(self.attack+12)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值4点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==3:
            enemy.hp -=7
            self.bd=self.bd-3
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
                info2 = "造成"+str(self.attack+8)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值3点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.bd==2:
            enemy.hp -=5
            self.bd=self.bd-2
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起被动攻击,"
                info2 = "造成"+str(self.attack+4)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="消耗被动值2点,目前的被动值为:0"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        else:
            self.bd=self.bd+1
            if enemy.hp > 0:
                info1 = self.name+"对"+enemy.name+"发起攻击,"
                info2 = "造成"+str(self.attack)+"点伤害,"
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info4="被动值增加1点,目前的被动值为:",self.bd
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)

    def dacombat(self, enemy,tili,max_tili):  #大招:金乌神箭
        self.tili=self.tili-10
        if self.tili<0:
            self.tili=0
        info1 = self.name+"对"+enemy.name+"发起大招:金乌神箭,"
        info2 = "金乌神箭造成"+str(self.attack*2)+"点伤害,体力减少10,目前的体力为:"+str(self.tili)+","
        enemy.hp=enemy.hp-(self.attack*2)
        if enemy.hp > 0:
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info1+info2+info3
            print(info)
        else:
            info3 = enemy.name+"阵亡,游戏结束"
            info = info1+info2+info3
            print(info)
            exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)

    def zhongcombat(self, enemy,tili,max_tili):  #中招:天降巨箭
        self.tili=self.tili-7
        if self.tili<0:
            self.tili=0
        info1 = self.name+"对"+enemy.name+"发起中招:天降巨箭,"
        info2 = "天降巨箭造成"+str(self.attack+30)+"点伤害,体力减少7,目前的体力为:"+str(self.tili)+","
        enemy.hp=enemy.hp-(self.attack*2)
        if enemy.hp > 0:
            info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
            info = info1+info2+info3
            print(info)
        else:
            info3 = enemy.name+"阵亡,游戏结束"
            info = info1+info2+info3
            print(info)
            exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)


    def xiaocombat(self, enemy,tili,max_tili,ls):  #小招:连射
        lss=self.ls*3
        self.tili=self.tili-4
        if self.tili<0:
            self.tili=0
        info1 = self.name+"对"+enemy.name+"发起小招:连射,体力减少4,目前的体力为:"+str(self.tili)+","
        info2 = "连射"+str(self.ls)+"箭,造成"+str(self.attack+lss)+"点伤害,"
        if self.ls==0:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info2 = "连射1箭,但射偏了,造成"+str(self.attack+lss)+"点伤害,"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==1:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==2:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==3:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==4:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==5:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==6:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==7:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==8:  
            enemy.hp=enemy.hp-(self.attack+lss)
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        elif self.ls==9:
            enemy.hp=enemy.hp-(self.attack+lss-2)
            self.bd=self.bd+2
            info2 = "连射"+str(ls)+"箭,造成"+str(self.attack+lss-2)+"点伤害,被动值增加2点,目前的被动值为:"+str(self.bd)+","
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        else:
            enemy.hp=enemy.hp-(self.attack+lss-5)
            self.bd=self.bd+4
            info2 = "连射"+str(ls)+"箭,造成"+str(self.attack+lss-5)+"点伤害,被动值增加4点,目前的被动值为:"+str(self.bd)+","
            if enemy.hp > 0:
                info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
                info = info1+info2+info3
                print(info)
            else:
                info3 = enemy.name+"阵亡,游戏结束"
                info = info1+info2+info3
                print(info)
                exit()
        self.tili=self.tili+2
        if self.tili>self.max_tili:
            self.tili=self.max_tili
        print("出招后,体力回复2点,目前的体力为:",self.tili)


h_tili=5
p_tili=5
h_max_tili=10
p_max_tili=10
ls=0
sdft=0
sdfy=0
print("欢迎来到王者荣耀(文字版)")
print(30*"-")
yase = Hero("坦克","垭瑟",h_tili,h_max_tili,sdft,sdfy)
houyi = Player("射手","后羿",p_tili,p_max_tili,ls)
print(30*"-")
print("         战斗开始")
while True:
    print(30*"-")
    if p_tili>9:
        choice=input("目前的体力为:"+str(p_tili)+",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射/2中招:天降巨箭/3大招:金乌神箭):")
    elif p_tili>6:
        choice=input("目前的体力为:"+str(p_tili)+",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射/2中招:天降巨箭):")
    elif p_tili>3:
        choice=input("目前的体力为:"+str(p_tili)+",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射):")
    elif p_tili>2:
        choice=input("目前的体力为:"+str(p_tili)+",请选择释放英雄技能(q退出/a治疗/0普通攻击):")
    else:
        choice=input("目前的体力为:"+str(p_tili)+",请选择释放英雄技能(q退出/0普通攻击):")
    if choice=="q":
        print("游戏结束")
        break
    elif choice=="a" and p_tili>2:
        houyi.cure(p_tili,p_max_tili)
        p_tili-=1
    elif choice=="0":
        houyi.combat(yase,p_tili,p_max_tili)
        p_tili+=2
        if p_tili>p_max_tili:
            p_tili=p_max_tili
    elif choice=="1" and p_tili>3:
        ls=random.randint(0,10)
        houyi.xiaocombat(yase,p_tili,p_max_tili,ls)
        p_tili-=2
        if ls==0:
            sdft=50
        elif ls==1:
            sdft=53
        elif ls==2:
            sdft=56
        elif ls==3:
            sdft=59
        elif ls==4:
            sdft=62
        elif ls==5:
            sdft=65
        elif ls==6:
            sdft=68
        elif ls==7:
            sdft=71
        elif ls==8:
            sdft=74
        else:
            sdft=75
    elif choice=="2" and p_tili>6:
        houyi.zhongcombat(yase,p_tili,p_max_tili)
        p_tili-=5
        sdft=80
    elif choice=="3" and p_tili>9:
        houyi.dacombat(yase,p_tili,p_max_tili)
        p_tili-=8
        sdft=100
    else:
        print("指令无效")
        continue
    if h_tili<3:
        mun=1
    elif h_tili<4:
        mun=random.randint(1,2)
    elif h_tili<7:
        mun=random.randint(1,3)
    elif h_tili<10:
        mun=random.randint(1,4)
    else:
        mun=random.randint(1,5)
    if mun==1:
        yase.combat(houyi,h_tili,h_max_tili)
        h_tili+=2
        if h_tili>h_max_tili:
            h_tili=h_max_tili
    elif mun==2:
        yase.cure(h_tili,h_max_tili)
        h_tili-=1
    elif mun==3:
        yase.xiaocombat(houyi,h_tili,h_max_tili)
        h_tili-=2
    elif mun==4:
        sdfy==random.randint(0,10)
        yase.zhongcombat(houyi,h_tili,h_max_tili,sdft,sdfy)
        h_tili-=5
        if sdfy==1 or sdfy==4 or sdfy==5 or sdfy==7:
           continue 
    else:
        yase.dacombat(houyi,h_tili,h_max_tili)
        h_tili-=8