CS游戏2--三次杀人机会,警察不能杀人

Posted 琦琦爸爸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CS游戏2--三次杀人机会,警察不能杀人相关的知识,希望对你有一定的参考价值。

#coding=utf-8

import random
import time

‘‘‘

本文章主要目主要有三个,1,随机增加5个系统人物,所有的都是随机产生的,2,人物角色如果是警察,则不能杀死警察,3,有三次机会杀死敌方

涉及的知识点有,随机数的产生,字典的存储和遍历

‘‘‘

list_kill=[0,1,1,1]
list_name=range(10)
dir_weapen={"AK47":2000,"匕首":500,"小手枪":1000}
dir_role=["p","k"]
dir_name={}
class cs(object):
  money=10000
  value=100
  flag=1
  role_flag=1

  def __init__(self,name):
    self.name=name
    role=random.choice(dir_role)
    weapen=random.choice(dir_weapen.keys())
    print("初始化角色完成:姓名:%s,角色:%s,生命值:%s.武器:%s"%(self.name, role,self.value,weapen))
    dir_name[name]=role
    while cs.role_flag<6:
      name=str(random.choice(list_name))
      role=random.choice(dir_role)
      weapen=random.choice(dir_weapen.keys())
      for x in dir_name.keys():
        if name==x:
          name=random.choice(range(10,10000))
          print("系统正在随机产生角色,共五组,第%s组角色正在产生"%cs.role_flag)
          time.sleep(1)
          print("第%s组角色创建成功,姓名:%s,角色:%s,生命值:%s,武器:%s"%(cs.role_flag,name,role,cs.value,weapen))
          dir_name[name]=role
          cs.role_flag +=1
      print("五组系统角色产生成功,可以开始游戏了")
def qian(self,weapen):
  a=int(dir_weapen[weapen])
  money=cs.money-a
  return money,a
def buy_weapen(self,weapen):
  money1,b=self.qian(weapen)
  if money1<0:
    print("钱不够,赚够了钱再来买 ")
    return False
  else:
    print("%s买了%s消费了%s还剩余%s"%(self.name,weapen,b,money1))
    cs.money=money1
    return weapen

def kill(self):
  while cs.flag<4:
    name=self.name
    name1=raw_input("请输入想杀的角色姓名》")
    #print(dir_name)
    if dir_name[name]=="p" and dir_name[name1]=="p":
      print("你是警察,不能杀警察")
    else:
      print("你有三次机会杀死对方")
      a=random.choice(list_kill)
      if a==0:

        print("恭喜你%s,第%s次出手你就打中了%s,%s被你打死了"%(name,cs.flag,name1,name1))
        break
      else:
        print("没有打中,继续射击")
        cs.flag +=1
      #print(cs.flag)
  print("游戏结束")

 

name=raw_input("请输入需要创建的角色名称: ")
t1=cs(name)
t1.buy_weapen("AK47")
t1.kill()

 

 

执行结果如下:

请输入需要创建的角色名称: 陈忠宝
初始化角色完成:姓名:陈忠宝,角色:p,生命值:100.武器:小手枪
系统正在随机产生角色,共五组,第1组角色正在产生
第1组角色创建成功,姓名:6,角色:k,生命值:100,武器:小手枪
系统正在随机产生角色,共五组,第2组角色正在产生
第2组角色创建成功,姓名:5,角色:k,生命值:100,武器:AK47
系统正在随机产生角色,共五组,第3组角色正在产生
第3组角色创建成功,姓名:0,角色:p,生命值:100,武器:小手枪
系统正在随机产生角色,共五组,第4组角色正在产生
第4组角色创建成功,姓名:8,角色:p,生命值:100,武器:匕首
系统正在随机产生角色,共五组,第5组角色正在产生
第5组角色创建成功,姓名:9125,角色:p,生命值:100,武器:AK47
五组系统角色产生成功,可以开始游戏了
陈忠宝买了AK47消费了2000还剩余8000
请输入想杀的角色姓名》0
你是警察,不能杀警察
请输入想杀的角色姓名》5
你有三次机会杀死对方
没有打中,继续射击
请输入想杀的角色姓名》5
你有三次机会杀死对方
恭喜你陈忠宝,第2次出手你就打中了5,5被你打死了
游戏结束

以上是关于CS游戏2--三次杀人机会,警察不能杀人的主要内容,如果未能解决你的问题,请参考以下文章

杀人游戏

[中山市选]杀人游戏 Tarjan+概率

bzoj2438 杀人游戏 Tarjan强联通

杀人游戏[中山市选2011]

BZOJ2438[中山市选2011]杀人游戏 Tarjan

[中山市选2011]杀人游戏