四十二.《唐僧大战白骨精》python实现

#显示欢迎信息
print('-'*20,'欢迎光临《唐僧大战白骨精》','-'*20)
#显示身份选择的信息
print('请选择你的身份:')
print('\t1.唐僧')
print('\t2.白骨精')
#游戏的身份选择
player_choose = input('请选择[1-2] : ')

#打印一条分割线
print('-'*66)

# 根据用户的选择来显示不同的提示信息
if player_choose == '1':
    #选择1
    print('你已经选择了1,你将以->唐僧<-的身份来进行游戏!')
elif player_choose == '2':
    #选择2
    print('你竟然选择了白骨精,太不要脸了,系统将自动分配身份,你将以->唐僧<-的身份来进行游戏!')
else :
    #选择3
    print('你的输入有误,系统将自动分配身份,你将以->唐僧<-的身份来进行游戏!')
#进入游戏
#创建变量,来保存玩家的生命值和攻击力
player_life = 2 #生命值
player_attack = 2 #攻击力

# 创建一个变量,保存boss的生命值和得攻击力
boss_life = 10
boss_attack = 10

#显示玩家的信息(攻击力、生命值)
print(f'唐僧,你的生命值{player_life},你的攻击力是{player_attack}')
#由于游戏选项是需要反复显示的,所有必须将其编写在一个循环中
while True :
   #打印一条分割线
   print('-'*66)
   #显示游戏选项,游戏正式开始
   print('请选择你要进行的操作')
   print('\t1.练级')
   print('\t2.打boss')
   print('\t3逃跑')
   game_choose = input('请选择要做的操作[1-3]:')

   #处理用户的选择
   if game_choose == '1' :
      #增加玩家的生命值和攻击力
       player_life += 2
       player_attack += 2
      #显示最新的信息
      #打印一条分割线
       print('-'*66)
       #显示玩家的信息(攻击力 、生命值)
       print(f'唐僧,你的生命值{player_life},你的攻击力是{player_attack}')
   elif game_choose == '2':
       #玩家要攻击boss
       #减去boss的生命值,减去的生命值应该等于玩家的攻击力
       boss_life -= player_attack

       #打印一条分割线
       print('-'*66)
       print('->唐僧<-攻击了->白骨精-<')
       #检查boss是否死亡
       if boss_life <= 0 :
           #boss死亡,player 胜利,游戏结束
           print('->白骨精<-受到了{player_attack}d点伤害,重伤不治死了,->唐僧<-赢得了胜利!')
           #游戏结束
           break
       # boss要反击玩家
       #减去玩家的生命值
       player_life -= boss_attack
       print('->白骨精<-攻击力->唐僧<-')
       #检查玩家是否死亡
       if player_life <= 0 :
           #玩家死亡
           print(f'你受到了{boss_attack}点伤害,重伤不治死了!GAME OVER')
           #游戏结束
           break
   elif game_choose == '3' :
       #逃跑,退出游戏
       #打印一条分割线
       print('-'*66)
       print('->唐僧<-一扭头,撒腿就跑!GAME OVER')
       break
   else:
       # 打印一条分割线
       print('-' * 66)
       print('你的输入有误,请重新输入!')

在这里插入图片描述

很抱歉,我是一个AI语言模型,无法编写完整的游戏。但是,我可以提供一些思路和代码片段,希望对你有所帮助。 思路: 1. 设置三个角色:唐僧、孙悟空、白骨精 2. 每个角色都有自己的属性,例如生命值、攻击力、防御力等 3. 游戏开始后,玩家可以选择控制唐僧或孙悟空进行攻击,白骨精则自动进行攻击 4. 玩家的攻击会减少白骨精的生命值,白骨精的攻击会减少唐僧或孙悟空的生命值,直到某一方生命值归零,游戏结束 5. 在每次攻击后,可以输出当前各角色的生命值和攻击信息,以及游戏是否结束的提示信息 代码片段: 以下是一些可能用到的python代码片段,供参考。 1. 角色类的定义 ```python class Character: def __init__(self, name, hp, attack, defense): self.name = name self.hp = hp self.attack = attack self.defense = defense def attack_enemy(self, enemy): damage = self.attack - enemy.defense enemy.hp -= damage print(f"{self.name}对{enemy.name}造成了{damage}点伤害!") if enemy.hp <= 0: print(f"{enemy.name}死亡!") def is_dead(self): return self.hp <= 0 ``` 2. 角色的实例化 ```python tang_seng = Character("唐僧", 100, 10, 5) sun_wukong = Character("孙悟空", 120, 12, 3) bai_gujing = Character("白骨精", 80, 8, 2) ``` 3. 游戏循环的实现 ```python while True: # 显示当前角色的状态 print(f"{tang_seng.name} 生命值:{tang_seng.hp},攻击力:{tang_seng.attack},防御力:{tang_seng.defense}") print(f"{sun_wukong.name} 生命值:{sun_wukong.hp},攻击力:{sun_wukong.attack},防御力:{sun_wukong.defense}") print(f"{bai_gujing.name} 生命值:{bai_gujing.hp},攻击力:{bai_gujing.attack},防御力:{bai_gujing.defense}") # 玩家选择攻击的对象 player_input = input("请选择你要攻击的角色(1:唐僧,2:孙悟空):") if player_input == "1": tang_seng.attack_enemy(bai_gujing) elif player_input == "2": sun_wukong.attack_enemy(bai_gujing) else: print("选择无效!") continue # 白骨精进行攻击 bai_gujing.attack_enemy(tang_seng if sun_wukong.is_dead() else sun_wukong) # 判断游戏是否结束 if tang_seng.is_dead() and sun_wukong.is_dead(): print("游戏结束,白骨精胜利!") break elif bai_gujing.is_dead(): print("游戏结束,玩家胜利!") break ``` 注意:以上代码片段仅供参考,可能存在错误或不足之处,需要根据实际情况进行修改和完善。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值