用python实现一个简化版本的人生重开模拟器
功能实现简介:
1、游戏开始的时候,设定初始属性:颜值,体力,智力,家境
2、开始游戏,随机生成性别和出生点
3、针对每一年,都生成人生的经历(依靠一定的随机因素+当前角色的属性)
欢迎界面
print("+-------------------------------------+")
print("| |")
print("| |")
print("| 花有重开日,人无再少年 |")
print("| 欢迎来到人生重开模拟器 |")
print("| |")
print("| |")
print("+-------------------------------------+")
幼年时代事件的完善
#人生重开模拟器
import random
import sys
import time#欢迎界面
print("+-------------------------------------+")
print("| |")
print("| |")
print("| 花有重开日,人无再少年 |")
print("| 欢迎来到人生重开模拟器 |")
print("| |")
print("| |")
print("+-------------------------------------+")#设置初始属性值
#颜值、体质、智力、家境,总和不超过20,每一项取值都是1-10之间
#使用循环,使玩家在输入错误的时候,可以重新输入
while True:print("请设置初始属性(可用点数为:20)")face = int(input("请输入颜值(1-10):"))strong = int(input("请输入体质(1-10):"))iq = int(input("请输入智力(1-10):"))home = int(input("请输入家境(1-10):"))#通过条件语句,对于用户输入的属性值做出校验检查#此处也可应elif,效果相同if face < 1 or face > 10:print("颜值设置有误")continueif strong < 1 or strong > 10:print("体质设置有误")continueif iq < 1 or iq > 10:print("智力设置有误")continueif home < 1 or home > 10:print("家境设置有误")continueif face + strong + iq + home > 20 :print("总得属性值超出了20,也是设置有误!")continue#如果当前上面所有的条件都没有触发,则认为玩家输入的数据是合法的#此时就可以跳出循环结束输入了print("初始值输入完毕!")break#生成角色性别
#使用random.randint(begin,end),就能生成[begin,end]随机整数
point = random.randint(1,6)
if point % 2 == 1:gender = 'boy'print('你是个男孩')
else:gender = 'girl'print("你是个女孩")#设置角色的出生点
#仅生成1-3的随机数
point = random.randint(1,3)
if home == 10:#第一档加成print('你出生在帝都,你的父母是高官政要')home += 1iq += 1face += 1
elif 7<= home <= 9:#第二档加成if point == 1:print("你出生在大城市,父母是公务员")face +=2elif point == 2:print('你出生在大城市,父母是企业高管')home +=2else:print('你出生在大城市,父母是大学教授')iq +=2
elif 4 <=home <=6:#第三档加成if point == 1:print('你出生在三线城市,你的父母是医生')strong +=1elif point ==2:print('你出生在镇上,你的父母是老师')iq +=1else:print('你出生在镇上,你的父母是个体户')home +=1
else:#第四档加成if point == 1:print('你出生在农村,父母是辛苦劳作的农民')strong +=1face -=2elif point ==2:print('你出生在穷乡僻壤,你的父母是无业游民')home -=1else:print('你出生在镇上,你的父母感情不和')strong -=1
print(f"颜值{face},体质{strong},智力{iq},家境{home}")#幼年阶段
for age in range(1,11):#把一整年的打印都整理到一个字符串中,在这一年的结尾统一打印info = f"你今年{age}岁"#生成一个【1,3】的随机数point = random.randint(1,3)#接下来编写各种事件的代码#性别触发的事件if gender == 'girl' and home <=3 and point == 1:info += '你的家里人重男轻女思想非常严重,你被遗弃了!'print(info)print("游戏结束")sys.exit(0)#体质触发的事件elif strong < 6 and point < 3:info +='你生了一场病,'if home >= 5:info +='在父母的悉心照料下,你康复了'strong +=1home -=1else:info +='你的父母没精力管你,你的身体状况更糟糕了'strong -=1#颜值触发的事件elif face <= 4 and age >= 7:info += '你长得太丑了,别的小朋友不喜欢你,'if iq > 5:info +='你决定用学习填充自己!'iq += 1else :if gender == 'boy':info +='你和别的小朋友经常打架!'strong += 1iq -=1else:info +='你经常别别的小朋友欺负!'strong -=1#智商触发的事件elif iq < 5:info +='你看起来傻傻的。'if home <= 8 and age >=6:info +='你的父母把你送到更好的学校学习'iq +=1elif 4 <= home <= 7:if gender =='boy':info +='你的父母鼓励你多运动,争取成为运动员'strong += 1else:info +='你的父母鼓励你多打扮自己'face += 1else :#家境 <4info += '你的父母经常为此吵架'if point == 1:strong -=1elif point ==2:iq -=1else:pass#健康成长事件else :info +='你健康成长。'if point ==1:info +='你看起来更结实了。'strong += 1elif point == 2:info +='你看起来更好看了。'face += 1else :#无事发生passprint (info )print(f"颜值:{face}、体质:{strong}、智力:{iq}、家境:{home}")print('--------------------------------------------------')#暂停1秒time.sleep(1)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
