python代码游戏反恐精英和报告_python CS游戏3--人物属性实时更新

#coding=utf-8

'''

本实例主要目的是,实时将人物属性保存下来,具体方法是保存到字典中,将姓名设置为key,将余下的参数设置为列表,将整个列表当成values,通过name查询列表中的人物各属性,第二个,增加了递归的调用,修改了上期杀人的时候输入不存在的人物时候报错的问题,

'''

import random

import time

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):

flag=1

role_flag=1

def __init__(self,name):

self.money=10000

self.value=100

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:

list_shuxin=[]

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))

list_shuxin.append(role)

list_shuxin.append(self.value)

list_name.append(weapen)

dir_name[name]=list_name

print("系统正在随机产生角色,共五组,第%s组角色正在产生"%cs.role_flag)

time.sleep(1)

print("第%s组角色创建成功,姓名:%s,角色:%s,生命值:%s,武器:%s"%(cs.role_flag,name,role,self.value,weapen))

dir_name[name]=role

cs.role_flag +=1

print("五组系统角色产生成功,可以开始游戏了")

def qian(self,weapen):

a=int(dir_weapen[weapen])

money=self.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("请输入想杀的角色姓名》")

if name1 not in dir_name.keys():

print("角色不存在")

continue

role_xitong=dir_name[name1][0]

role_wanjia=dir_name[name][0]

if role_xitong=="p" and role_wanjia=="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()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值