Python实现小黑屋游戏的完整实例
作者:M.G~ 时间:2021-03-08 13:27:43
大一上学期学习的内容之一,小黑屋比较好玩。
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)
结果如下:
或者
要注意导入函数库,还有只创建需要使用的函数,以便于后面函数的调用。
总结
来源:https://blog.csdn.net/L_2376131723/article/details/112233823
标签:python,小黑屋,游戏
0
投稿
猜你喜欢
python模拟事件触发机制详解
2023-03-11 11:09:02
考虑SQL Server安全时所应注意的几个方面
2009-01-04 13:57:00
PHP组合模式Composite Pattern优点与实现过程
2023-05-29 02:10:44
Python全局锁中如何合理运用多线程(多进程)
2022-05-27 18:58:22
5款非常棒的Python工具
2023-03-22 15:58:03
vue解决跨域问题的几种常用方法(CORS)
2024-04-28 09:32:42
Numpy中如何创建矩阵并等间隔抽取数据
2023-01-14 16:21:16
VUE中如何动态绑定类名和样式
2024-04-26 17:41:35
自动定时重启sql server回收内存
2008-11-26 17:41:00
Python脚本开发中的命令行参数及传参示例详解
2023-01-25 02:44:30
GoLang中生成UUID唯一标识的实现
2024-05-22 10:19:54
python系统指定文件的查找只输出目录下所有文件及文件夹
2021-03-23 08:00:04
python打印日志方法的使用教程(logging模块)
2023-12-10 01:39:14
VUE 实现一个简易老虎机的项目实践
2024-05-10 14:19:17
用unescape反编码得出汉字示例
2024-04-19 09:48:52
关于Python字典(Dictionary)操作详解
2022-02-04 15:25:01
基于Python利用Pygame实现翻转图像
2021-05-20 00:05:08
发个选星星打分/投票功能函数
2008-05-22 12:38:00
详解Golang利用反射reflect动态调用方法
2024-05-02 16:23:47
使用Python实现跳一跳自动跳跃功能
2023-04-07 01:57:55