人生重开模拟器游戏:
http://remake.solaking.com/#google_vignette
此处只做简单的模拟,旨在联系Python语法:
为了简单起见此处只模拟人生中1-10岁的经历:
效果演示:
代码实现:
# 人生重开模拟器
# pycharm自动导入的模块
import random
import sys
import timeprint('+-------------------------------+')
print('| |')
print('| 花有重开日,人无再少年 |')
print('| |')
print('| 欢迎来到:人生重开模拟器 |')
print('| |')
print('+-------------------------------+')# 设置初始属性
while True:print("请分别设置颜值,体质,家境,智力属性!(注意:总点数不超过20)")face = int(input("请输入颜值属性点数(1-10): "))body = int(input("请输入体质属性点数(1-10): "))family = int(input("请输入家境属性点数(1-10): "))iq = int(input("请输入智力属性点数(1-10): "))# 输入有误的情况下进行重新输入if face<0 or face>10:print("颜值属性设置有误,请重新输入!")continueif body<0 or body>10:print("体质属性设置有误,请重新输入!")continueif family<0 or family>10:print("家境属性设置有误,请重新输入!")continueif iq<0 or iq>10:print("智力属性设置有误,请重新输入!")continueif face + body + family + iq > 20:print("属性设置点数超过20,设置有误,请重新输入!")continue# 设置成功!打印属性print("属性设置完毕,您重开人生的属性设置为:")print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")break# 生成角色的性别
# random.randint(1,10)生成[1,10]的随机数,包含1,10
# random是Python中的一个模块(别人写好的代码给我们用)
point = random.randint(1,10)
print(point)
if point%2 == 1:gender='boy'print("哇哇哇~你出生了!你是一个男孩!")
else:gender='girl'print("哇哇哇~你出生了!你是一个女孩!")# 设置角色出生点
'''
家境+随机数
1档:家境为 10 ,带来一些属性加成
2档:家境为 7-9 ,也会带来一些属性加成
3档:家境为 4-6 ,会带来少量加成
4档:家境为 1-3 ,扣属性
'''
point = random.randint(1,5)
if family == 10:# 1档print("你出生在帝都,你的父母是高官政要.")family += 1face += 2iq += 1
elif 7 <= family <= 9:# 2档if point == 1:print("你出生在大城市,父母是医生.")iq += 1if point == 2:print("你出生在大城市,父母是企业家.")family+=3iq+=1if point==3:print("你出生在大城市,父母是公务员.")iq += 2if point==4:print("你出生在大城市,父母是大学教授.")iq+=1family+=1if point==5:print("你出生在大城市,父母是企业高管.")family+=2face+=1
elif 4 <=family<=6:# 3档if point==1:print("你出生在二线城市,父母是医生.")family += 1if point==2:print("你出生在三线城市,父母是高中老师.")iq+=1if point==3:print("你出生在三线城市,父母是公务员.")family+=1if point==4:print("你出生在二线城市,父母是厨师.")body += 2if point==5:print("你出生在三线城市,父母是小卖部老板")family+=1
else:# 4挡if point==1:print("你出生在小县城,父母是农民.")family -= 1if point==2:print("你出生在小县城,父母是小卖部老板.")face-=1if point==3:print("你出生在农村,你一出生,父母就丢下你不管了")family-=2face-=1if point==4:print("你出生在偏远山村,父亲在几个月出意外去世了.")body -=2family-=1if point==5:print("你出生在大山里,母亲生下你后难产去世了.")body -= 2family -= 1
print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")# 幼年阶段
for age in range(1,11):# 一整年都打印到一个字符串中,在这一年的结尾统一打印info = f'你今年{age}岁.'# 生成一个1-5的随机整数point = random.randint(1,5)# 接下来写可能发生的各种事情# 性别触发的事情if gender == 'girl' and family <= 3 and point < 3:info +='你的家人重男轻女,你被遗弃了!'print(info)print('游戏结束!')sys.exit(0)# 体质触发elif body < 3 and point < 3:info += '你生了一场病.'if family > 4:info += '你在父母的悉心照料下康复了.'body += 1family -= 1else:info += '你的父母没有精力管你,你的身体情况更加糟糕了.'body -= 1# 颜值触发事件elif face > 9 and age > 5 and family > 5:info += '你被星探发现了,去做了童星'face += 1family += 1elif face < 3 and age < 6:info += '你长得太丑了,别的小朋友不喜欢你'if gender == 'boy':info += '你经常和别的小朋友打架!'body += 1iq -= 1else:info += '你变得很喜欢哭,身体不好'body -= 1# 智商触发elif iq > 8 and age > 4 :info += '你很聪明,老师都对你赞不绝口.'if family > 5:info += '你的父母为你报了奥数班,你参加了各种奥数比赛并取得了优异的成绩.'iq += 2else:info += '你的父母让你好好努力学习.'iq += 1else:info += '你健康成长.'if point == 1:info += '你更好看了.'face += 1elif point == 2:info += '你看起来更结实了.'else:info += '无事发生.'
# 打印发生的事情print(info)print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")print('--------------------------------------------------')# 暂停1秒time.sleep(1)