Commit 6c0647ec by BellCodeEditor

save project

parent ed973758
Showing with 98 additions and 471 deletions
import random info1="aas"
bd1=0 info2="asdf"
info3 = "还剩下血量"
class Hero(object): info = info1+info2+info3
def __init__(self,hero_type,name): print(info)
h_tili=5 \ No newline at end of file
h_max_tili=10
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): # 治疗
self.hp=self.hp+60
h_tili=h_tili-3
if self.hp>self.max_hp:
self.hp=self.max_hp
print(self.name+"使用了治疗,血量增加:", 60,",目前的血量为:",self.hp+"体力减少3,目前的体力为:",h_tili)
h_tili=h_tili+2
if h_tili>h_max_tili:
h_tili=h_max_tili
print("出招后,体力回复2点,目前的体力为:",h_tili)
def combat(self, enemy): # 普通攻击
enemy.hp -= self.attack
if bd1==5:
enemy.hp -=20
bd1=bd1-5
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==4:
enemy.hp -=15
bd1=bd1-4
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起超被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==3:
enemy.hp -=10
bd1=bd1-3
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==2:
enemy.hp -=5
bd1=bd1-2
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起被动攻击,"
info2 = "造成"+str(self.attack+5)+"点伤害,"
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:
bd1=bd1+1
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起攻击,"
info2 = "造成"+str(self.attack)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="被动值增加1点,目前的被动值为:",bd1
info = info1+info2+info3
print(info)
else:
info3 = enemy.name+"阵亡,游戏结束"
info = info1+info2+info3
print(info)
exit()
h_tili=h_tili+2
if h_tili>h_max_tili:
h_tili=h_max_tili
print("出招后,体力回复2点,目前的体力为:",h_tili)
def dacombat(self, enemy): #大招:暴击
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()
h_tili=h_tili+2
if h_tili>h_max_tili:
h_tili=h_max_tili
print("出招后,体力回复2点,目前的体力为:",h_tili)
def zhongcombat(self, enemy): #中招:圣盾防御
self.tili=self.tili-7
sdfy=random.randint(1,3)
if sdfy==3:
info1 = self.name+"开启一级圣盾防御,体力减少7,目前的体力为:",self.tili
print(info1)
elif sdfy==2:
enemy.hp -= ftsy
info1 = self.name+"开启二级圣盾防御,"
info2="圣盾反弹伤害造成"+str(ftsy)+"点伤害,体力减少7,目前的体力为:",self.tili
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3
print(info)
else:
enemy.hp -= ftsy
info1 = self.name+"开启三级圣盾防御,"
info2="圣盾反弹伤害造成"+str(ftsy)+"点伤害,体力减少7,目前的体力为:",self.tili
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3
print(info)
h_tili=h_tili+2
if h_tili>h_max_tili:
h_tili=h_max_tili
print("出招后,体力回复2点,目前的体力为:",h_tili)
def xiaocombat(self, enemy): #小招:强化
self.tili=self.tili-4
self.hp=self.hp+25
bd1=bd1+3
if self.hp>self.max_hp:
self.hp=self.max_hp
print(self.name+"使用了治疗,血量增加:", 55,",目前的血量为:",self.hp+"体力减少3,目前的体力为:",self.tili)
info1 = self.name+"开启强化,血量增加:", 25,",目前的血量为:",self.hp+"被动值增加1点,目前的被动值为:",bd1+"体力减少4,目前的体力为:",self.tili
print(info1)
h_tili=h_tili+2
if h_tili>h_max_tili:
h_tili=h_max_tili
print("出招后,体力回复2点,目前的体力为:",h_tili)
class Player(object):
def __init__(self,hero_type,name):
self.tili=5
self.max_tili=10
self.name = name
self.level = 1
self.hp = 200
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): # 治疗
self.hp=self.hp+50
p_tili=p_tili-3
if self.hp>self.max_hp:
self.hp=self.max_hp
print(self.name+"使用了治疗,血量增加:",50,",目前的血量为:",self.hp+"体力减少3,目前的体力为:",p_tili)
p_tili=p_tili+2
if p_tili>p_max_tili:
p_tili=p_max_tili
print("出招后,体力回复2点,目前的体力为:",p_tili)
def combat(self, enemy): # 普通攻击
enemy.hp -= self.attack
if bd1==5:
enemy.hp -=20
bd1=bd1-5
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==4:
enemy.hp -=15
bd1=bd1-4
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起超被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==3:
enemy.hp -=10
bd1=bd1-3
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害,"
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 bd1==2:
enemy.hp -=5
bd1=bd1-2
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起被动攻击,"
info2 = "造成"+str(self.attack+5)+"点伤害,"
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:
bd1=bd1+1
if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起攻击,"
info2 = "造成"+str(self.attack)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="被动值增加1点,目前的被动值为:",bd1
info = info1+info2+info3
print(info)
else:
info3 = enemy.name+"阵亡,游戏结束"
info = info1+info2+info3
print(info)
exit()
p_tili=p_tili+2
if p_tili>p_max_tili:
p_tili=p_max_tili
print("出招后,体力回复2点,目前的体力为:",p_tili)
def dacombat(self, enemy): #大招:金乌神箭
p_tili=p_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()
p_tili=p_tili+2
if p_tili>p_max_tili:
p_tili=p_max_tili
print("出招后,体力回复2点,目前的体力为:",p_tili)
def zhongcombat(self, enemy): #中招:天降巨箭
p_tili=p_tili-7
info1 = self.name+"对"+enemy.name+"发起中招:天降巨箭,"
info2 = "天降巨箭造成"+str(self.attack+30)+"点伤害,"
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()
p_tili=p_tili+2
if p_tili>p_max_tili:
p_tili=p_max_tili
print("出招后,体力回复2点,目前的体力为:",p_tili)
def xiaocombat(self, enemy): #小招:连射
ls=random.randint(1,5)
ls5=ls*5
p_tili=p_tili-4
info1 = self.name+"对"+enemy.name+"发起小招:连射,"
info2 = "连射",ls,"箭,造成"+str(self.attack+ls5)+"点伤害,"
if ls==1:
enemy.hp=enemy.hp-(self.attack+ls5)
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 ls==2:
enemy.hp=enemy.hp-(self.attack+ls5)
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 ls==3:
enemy.hp=enemy.hp-(self.attack+ls5)
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 ls==4:
enemy.hp=enemy.hp-(self.attack+ls5)
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+ls5)
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()
p_tili=p_tili+2
if p_tili>p_max_tili:
p_tili=p_max_tili
print("出招后,体力回复2点,目前的体力为:",p_tili)
yase = Hero("坦克","垭瑟")
houyi = Player("射手", "后羿")
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":
houyi.cure()
elif choice=="0":
houyi.combat(yase)
elif choice=="1":
houyi.xiaocombat(yase)
elif choice=="2":
houyi.zhongcombat(yase)
elif choice=="3":
houyi.dacombat(yase)
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)
elif mun==2:
yase.cure()
elif mun==3:
yase.xiaocombat(houyi)
elif mun==4:
yase.zhongcombat(houyi)
if sdfy==1:
continue
elif sdfy==2:
pass
else:
continue
else:
yase.dacombat(houyi)
\ No newline at end of file
...@@ -19,7 +19,7 @@ class Hero(object): ...@@ -19,7 +19,7 @@ class Hero(object):
tili=tili-3 tili=tili-3
if self.hp>self.max_hp: if self.hp>self.max_hp:
self.hp=self.max_hp self.hp=self.max_hp
print(self.name+"使用了治疗,血量增加:60,目前的血量为:"+str(self.hp)+"体力减少3,目前的体力为:"+str(self.tili)) print(self.name+"使用了治疗,血量增加:60,目前的血量为:"+str(self.hp)+"体力减少3,目前的体力为:"+str(self.tili))
tili=tili+2 tili=tili+2
if tili>max_tili: if tili>max_tili:
tili=max_tili tili=max_tili
...@@ -33,7 +33,7 @@ class Hero(object): ...@@ -33,7 +33,7 @@ class Hero(object):
self.bd=self.bd-6 self.bd=self.bd-6
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击," info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+20)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值6点,目前的被动值为:",self.bd info4="消耗被动值6点,目前的被动值为:",self.bd
info = info1+info2+info3 info = info1+info2+info3
...@@ -48,7 +48,7 @@ class Hero(object): ...@@ -48,7 +48,7 @@ class Hero(object):
self.bd=self.bd-5 self.bd=self.bd-5
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起终极被动攻击," info1 = self.name+"对"+enemy.name+"发起终极被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+16)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值5点,目前的被动值为:0" info4="消耗被动值5点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -63,7 +63,7 @@ class Hero(object): ...@@ -63,7 +63,7 @@ class Hero(object):
self.bd=self.bd-4 self.bd=self.bd-4
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起超级被动攻击," info1 = self.name+"对"+enemy.name+"发起超级被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+12)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值4点,目前的被动值为:0" info4="消耗被动值4点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -78,7 +78,7 @@ class Hero(object): ...@@ -78,7 +78,7 @@ class Hero(object):
self.bd=self.bd-3 self.bd=self.bd-3
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起强被动攻击," info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+8)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值3点,目前的被动值为:0" info4="消耗被动值3点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -93,7 +93,7 @@ class Hero(object): ...@@ -93,7 +93,7 @@ class Hero(object):
self.bd=self.bd-2 self.bd=self.bd-2
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起被动攻击," info1 = self.name+"对"+enemy.name+"发起被动攻击,"
info2 = "造成"+str(self.attack+5)+"点伤害," info2 = "造成"+str(self.attack+4)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值2点,目前的被动值为:0" info4="消耗被动值2点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -201,6 +201,8 @@ class Player(object): ...@@ -201,6 +201,8 @@ class Player(object):
def cure(self,tili,max_tili): # 治疗 def cure(self,tili,max_tili): # 治疗
self.hp=self.hp+50 self.hp=self.hp+50
self.tili=self.tili-3 self.tili=self.tili-3
if self.tili<0:
self.tili=0
if self.hp>self.max_hp: if self.hp>self.max_hp:
self.hp=self.max_hp self.hp=self.max_hp
print(self.name+"使用了治疗,血量增加:50,目前的血量为:"+str(self.hp)+",体力减少3,目前的体力为:"+str(self.tili)) print(self.name+"使用了治疗,血量增加:50,目前的血量为:"+str(self.hp)+",体力减少3,目前的体力为:"+str(self.tili))
...@@ -217,7 +219,7 @@ class Player(object): ...@@ -217,7 +219,7 @@ class Player(object):
self.bd=self.bd-6 self.bd=self.bd-6
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击," info1 = self.name+"对"+enemy.name+"发起用荣耀被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+20)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值6点,目前的被动值为:",self.bd info4="消耗被动值6点,目前的被动值为:",self.bd
info = info1+info2+info3 info = info1+info2+info3
...@@ -232,7 +234,7 @@ class Player(object): ...@@ -232,7 +234,7 @@ class Player(object):
self.bd=self.bd-5 self.bd=self.bd-5
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起终极被动攻击," info1 = self.name+"对"+enemy.name+"发起终极被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+16)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值5点,目前的被动值为:0" info4="消耗被动值5点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -247,7 +249,7 @@ class Player(object): ...@@ -247,7 +249,7 @@ class Player(object):
self.bd=self.bd-4 self.bd=self.bd-4
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起超级被动攻击," info1 = self.name+"对"+enemy.name+"发起超级被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+12)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值4点,目前的被动值为:0" info4="消耗被动值4点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -262,7 +264,7 @@ class Player(object): ...@@ -262,7 +264,7 @@ class Player(object):
self.bd=self.bd-3 self.bd=self.bd-3
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起强被动攻击," info1 = self.name+"对"+enemy.name+"发起强被动攻击,"
info2 = "造成"+str(self.attack+10)+"点伤害," info2 = "造成"+str(self.attack+8)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值3点,目前的被动值为:0" info4="消耗被动值3点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -277,7 +279,7 @@ class Player(object): ...@@ -277,7 +279,7 @@ class Player(object):
self.bd=self.bd-2 self.bd=self.bd-2
if enemy.hp > 0: if enemy.hp > 0:
info1 = self.name+"对"+enemy.name+"发起被动攻击," info1 = self.name+"对"+enemy.name+"发起被动攻击,"
info2 = "造成"+str(self.attack+5)+"点伤害," info2 = "造成"+str(self.attack+4)+"点伤害,"
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info4="消耗被动值2点,目前的被动值为:0" info4="消耗被动值2点,目前的被动值为:0"
info = info1+info2+info3 info = info1+info2+info3
...@@ -308,8 +310,10 @@ class Player(object): ...@@ -308,8 +310,10 @@ class Player(object):
def dacombat(self, enemy,tili,max_tili): #大招:金乌神箭 def dacombat(self, enemy,tili,max_tili): #大招:金乌神箭
self.tili=self.tili-10 self.tili=self.tili-10
if self.tili<0:
self.tili=0
info1 = self.name+"对"+enemy.name+"发起大招:金乌神箭," info1 = self.name+"对"+enemy.name+"发起大招:金乌神箭,"
info2 = "金乌神箭造成"+str(self.attack*2)+"点伤害," info2 = "金乌神箭造成"+str(self.attack*2)+"点伤害,体力减少10,目前的体力为:"+str(self.tili)+","
enemy.hp=enemy.hp-(self.attack*2) enemy.hp=enemy.hp-(self.attack*2)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
...@@ -327,8 +331,10 @@ class Player(object): ...@@ -327,8 +331,10 @@ class Player(object):
def zhongcombat(self, enemy,tili,max_tili): #中招:天降巨箭 def zhongcombat(self, enemy,tili,max_tili): #中招:天降巨箭
self.tili=self.tili-7 self.tili=self.tili-7
if self.tili<0:
self.tili=0
info1 = self.name+"对"+enemy.name+"发起中招:天降巨箭," info1 = self.name+"对"+enemy.name+"发起中招:天降巨箭,"
info2 = "天降巨箭造成"+str(self.attack+30)+"点伤害," info2 = "天降巨箭造成"+str(self.attack+30)+"点伤害,体力减少7,目前的体力为:"+str(self.tili)+","
enemy.hp=enemy.hp-(self.attack*2) enemy.hp=enemy.hp-(self.attack*2)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
...@@ -346,13 +352,27 @@ class Player(object): ...@@ -346,13 +352,27 @@ class Player(object):
def xiaocombat(self, enemy,tili,max_tili): #小招:连射 def xiaocombat(self, enemy,tili,max_tili): #小招:连射
ls=random.randint(1,5) ls=random.randint(0,9)
ls5=ls*5 lss=ls*3
self.tili=self.tili-4 self.tili=self.tili-4
info1 = self.name+"对"+enemy.name+"发起小招:连射," if self.tili<0:
info2 = "连射",ls,"箭,造成"+str(self.attack+ls5)+"点伤害," self.tili=0
info1 = self.name+"对"+enemy.name+"发起小招:连射,体力减少4,目前的体力为:"+str(self.tili)+","
info2 = "连射"+str(ls)+"箭,造成"+str(self.attack+lss)+"点伤害,"
if 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()
if ls==1: if ls==1:
enemy.hp=enemy.hp-(self.attack+ls5) enemy.hp=enemy.hp-(self.attack+lss)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3 info = info1+info2+info3
...@@ -363,7 +383,7 @@ class Player(object): ...@@ -363,7 +383,7 @@ class Player(object):
print(info) print(info)
exit() exit()
elif ls==2: elif ls==2:
enemy.hp=enemy.hp-(self.attack+ls5) enemy.hp=enemy.hp-(self.attack+lss)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3 info = info1+info2+info3
...@@ -374,7 +394,7 @@ class Player(object): ...@@ -374,7 +394,7 @@ class Player(object):
print(info) print(info)
exit() exit()
elif ls==3: elif ls==3:
enemy.hp=enemy.hp-(self.attack+ls5) enemy.hp=enemy.hp-(self.attack+lss)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3 info = info1+info2+info3
...@@ -385,7 +405,29 @@ class Player(object): ...@@ -385,7 +405,29 @@ class Player(object):
print(info) print(info)
exit() exit()
elif ls==4: elif ls==4:
enemy.hp=enemy.hp-(self.attack+ls5) 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 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 ls==6:
enemy.hp=enemy.hp-(self.attack+lss)
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3 info = info1+info2+info3
...@@ -395,8 +437,32 @@ class Player(object): ...@@ -395,8 +437,32 @@ class Player(object):
info = info1+info2+info3 info = info1+info2+info3
print(info) print(info)
exit() exit()
elif 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: else:
enemy.hp=enemy.hp-(self.attack+ls5) info3 = enemy.name+"阵亡,游戏结束"
info = info1+info2+info3
print(info)
exit()
elif 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()
else:
enemy.hp=enemy.hp-(self.attack+lss-2)
self.bd=self.bd+1
info2 = "连射"+str(ls)+"箭,造成"+str(self.attack+lss-2)+"点伤害,被动值增加1点,目前的被动值为:"+str(self.bd)+","
if enemy.hp > 0: if enemy.hp > 0:
info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量" info3 = enemy.name+"还剩下"+str(enemy.hp)+"血量"
info = info1+info2+info3 info = info1+info2+info3
...@@ -435,7 +501,7 @@ while True: ...@@ -435,7 +501,7 @@ while True:
if choice=="q": if choice=="q":
print("游戏结束") print("游戏结束")
break break
elif choice=="a": elif choice=="a" and p_tili>2:
houyi.cure(p_tili,p_max_tili) houyi.cure(p_tili,p_max_tili)
p_tili-=3 p_tili-=3
p_tili+=2 p_tili+=2
...@@ -446,19 +512,19 @@ while True: ...@@ -446,19 +512,19 @@ while True:
p_tili+=2 p_tili+=2
if p_tili>p_max_tili: if p_tili>p_max_tili:
p_tili=p_max_tili p_tili=p_max_tili
elif choice=="1": elif choice=="1" and p_tili>3:
houyi.xiaocombat(yase,p_tili,p_max_tili) houyi.xiaocombat(yase,p_tili,p_max_tili)
p_tili-=4 p_tili-=4
p_tili+=2 p_tili+=2
if p_tili>p_max_tili: if p_tili>p_max_tili:
p_tili=p_max_tili p_tili=p_max_tili
elif choice=="2": elif choice=="2" and p_tili>6:
houyi.zhongcombat(yase,p_tili,p_max_tili) houyi.zhongcombat(yase,p_tili,p_max_tili)
p_tili-=7 p_tili-=7
p_tili+=2 p_tili+=2
if p_tili>p_max_tili: if p_tili>p_max_tili:
p_tili=p_max_tili p_tili=p_max_tili
elif choice=="3": elif choice=="3" and p_tili>9:
houyi.dacombat(yase,p_tili,p_max_tili) houyi.dacombat(yase,p_tili,p_max_tili)
p_tili-=10 p_tili-=10
p_tili+=2 p_tili+=2
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment