Python實現(xiàn)小黑屋游戲的完整實例
大一上學期學習的內(nèi)容之一,小黑屋比較好玩。
1.導入函數(shù)庫
先導入random、time兩個函數(shù)庫的使用來達到隨機生成人物、生成人物加載時間的目的。
import random import time
2.創(chuàng)建列表
創(chuàng)建事件、資源、技能列表(可以自己思考然后加入你所認為需要的列表)。
event = ["遇到饑寒交迫的人"]#事件列表 source = ["木材","肉","布"]#資源列表 skill = ["潛水","爬山","跳躍"]#技能列表
3.創(chuàng)建函數(shù)
初始人物狀態(tài)
def init():#初始人物 person = {"HP":100,"hungry":100,"EQ":50,"skill":"","木材":2,"fire":0}#人的初始狀態(tài)
在這里后面可以加上time函數(shù)庫,使生成人物需要加載時間來讓游戲更加真實。
time.sleep(3)#停止運行3秒 print("人物生成中>>>>>>>>>50%") time.sleep(2)#停止運行2秒 print("人物生成中>>>>>>>>>>>>>>>>>>>80%") time.sleep(1)#停止運行1秒 print("人物生成中>>>>>>>>>>>>>>>>>>>>>>>>>>>100%") showperson(person) return person
火堆燃燒狀態(tài)
def fire(person): person["木材"] = person["木材"] - 1 person["hungry"] = person["hungry"] - 20 person["fire"] = 1 print("火堆燃起來了!") return person
遇到事件的可能性和狀態(tài)(因為前面事件列表只寫了一個,所以我這里的事件就只是遇到饑寒交迫的人,你們可以自行修改)。
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("和他挑戰(zhàn)你輸了") return person
人物現(xiàn)在的狀態(tài)
def showperson(person): print("你現(xiàn)在的狀態(tài)是:",person)
調(diào)用函數(shù)
person = init() person = fire(person) person = Playgame(person) showperson(person)
結(jié)果如下:
或者
要注意導入函數(shù)庫,還有只創(chuàng)建需要使用的函數(shù),以便于后面函數(shù)的調(diào)用。
總結(jié)
到此這篇關(guān)于Python實現(xiàn)小黑屋游戲的文章就介紹到這了,更多相關(guān)Python小黑屋游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
瘋狂上漲的Python 開發(fā)者應從2.x還是3.x著手?
熱度瘋漲的 Python,開發(fā)者應從 2.x 還是 3.x 著手?這篇文章就為大家分析一下了Python開發(fā)者應從2.x還是3.x學起,感興趣的小伙伴們可以參考一下2017-11-11淺析Python中g(shù)etattr和getattribute的調(diào)用
在Python中,getattr和getattribute是兩個用于屬性訪問的重要函數(shù),它們可以在運行時動態(tài)地獲取對象的屬性或自定義屬性訪問行為,下面我們就來學習一下它們的具體用法吧2023-11-11Ubuntu下使用Python實現(xiàn)游戲制作中的切分圖片功能
這篇文章主要介紹了Ubuntu下使用Python實現(xiàn)游戲制作中的切分圖片功能,涉及Python針對圖片的讀取、載入、切分運算等相關(guān)操作技巧,需要的朋友可以參考下2018-03-03聊聊pytorch中Optimizer與optimizer.step()的用法
這篇文章主要介紹了pytorch中Optimizer與optimizer.step()的用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05Pytorch中實現(xiàn)只導入部分模型參數(shù)的方式
今天小編就為大家分享一篇Pytorch中實現(xiàn)只導入部分模型參數(shù)的方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01