from random import*
from time import*
#sj时间,第几天
#liang粮食数
#sc每日获得粮食数
#linshu人数
#zyjs职业对应是否解锁
#jssj石器时代是否解锁
#bili职业对应人数
#x每日出生人数
#y每日职业变为猎人数
#yi疫情级数
#i疫情情况
#jian角色对应生病数
#yqxs疫情概率系数
##jd文明进程
#shou播种粮食列表5天
#shl当日收获粮食
#ngjia农耕增加
#ng农耕技术
print("本游戏由泡长工作室出品")
zhiye=["无业者","猎灵","石匠","催芽师"]
zyjs=[1,1,0,0]
hei=randint(10,20)
bili=[hei,int(hei*7/3),0,0]
linshu=bili[0]+bili[1]
jssj=0
jd=0
liang=randint(5000,8000)########################不可篡改
jian=[0,0,0,0]
yqxs=1
huo=1
ill=[0,0,0,0]
x=0
y=0
ng=0
ngjia=0
l=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
print("在模糊的记忆中,你拥有了生命。仿佛是突然有了视觉,但又不显得突然。")
print("生命!")
print("在无意间,一滴晶莹的液体滴入了你的嘴里")
player=input("输入你的名字")
print(player,"你出生在一个部落里,你们以“灵”自称。")
print("你们的部落没有贫富差别(当然你本不应该知道这个词),灵们都过着共同的生活。")
print("你的父亲母亲都是“猎灵”,这是一种职业,是灵们唯一的职业")
print("猎灵是你们部落的生产力,他们打猎、采果为群落补充食物(每天获得0-3粮食)")
print("当然,部落中还有像你一样的无业者")
print("现在部落有"+str(linshu)+"灵,其中有无业者"+str(bili[0])+"灵,猎灵"+str(bili[1])+"灵")
print('你们部落现在有'+str(liang)+"粮食,每人每天需要1粮食")
print("部落会出现“饥荒”和“疫”,前者是粮食不足,为了保证部落生存,出现这种情况只能优先让无业者被饿死。后者是灵“中邪”而身体不适,有时邪气会扩散。此外,得到的粮食还可能在20天后发霉")
import os
while huo==1:
os.system("start cmd")
sj=0
while huo==1:
ill=[0,0]
lll=0
input()
print("")
sj+=1
if bili[0]>=4:
y=randint(0,4)
else:
y=0
if linshu>=2:
x=randint(y,6)
else:
x=0
bili[1]+=y
linshu+=x
bili[0]+=x-y
print("第"+str(sj)+"天")
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵")
jian=[0,0,0]
yi=randint(yqxs,1000)
if linshu>=2 and bili[0]>=2 and bili[1]>=2 :
if (yi<=750):
yi=0
if yqxs>125:
print("疫情得到好转")
yqxs=1
elif (yi>=751) and(yi<=825):
yi=1
yqxs=125
elif (yi>=826)and(yi<=900):
yi=2
yqxs=300
elif (yi>=901)and(yi<=950):
yi=3
yqxs=675
elif (yi>=951)and(yi<=975):
yi=4
yqxs=775
elif (yi>=976)and(yi<=989):
yi=5
yqxs=825
elif(yi>=990)and(yi<=999):
yi=6
yqxs=875
else:
yi=7
yqxs=950##七级疫情
if yi==0:
print("今日无“疫情”出现")
if yi==1:
i=randint(1,linshu)
if i<=bili[0]:
print("今日一名无业者中魔,处于生病状态")
jian[0]=1
elif i<=bili[0]+bili[1]:
print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=1
if yi==2:
i=randint(1,linshu*linshu)
if i<=bili[0]*bili[0]:
print("今日两名无业者中魔,处于生病状态")
jian[0]=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
else:
print("今日一名无业者中魔,一名猎灵中魔,处于生病状态暂时无法捕猎")
jian[1]=1
jian[0]=1
if yi==3:
i=randint(1,linshu)
linshu-=1
if i<=bili[0]:
print("今日出现严重“疫”,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重“疫”,一名猎灵死亡")
bili[1]-=1
if yi==4:
i=randint(1,linshu)
linshu-=1
if i<=bili[0]:
print("今日出现严重“疫”,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重“疫”,一名猎灵死亡")
bili[1]-=1
i=randint(1,linshu*linshu)
if i<=bili[0]*bili[0]:
print("此外还有两名无业者中魔,处于生病状态")
jian[0]=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
else:
print("此外还有一名无业者中魔,一名猎灵中魔,处于生病状态暂时无法捕猎")
jian[1]=1
jian[0]=1
if yi==5:
linshu-=2
i=randint(1,linshu*linshu)
if i<=bili[0]*bili[0]:
print("今日出现严重疫情,两名无业者死亡")
bili[0]-=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,两名猎灵死亡")
bili[1]-=2
else:
print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
bili[1]-=1
bili[0]-=1
if yi==6 :
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
linshu-=ill[1]+ill[0]
ill[0]=randint(0,int((bili[0]+1)/3))
ill[1]=randint(0,int((bili[1]+1)/3))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
jian[1]=ill[1]
jian[0]=ill[0]
if yi==7:
ill[0]=randint(0,int(bili[0]))
ill[1]=randint(0,int(bili[1]))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
linshu-=ill[1]+ill[0]
if linshu>=1:
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
jian[1]=ill[1]
jian[0]=ill[0]
else:
if yi>=900:
ill[0]=randint(0,int(bili[0]))
ill[1]=randint(0,int(bili[1]))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
linshu-=ill[1]+ill[0]
if linshu>=1:
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,处于生病状态暂时无法捕猎")
jian[1]=ill[1]
jian[0]=ill[0]
liang-=linshu
sc=randint(0,3*(bili[1]-jian[1]))
liang+=sc#
l[20]=sc-linshu
for i in range(0,20):
l[i]=l[i+1]
if(l[0]>0):
lll=1
if(liang<0):
l[0]=int(0.1*l[0])+1
elif(l[0]>0.5*liang):
l[0]=randint(int(0.2*liang),int(0.5*liang))+1
qwertyu=randint(1,l[0])
liang-=qwertyu
print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
if(lll):
print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
else:
print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
if liang<0:
linshu-=0-liang
print("大饥荒!")
if (bili[0]+liang>=0):
bili[0]+=liang
print("有"+str(0-liang)+"个无业者被饿死")
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
elif bili[0]+bili[1]+liang>0:
print("有"+str(bili[0])+"个无业者被饿死,"+str(0-bili[0]-liang)+"个猎灵被饿死")
bili[1]+=bili[0]+liang
bili[0]-=bili[0]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵")
else:
print("现有0灵,0个无业者,0个猎灵")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
huo=0
break
liang=0
jssj=randint(1,2)##石器时代
if jssj==1 and bili[1]>=1:
print("一位猎灵制造出一件石器,发现对捕猎有巨大帮助")
print("灵进入石器时代!")
print("这个猎灵变为石匠")
print("石匠:专门为猎灵制造石器,每一个石匠可以给两个猎灵提供武器,增加其收入。一个猎灵只能用一个石器。(所以石匠数量最好小于猎人的一半)")
zyjs[2]=1
bili[2]=1
bili[1]-=1
sj+=1
jd+=1
break
while huo==1 and jssj==1 and jd==1:
input()
print("")
print("第"+str(sj)+"天")
ill=[0,0,0]
lll=0
sj+=1
if bili[0]>=4:
y=randint(0,4)
else:
y=0
if linshu>=2:
x=randint(y,6)
else:
x=0
bili[1]+=y
bili[0]+=x-y
if bili[2]<=int(bili[1]/2):
z=randint(0,(int(bili[1]/2)-bili[2]))
bili[1]-=z
bili[2]+=z
else:
if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
bili[1]+=z
bili[2]-=z
z=0-z
else:
z=randint(0,bili[2])
bili[1]+=z
bili[2]-=z
z=0-z
linshu+=x
if z<0:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵")
else:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠")
jian=[0,0,0]
yi=randint(yqxs,1000)
if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2:
ill=[0,0,0]
if (yi<=750):
yi=0
if yqxs>125:
print("疫情得到好转")
yqxs=1
elif (yi>=751) and(yi<=825):
yi=1
yqxs=125
elif (yi>=826)and(yi<=900):
yi=2
yqxs=300
elif (yi>=901)and(yi<=950):
yi=3
yqxs=675
elif (yi>=951)and(yi<=975):
yi=4
yqxs=775
elif (yi>=976)and(yi<=989):
yi=5
yqxs=825
elif(yi>=990)and(yi<=999):
yi=6
yqxs=875
else:
yi=7
yqxs=950##七级疫情
if yi==0:
print("今日无“疫情”出现")
elif yi==1:
i=randint(1,linshu)
if i<=bili[0]:
print("今日一名无业者中魔,处于生病状态")
jian[0]=1
elif i<=bili[0]+bili[1]:
print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=1
else:
print("今日一名石匠中魔,处于生病状态")
jian[2]=1
elif yi==2:
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日两名无业者中魔,处于生病状态")
jian[0]=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名石匠中魔,处于生病状态")
jian[2]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
print("今日一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
else:
print("今日一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif yi==3:#
i=randint(1,linshu)
linshu-=1
if i<=bili[0]:
print("今日出现严重“疫”,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重“疫”,一名猎灵死亡")
bili[1]-=1
else:
print("今日出现严重“疫”,一名石匠死亡")
bili[2]-=1
elif yi==4:
i=randint(1,linshu)
linshu-=1
j=randint(1,linshu*linshu)
if i<=bili[0]:
print("今日出现严重“疫”,一名无业者死亡")
bili[0]-=1
elif i<=(bili[1]+bili[0]):
print("今日出现严重“疫”,一名猎灵死亡")
bili[1]-=1
else:
print("今日出现严重“疫”,一名石匠死亡")
bili[2]-=1
if j<=bili[0]*bili[0]:
print("此外还有两名无业者中魔,处于生病状态")
jian[0]=2
elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名石匠中魔,处于生病状态")
jian[2]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
print("此外还有一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("此外还有一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
else:
print("此外还有一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif yi==5:
linshu-=2
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日出现严重疫情,两名无业者死亡")
bili[0]-=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,两名猎灵死亡")
bili[1]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,两名石匠死亡")
bili[2]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]:
print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
bili[1]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
bili[2]-=1
bili[0]-=1
else:
print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
bili[2]-=1
bili[1]-=1
elif yi==6:
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
ill[2]=randint(0,int((bili[2]+1)/2))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
bili[2]-=ill[2]
linshu-=ill[1]+ill[0]+ill[2]
ill[0]=randint(0,int((bili[0]+1)/3))
ill[1]=randint(0,int((bili[1]+1)/3))
ill[2]=randint(0,int((bili[2]+1)/3))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
jian[1]=ill[1]
jian[0]=ill[0]
jian[2]=ill[2]
elif yi==7:
ill[0]=randint(0,int(bili[0]))
ill[1]=randint(0,int(bili[1]))
ill[2]=randint(0,int(bili[2]))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡"+str(ill[2])+"名石匠死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
bili[2]-=ill[2]
linshu-=ill[1]+ill[0]+ill[2]
if linshu>=1:
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
ill[2]=randint(0,int((bili[2]+1)/2))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
jian[1]=ill[1]
jian[0]=ill[0]
jian[2]=ill[2]
else:
if yi>=900:
ill[0]=randint(0,int(bili[0]))
ill[1]=randint(0,int(bili[1]))
ill[2]=randint(0,int(bili[2]))
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡"+str(ill[2])+"名石匠死亡")
bili[1]-=ill[1]
bili[0]-=ill[0]
bili[2]-=ill[2]
linshu-=ill[1]+ill[0]+ill[2]
if linshu>=1:
ill[0]=randint(0,int((bili[0]+1)/2))
ill[1]=randint(0,int((bili[1]+1)/2))
ill[2]=randint(0,int((bili[2]+1)/2))
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔")
jian[1]=ill[1]
jian[0]=ill[0]
jian[2]=ill[2]
liang-=linshu
if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
else:
sc=randint(0,5*(bili[1]-jian[1]))
liang+=sc#
l[20]=sc-linshu
for i in range(0,20):
l[i]=l[i+1]
if(l[0]>0):
lll=1
if(liang<0):
l[0]=int(0.1*l[0])+1
elif(l[0]>0.5*liang):
l[0]=randint(int(0.2*liang),int(0.5*liang))+1
qwertyu=randint(1,l[0])
liang-=qwertyu
print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠")
if(lll):
print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
else:
print("今日获得"+str(sc)+"粮食,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
if liang<0:
liang=-liang
linshu-=liang
print("大饥荒!")
hun=[0,0,0]
if (bili[0]>=liang):
bili[0]-=liang
print("有"+str(liang)+"个无业者被饿死")
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠")
liang=0
elif linshu>0:
liang-=bili[0]
hun[0]=bili[0]
if bili[2]>int(bili[1]/2):
hun[2]+=bili[2]-int(bili[1]/2)
liang-=hun[2]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
bili[2]-=hun[2]
bili[1]-=hun[1]
bili[0]-=hun[0]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠")
else:
hun[1]-=bili[2]-int(bili[1]/2)
liang-=hun[1]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
bili[2]-=hun[2]
bili[1]-=hun[1]
bili[0]-=hun[0]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠")
liang=0
else:
print("现有0灵,0个无业者,0个猎灵,0个石匠")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
bili[2]=0
liang=0
huo=0
break
jssj=randint(1,1)##########判断进入农耕
if jssj==1 and bili[0]>=1:
print("在灵的日常生活中,灵发现采集的果实仍在地上过一段时间就会“发芽”,发芽后又会长出一些果实")
print("经过尝试,一只灵已经能够自由“催芽”,这样就可以简单获得持续的粮食而不用寻找采集或者捕猎")
print("灵进入农耕时代!")
print("这个发现者原本是无业者,现在变为催芽师")
print("催芽师:每天播种花1粮食,5天后收获0-10粮食(提示:数量会随季节变化)")########补充
print("偷偷科普一些东西(反正现在没有帮助):")
print("时间mod100计算季节,0~24春,25~49夏,50~74秋,75~99冬")
zyjs[3]=1
bili[3]=1
bili[0]-=1
jd+=1
break
shou=[0,0,0,0,0]
shl=0
while huo==1 and jssj==1 and jd==2:
if linshu!=bili[0]+bili[1]+bili[2]+bili[3]:
print("代码出BUG,灵灭绝了")
huo=0
break
input()
print("")
ill=[0,0,0]
lll=0
print("第"+str(sj)+"天")
sj+=1
if bili[0]>=4:
y=randint(0,4)
else:
y=0
if linshu>=2:
x=randint(y,6)
else:
x=0
bili[1]+=y
bili[0]+=x-y
if liang>=linshu:
w=randint(-int(bili[3]/5),int((bili[1]+1)/2))###猎给w个农
else:
w=randint(-int(bili[3]),0)###农给-w个猎
bili[1]-=w
bili[3]+=w
if bili[2]<=int(bili[1]/2):
z=randint(0,(int(bili[1]/2)-bili[2]))
bili[1]-=z
bili[2]+=z
else:
if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
bili[1]+=z
bili[2]-=z
z=0-z
else:
z=randint(0,bili[2])
bili[1]+=z
bili[2]-=z
z=0-z
linshu+=x
if w<0:
if z<0:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(-w)+"个催芽师变为猎灵")
else:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(-w)+"个催芽师变为猎灵")
else:
if z<0:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(w)+"个猎灵变为催芽师")
else:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(w)+"个猎灵变为催芽师")
jian=[0,0,0,0]
ill=[0,0,0,0]
yi=randint(yqxs,1000)
if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2 and bili[3]>=2:
ill=[0,0,0,0]
if (yi<=750):
yi=0
if yqxs>125:
print("疫情得到好转")
yqxs=1
elif (yi>=751) and(yi<=825):
yi=1
yqxs=125
elif (yi>=826)and(yi<=900):
yi=2
yqxs=300
elif (yi>=901)and(yi<=950):
yi=3
yqxs=675
elif (yi>=951)and(yi<=975):
yi=4
yqxs=775
elif (yi>=976)and(yi<=989):
yi=5
yqxs=825
elif(yi>=990)and(yi<=999):
yi=6
yqxs=875###原875
else:
yi=7
yqxs=950##原950
if yi==0:
print("今日无“疫情”出现")
elif yi==1:
i=randint(1,linshu)
if i<=bili[0]:
print("今日一名无业者中魔,处于生病状态")
jian[0]=1
elif i<=bili[0]+bili[1]:
print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日一名石匠中魔,处于生病状态")
jian[2]=1
else:
print("今日一名催芽师中魔,处于生病状态")
jian[3]=1
elif yi==2:##(a+b+c+d)^2=Σa^2+Σ2ab
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日两名无业者中魔,处于生病状态")
jian[0]=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名石匠中魔,处于生病状态")
jian[2]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("今日两名催芽师中魔,处于生病状态")
jian[2]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("今日一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("今日一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("今日一名无业者中魔,一名催芽师中魔")
jian[3]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("今日一名猎灵中魔,一名催芽师中魔")
jian[3]=1
jian[1]=1
else:
print("今日一名石匠中魔,一名催芽师中魔")
jian[3]=1
jian[2]=1
elif yi==3:#
i=randint(1,linshu)
linshu-=1
if i<=bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=1
else:
print("今日出现严重疫情,一名催芽师死亡")
bili[3]-=1
elif yi==4:
i=randint(1,linshu)
linshu-=1
j=randint(1,linshu*linshu)
if i<=bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=1
else:
print("今日出现严重疫情,一名催芽师死亡")
bili[3]-=1
if j<=bili[0]*bili[0]:
print("此外还有两名无业者中魔,处于生病状态")
jian[0]=2
elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名石匠中魔,处于生病状态")
jian[2]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("此外还有两名催芽师中魔,处于生病状态")
jian[2]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("此外还有一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("此外还有一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("此外还有一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("此外还有一名无业者中魔,一名催芽师中魔")
jian[3]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("此外还有一名猎灵中魔,一名催芽师中魔")
jian[3]=1
jian[1]=1
else:
print("此外还有一名石匠中魔,一名催芽师中魔")
jian[3]=1
jian[2]=1
elif yi==5:
linshu-=2
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("今日出现严重疫情,一名催芽师死亡")
bili[2]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
bili[1]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
bili[2]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
bili[2]-=1
bili[1]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("今日出现严重疫情,一名无业者死亡,一名催芽师死亡")
bili[3]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("今日出现严重疫情,一名猎灵死亡,一名催芽师死亡")
bili[3]-=1
bili[1]-=1
else:
print("今日出现严重疫情,一名石匠死亡,一名催芽师死亡")
bili[3]-=1
bili[2]-=1
############################################OK
elif yi==6:
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/3))
jian[i]=ill[i]
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
elif yi==7:
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i])))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
jian[i]=ill[i]
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
else:
if yi>=900:
yqxs=500
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
jian[i]=ill[i]
if linshu==0:
print("现有0灵,0个无业者,0个猎灵")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
bili[2]=0
bili[3]=0
liang=0
huo=0
break
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
else:
print("今日无疫情出现")
if yqxs>125:
print("疫情得到好转")
yqxs=1
liang-=linshu
if sj%100<=24:
shl=randint(shou[4],shou[4]*4)
elif sj%100<=49:
shl=randint(0,shou[4]*3)
elif sj%100<=74:
shl=randint(shou[4]*5,shou[4]*10)
else:
shl=randint(0,shou[4]*2)
for i in [4,3,2,1]:
shou[i]=shou[i-1]
shou[0]=bili[3]-jian[3]
liang-=bili[3]-jian[3]
liang+=shl
if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
else:
sc=randint(0,5*(bili[1]-jian[1]))
liang+=sc#
sc+=shl
l[20]=sc-linshu
sc-=shl
for i in range(0,20):
l[i]=l[i+1]
if(l[0]>0):
lll=1
if(liang<0):
l[0]=int(0.1*l[0])+1
elif(l[0]>0.5*liang):
l[0]=randint(int(0.2*liang),int(0.5*liang))+1
qwertyu=randint(1,l[0])
liang-=qwertyu
print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
if(lll):
print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
else:
print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
if liang<0:
liang=-liang
linshu-=liang
print("大饥荒!")
hun=[0,0,0,0]
if (bili[0]>=liang):
bili[0]-=liang
print("有"+str(liang)+"个无业者被饿死")
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
liang=0##催芽师没编完
elif bili[0]+bili[3]>=liang:
liang-=bili[0]
bili[3]-=liang
print("有"+str(bili[0])+"个无业者被饿死,有"+str(liang)+"个催芽师被饿死")
bili[0]=0
liang=0
elif linshu>0:
liang-=bili[0]
hun[0]=bili[0]
liang-=bili[3]
hun[3]=bili[3]
if bili[2]>int(bili[1]/2):
hun[2]+=bili[2]-int(bili[1]/2)
liang-=hun[2]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
for i in [3,2,1,0]:
bili[i]-=hun[i]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
else:
hun[1]-=bili[2]-int(bili[1]/2)
liang-=hun[1]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
for i in [3,2,1,0]:
bili[i]-=hun[i]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
liang=0
else:
print("现有0灵,0个无业者,0个猎灵,0个石匠,0个催芽师")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
bili[3]=0
bili[2]=0
liang=0
huo=0
break
if bili[3]>0:
ngjia=randint(0,10)
ngjia=ngjia*ngjia
ngjia=100-ngjia
ng+=ngjia
print("今日掌握"+str(ngjia)+"农耕技术,现技术"+str(ng))
if ng>10000:
print("在催芽师日夜研究中,发现了许多种植规律,这使得他们耕种效率更高了")
print("灵还总结出来四季的变化,称为“春夏秋冬”")
print("灵开始编辑历法!")
print("催芽师更新:春秋收获粮食增加,且尽量避免在冬天耕种(不如捕猎)")
sleep(3)
jd+=1
break
while huo==1 and jd==3:
if linshu!=bili[0]+bili[1]+bili[2]+bili[3]:
print("代码出BUG,灵灭绝了")
huo=0
break
input()
print("")
ill=[0,0,0]
lll=0
print("第"+str(sj)+"天")
sj+=1
if bili[0]>=4:
y=randint(0,4)
else:
y=0
if linshu>=2:
x=randint(y,6)
else:
x=0
bili[1]+=y
bili[0]+=x-y
if liang>=linshu and (not(sj%100>75 and sj%100<100)):
w=randint(-int(bili[3]/5),int((bili[1]+1)/2))###猎给w个农
else:
w=randint(-int(bili[3]),0)###农给-w个猎
bili[1]-=w
bili[3]+=w
if bili[2]<=int(bili[1]/2):
z=randint(0,(int(bili[1]/2)-bili[2]))
bili[1]-=z
bili[2]+=z
else:
if bili[2]>=-1*(int(bili[1]/2)-bili[2]):
z=randint(0,(-1*(int(bili[1]/2)-bili[2])))
bili[1]+=z
bili[2]-=z
z=0-z
else:
z=randint(0,bili[2])
bili[1]+=z
bili[2]-=z
z=0-z
linshu+=x
if w<0:
if z<0:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(-w)+"个催芽师变为猎灵")
else:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(-w)+"个催芽师变为猎灵")
else:
if z<0:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(-1*z)+"个石匠变为猎灵,有"+str(w)+"个猎灵变为催芽师")
else:
print("今日出生"+str(x)+"人,有"+str(y)+"个无业者变为猎灵,有"+str(z)+"个猎灵变为石匠,有"+str(w)+"个猎灵变为催芽师")
jian=[0,0,0,0]
ill=[0,0,0,0]
yi=randint(yqxs,1000)
if linshu>=2 and bili[0]>=2 and bili[1]>=2 and bili[2]>=2 and bili[3]>=2:
ill=[0,0,0,0]
if (yi<=750):
yi=0
if yqxs>125:
print("疫情得到好转")
yqxs=1
elif (yi>=751) and(yi<=825):
yi=1
yqxs=125
elif (yi>=826)and(yi<=900):
yi=2
yqxs=300
elif (yi>=901)and(yi<=950):
yi=3
yqxs=675
elif (yi>=951)and(yi<=975):
yi=4
yqxs=775
elif (yi>=976)and(yi<=989):
yi=5
yqxs=825
elif(yi>=990)and(yi<=999):
yi=6
yqxs=875###原875
else:
yi=7
yqxs=950##原950
if yi==0:
print("今日无“疫情”出现")
elif yi==1:
i=randint(1,linshu)
if i<=bili[0]:
print("今日一名无业者中魔,处于生病状态")
jian[0]=1
elif i<=bili[0]+bili[1]:
print("今日一名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日一名石匠中魔,处于生病状态")
jian[2]=1
else:
print("今日一名催芽师中魔,处于生病状态")
jian[3]=1
elif yi==2:##(a+b+c+d)^2=Σa^2+Σ2ab
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日两名无业者中魔,处于生病状态")
jian[0]=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日两名石匠中魔,处于生病状态")
jian[2]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("今日两名催芽师中魔,处于生病状态")
jian[2]=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("今日一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("今日一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("今日一名无业者中魔,一名催芽师中魔")
jian[3]=1
jian[0]=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("今日一名猎灵中魔,一名催芽师中魔")
jian[3]=1
jian[1]=1
else:
print("今日一名石匠中魔,一名催芽师中魔")
jian[3]=1
jian[2]=1
elif yi==3:#
i=randint(1,linshu)
linshu-=1
if i<=bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=1
else:
print("今日出现严重疫情,一名催芽师死亡")
bili[3]-=1
elif yi==4:
i=randint(1,linshu)
linshu-=1
j=randint(1,linshu*linshu)
if i<=bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=1
elif i<=bili[0]+bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=1
elif i<=bili[0]+bili[1]+bili[2]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=1
else:
print("今日出现严重疫情,一名催芽师死亡")
bili[3]-=1
if j<=bili[0]*bili[0]:
print("此外还有两名无业者中魔,处于生病状态")
jian[0]=2
elif j<=bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名猎灵中魔,处于生病状态,暂时无法捕猎")
jian[1]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("此外还有两名石匠中魔,处于生病状态")
jian[2]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("此外还有两名催芽师中魔,处于生病状态")
jian[2]=2
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("此外还有一名无业者中魔,一名猎灵中魔")
jian[1]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("此外还有一名无业者中魔,一名石匠中魔")
jian[2]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("此外还有一名猎灵中魔,一名石匠中魔")
jian[2]=1
jian[1]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("此外还有一名无业者中魔,一名催芽师中魔")
jian[3]=1
jian[0]=1
elif j<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("此外还有一名猎灵中魔,一名催芽师中魔")
jian[3]=1
jian[1]=1
else:
print("此外还有一名石匠中魔,一名催芽师中魔")
jian[3]=1
jian[2]=1
elif yi==5:
linshu-=2
i=randint(1,(linshu)*(linshu))
if i<=bili[0]*bili[0]:
print("今日出现严重疫情,一名无业者死亡")
bili[0]-=2
elif i<=bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,一名猎灵死亡")
bili[1]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]:
print("今日出现严重疫情,一名石匠死亡")
bili[2]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]:
print("今日出现严重疫情,一名催芽师死亡")
bili[2]-=2
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]:
print("今日出现严重疫情,一名无业者死亡,一名猎灵死亡")
bili[1]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]:
print("今日出现严重疫情,一名无业者死亡,一名石匠死亡")
bili[2]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]:
print("今日出现严重疫情,一名猎灵死亡,一名石匠死亡")
bili[2]-=1
bili[1]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]:
print("今日出现严重疫情,一名无业者死亡,一名催芽师死亡")
bili[3]-=1
bili[0]-=1
elif i<=bili[2]*bili[2]+bili[0]*bili[0]+bili[1]*bili[1]+bili[3]*bili[3]+2*bili[1]*bili[0]+2*bili[0]*bili[2]+2*bili[1]*bili[2]+2*bili[0]*bili[3]+2*bili[1]*bili[3]:
print("今日出现严重疫情,一名猎灵死亡,一名催芽师死亡")
bili[3]-=1
bili[1]-=1
else:
print("今日出现严重疫情,一名石匠死亡,一名催芽师死亡")
bili[3]-=1
bili[2]-=1
elif yi==6:
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/3))
jian[i]=ill[i]
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
elif yi==7:
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i])))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
jian[i]=ill[i]
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
else:
if yi>=900:
yqxs=500
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
bili[i]-=ill[i]
linshu-=ill[i]
print("今日出现严重疫情,"+str(ill[0])+"名无业者死亡,"+str(ill[1])+"名猎灵死亡,"+str(ill[2])+"名石匠死亡,"+str(ill[3])+"名催芽师死亡")
for i in [0,1,2,3]:
ill[i]=randint(0,int((bili[i]+1)/2))
jian[i]=ill[i]
if linshu==0:
print("现有0灵,0个无业者,0个猎灵")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
bili[2]=0
bili[3]=0
liang=0
huo=0
break
print("此外还有"+str(ill[0])+"名无业者中魔,"+str(ill[1])+"名猎灵中魔,"+str(ill[2])+"名石匠中魔,"+str(ill[3])+"名催芽师中魔")
else:
print("今日无疫情出现")
if yqxs>125:
print("疫情得到好转")
yqxs=1
liang-=linshu
if sj%100<=24:
shl=randint(shou[4]*(int(ng/10000)),shou[4]*(5+int(ng/7000)))
elif sj%100<=49:
shl=randint(0,shou[4]*3)
elif sj%100<=74:
shl=randint(shou[4]*(7+int(ng/10000)),shou[4]*(15+int(ng/7000)))
else:
shl=randint(0,shou[4]*2)
for i in [4,3,2,1]:
shou[i]=shou[i-1]
shou[0]=bili[3]-jian[3]
liang-=bili[3]-jian[3]
liang+=shl
if bili[2]-jian[2]<=int((bili[1]-jian[1])/2):
sc=randint(0,3*(bili[1]-jian[1])+4*(bili[2]-jian[2]))
else:
sc=randint(0,5*(bili[1]-jian[1]))
liang+=sc#
sc+=shl
l[20]=sc-linshu
sc-=shl
for i in range(0,20):
l[i]=l[i+1]
if(l[0]>0):
lll=1
if(liang<0):
l[0]=int(0.1*l[0])+1
elif(l[0]>0.5*liang):
l[0]=randint(int(0.2*liang),int(0.5*liang))+1
qwertyu=randint(1,l[0])
liang-=qwertyu
print("今日人口:"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
if(lll):
print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,"+str(qwertyu)+"粮食发霉,现在有粮食"+str(liang))
else:
print("今日获得"+str(sc)+"猎物,收获"+str(shl)+"作物,消耗"+str(linshu)+"粮食,现在有粮食"+str(liang))
if liang<0:
liang=-liang
linshu-=liang
print("大饥荒!")
hun=[0,0,0,0]
if (bili[0]>=liang):
bili[0]-=liang
print("有"+str(liang)+"个无业者被饿死")
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
liang=0##催芽师没编完
elif bili[0]+bili[3]>=liang:
liang-=bili[0]
bili[3]-=liang
print("有"+str(bili[0])+"个无业者被饿死,有"+str(liang)+"个催芽师被饿死")
bili[0]=0
liang=0
elif linshu>0:
liang-=bili[0]
hun[0]=bili[0]
liang-=bili[3]
hun[3]=bili[3]
if bili[2]>int(bili[1]/2):
hun[2]+=bili[2]-int(bili[1]/2)
liang-=hun[2]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
for i in [3,2,1,0]:
bili[i]-=hun[i]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
else:
hun[1]-=bili[2]-int(bili[1]/2)
liang-=hun[1]
hun[2]+=int(liang/3)
hun[1]+=liang-int(liang/3)
print("有"+str(hun[0])+"个无业者被饿死,"+str(hun[3])+"个催芽师被饿死,"+str(hun[1])+"个猎灵被饿死,"+str(hun[2])+"个石匠被饿死")
for i in [3,2,1,0]:
bili[i]-=hun[i]
print("现有"+str(linshu)+"灵,"+str(bili[0])+"个无业者,"+str(bili[1])+"个猎灵,"+str(bili[2])+"个石匠"+str(bili[3])+"个催芽师")
liang=0
else:
print("现有0灵,0个无业者,0个猎灵,0个石匠,0个催芽师")
print("灵灭绝了!")
bili[0]=0
bili[1]=0
bili[3]=0
bili[2]=0
liang=0
huo=0
break
if bili[3]>0:
ngjia=randint(0,10)
ngjia*=ngjia
ngjia=100-ngjia
ng+=ngjia
print("今日掌握"+str(ngjia)+"农耕技术,现技术"+str(ng))