Python实现小黑屋游戏的完整实例
(编辑:jimmy 日期: 2024/11/2 浏览:3 次 )
大一上学期学习的内容之一,小黑屋比较好玩。
1.导入函数库
先导入random、time两个函数库的使用来达到随机生成人物、生成人物加载时间的目的。
import random import time
2.创建列表
创建事件、资源、技能列表(可以自己思考然后加入你所认为需要的列表)。
event = ["遇到饥寒交迫的人"]#事件列表 source = ["木材","肉","布"]#资源列表 skill = ["潜水","爬山","跳跃"]#技能列表
3.创建函数
初始人物状态
def init():#初始人物 person = {"HP":100,"hungry":100,"EQ":50,"skill":"","木材":2,"fire":0}#人的初始状态
在这里后面可以加上time函数库,使生成人物需要加载时间来让游戏更加真实。
time.sleep(3)#停止运行3秒 print("人物生成中>50%") time.sleep(2)#停止运行2秒 print("人物生成中>80%") time.sleep(1)#停止运行1秒 print("人物生成中>100%") showperson(person) return person
火堆燃烧状态
def fire(person): person["木材"] = person["木材"] - 1 person["hungry"] = person["hungry"] - 20 person["fire"] = 1 print("火堆燃起来了!") return person
遇到事件的可能性和状态(因为前面事件列表只写了一个,所以我这里的事件就只是遇到饥寒交迫的人,你们可以自行修改)。
def Playgame(person): #point = random.randint(0,1) point = 0 if point == 0: print("你遇到了饥寒交迫的人!") choose = input("是否要给他木材:") print("你的火堆熊熊燃烧中...") if choose == "是": person["木材"] = person["木材"] - 1 person["EQ"] = person["EQ"] + 10 if 80 < random.randint(0,100): skill = random.choice("skill") skill.remove(skill) person["skill"] = person["skill"] + skill person["HP"] = person["HP"] + 100 else: person["HP"] = person["HP"] - 10 print("和他挑战你输了") return person
人物现在的状态
def showperson(person): print("你现在的状态是:",person)
调用函数
person = init() person = fire(person) person = Playgame(person) showperson(person)
结果如下:
或者
要注意导入函数库,还有只创建需要使用的函数,以便于后面函数的调用。
总结
下一篇:如何利用python 读取配置文件