阿里云Python学习实例

唐僧大战白骨精

# 唐僧大战白骨精:

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

# 打印分割线:
print('-' * 64)

if player_choose == '1':
    # 选择1
    print('你已经选择了1,你将以->唐僧<-的身份来进行游戏')
elif player_choose == '2':
    # 选择2
    print('你竟然选择了白骨精,系统将自动分配身份:你将以->唐僧<-的身份来进行游戏')
else:
    # 选择3
    print('你输入了错误的参数,系统将自动分配身份:你将以->唐僧<-的身份来进行游戏')

# 进入游戏
# 创建变量 来保存玩家的生命值和攻击里
player_life = 5.0  # 生命值
player_attack = 3.0  # 攻击力
# 创建 boss的生命值和攻击力
boss_life = 100.0
boss_attack = 5.0
# 打印分割线:
print('-' * 64)
print(f"唐僧,你的生命值是:{player_life},你的攻击力是:{player_attack}")
# 打印分割线:
print('-' * 64)

# 定义boss或玩家死亡的die
# 由于游戏的选项是需要反复显示的,所以必须将其编写到一个循环里
die = True
while die:
    print('您可以进行以下操作:')
    print('\t1.练级')
    print('\t2.打boss')
    print('\t3.逃跑')
    game_choose = input('请选择要做的操作[1-3]:\n')
    # 打印分割线:
    print('-' * 64)
    if game_choose == '1':
        # 选择1
        print('你已经选择了1,你将进行练级,练级会使你增长生命值和攻击力')
        player_life += 5.0
        player_attack += 3.0
        print(f'恭喜你升级了, 你现在的生命值是:{player_life}, 你现在的攻击力是: {player_attack}')
        # 打印分割线:
        print('-' * 64)
        continue
    elif game_choose == '2':

        # 选择2 打boss
        # 玩家攻击boss
        # boss反击玩家
        # 减去的生命值,应该等于玩家的攻击力

        print('你已经选择了2,你将开始大战白骨精')
        while die:
            print('唐僧攻击了白骨精')
            boss_life -= (player_attack * 0.4)
            real = player_attack * 0.4
            # 控制
            print('因为白骨精是boss,减免40%的伤害,唐僧打掉了白骨精', format(real, '.1f'), '点血')
            # 打印分割线:
            print('-' * 64)
            if boss_life <= 0:
                print(f'白骨精受到了{player_attack}点伤害,重伤不治狗带了')
                print('恭喜您击杀了boss!!!游戏结束了')
                # 直接击杀,退出游戏
                die = False
                break
            print('白骨精攻击了唐僧')
            player_life -= boss_attack
            print(f'白骨精打掉了唐僧{boss_attack}点血')
            # 打印分割线:
            print('-' * 64)
            if player_life <= 0:
                print('您被打败了,游戏结束了')
                die = False
                break

    elif game_choose == '3':
        # 选择3
        print('唐僧一听说要打白骨精,吓得扭头就走,游戏结束')
        break
    else:
        print('您输入了错误的数字,请重新输入')
input("按任意键退出")
阅读剩余
THE END