编程语言
首页 > 编程语言> > python实现简单的对战小游戏(王者荣耀简化版)

python实现简单的对战小游戏(王者荣耀简化版)

作者:互联网

  1 ''
  2 游戏
  3 1.选择人物
  4 2.购买武器   金币
  5 3.打仗   赢   得金币
  6 4.选择删除武器
  7 5.查看游戏
  8 6.退出游戏
  9 '''
 10 import random
 11 print('*'*40)
 12 print('\t欢迎来到王者荣耀!')
 13 print('*'*40)
 14 
 15 
 16 role = input('请选择游戏人物(1.鲁班 2.后羿 3.李白 4.孙尚香 5.貂蝉 6.诸葛亮):')
 17 
 18 coins = 1000
 19 
 20 #保存自己的武器
 21 weapon_list = []
 22 print('欢迎!%s来到王者峡谷!当前金币:%d'%(role,coins))
 23 
 24 while True:
 25     choice = int(input('请选择:\n 1.购买武器\n 2.打仗\n 3.删除武器\n 4.查看武器\n 5.退出游戏\n'))
 26     if choice == 1:
 27         #购买武器
 28         print('欢迎进入我的商店!')
 29         weapons = [['屠龙刀',500],['樱花枪',400],['98k枪',1000],['手榴弹',800],['碧血剑',700],['羽扇',800]]
 30         for weapon in weapons:
 31             print(weapon[0],weapon[1],sep ='   ')
 32         #提示输入要购买的武器
 33         weaponname = input('请输入要购买的武器名称:')
 34         #1.原来有没有买过这个武器。2.输入的武器名是否在武器库当中
 35         if weaponname not in weapon_list:
 36             for weapon in weapons:
 37                 if weaponname in weapon:
 38                     #购买武器
 39                     if coins >= weapon[1]:
 40                         coins -= weapon[1]
 41                         weapon_list.append(weapon[0])   #添加到自己武器库里里面
 42                         print('%s购买%s成功!'%(role,weaponname))
 43                         print('%s当前武器:'%(role),weapon_list)
 44                         break
 45                     else:
 46                         print('金币不足,赶快去战斗挣金币吧!')
 47                         break
 48             else:
 49                 print('输入武器名称错误!') 
 50         else:
 51             print('已经拥有此武器!!!') 
 52     elif choice ==2:
 53         #打仗   假设有多个武器
 54         print('进入战场...')
 55         if len(weapon_list) > 0:
 56             #选择武器
 57             print('{}拥有的武器如下:'.format(role))
 58             for weapon in weapon_list:
 59                 print(weapon)
 60             while True:
 61                 weaponname = input('请选择:')
 62                 #
 63                 if weaponname in weapon_list:
 64                     #进入战争状态   默认和张飞对战
 65                     ran1 = random.randint(1,20)   #张飞
 66                     ran2 = random.randint(1,20)   #role
 67 
 68                     if ran1 > ran2:
 69                         print('此局战争:张飞胜!!!')
 70                     elif ran1 < ran2:
 71                         print('此局战争:%s胜'%(role))
 72                         coins += 200
 73                         print('目前金币:',coins)
 74                     else:
 75                         print('此局平局,可以再次对战')
 76 
 77                     break
 78                 else:
 79                     print('选择的武器不存在,请重新选择:')
 80         else:
 81             print('赶快使用金币购买金币去吧!!!')    
 82     elif choice == 3:
 83         #删除武器
 84         if len(weapon_list) > 0:
 85             print('武器太多,背包空间不够,请丢弃几个!!!')
 86             print('%s拥有的武器如下:'%(role))
 87             for weapon in weapon_list:
 88                 print(weapon)
 89             while True:
 90                 weaponname = input('请选择要删除的武器名称')
 91                 if weaponname in weapon_list:
 92                     #删除武器
 93                     weapon_list.remove(weaponname)
 94                     #归还金币
 95                     #print(weapons)
 96                     for weapon in weapons:
 97                         if weaponname in weapon:
 98                             coins += weapon[1]
 99                             break
100                     break
101                 else:
102                     print('武器名称输入有误!!!')
103         else:
104             print('背包内没有武器,快去购买吧!!!')
105     elif choice ==4:
106         #遍历拥有的武器
107         print('%s拥有的武器如下:'%(role))
108         for weapon in weapon_list:
109             print(weapon)
110         #查看金币
111         print('总金币:',coins)
112     elif choice ==5:
113         answer = input('确定要离开王者荣耀游戏嘛?(y/n):')
114         if answer == 'y':
115             break
116     else:
117         print('输入错误,请重新选择!')

 

标签:python,简化版,weapon,list,else,武器,小游戏,print,weaponname
来源: https://www.cnblogs.com/ypha/p/14123718.html