摘要:但是,來都來了,我們的編程還是要繼續(xù)的嘛今天的主題配置文件首先,上篇鏈接從開始用寫一個(gè)命令行小游戲十配置文件匹配植物首先,我要強(qiáng)調(diào)一點(diǎn)所有需要變量匹配的地方類似別的語言中的,都可以用配置文件主要是字典。
第11篇!第11篇!第11篇!!!說實(shí)話,我真沒想過文章會(huì)更新到10以上。但是,來都來了,我們的編程還是要繼續(xù)的嘛!今天的主題:配置文件!首先,上篇鏈接:從0開始用python寫一個(gè)命令行小游戲(十)
配置文件 匹配植物首先,我要強(qiáng)調(diào)一點(diǎn):所有需要變量匹配的地方(類似別的語言中的switch),都可以用配置文件(主要是字典)。比如,我的游戲里面種植植物時(shí)匹配植物名稱。既然這個(gè)配置文件需要與植物的類交互,所以要使用Python格式,而非JSON或別的語言。試試看:
# config.py import game_obj as o config = { "plant_name": { "s": o.Sunflower, "p": o.Peashooter, } }
然后把game.Game.process_command()的try-except-else中的else改為:
from config import config if plant_type in config["plant_name"].keys(): config["plant_name"][plant_type](x, y) # 獲取類型并調(diào)用構(gòu)造方法
怎么樣,是不是優(yōu)雅很多呢?但別忘了,我們還有一個(gè)地方有急需switch語句:僵尸配置。
匹配僵尸將config.py改為:
import game_obj as o config = { "plant_name": {} # 同前 "zombie_name": { "zombie": o.Zombie, "kicker": o.KickerZombie, } }
然后將game.Game.step()改為:
def step(self, commands): # 其余同前 if str(self.step_num) in self.steps.keys(): action = self.steps[str(self.step_num)] from config import config from random import randint action_list = action.split() if action_list[-1] in config["zombie_name"].keys(): config["zombie_name"][action_list[-1]](9, randint(0, 4), action_list[0] == "exit")
好了,今天就這樣吧。
下集預(yù)告下次···對(duì)了,多關(guān)卡!敬請(qǐng)繼續(xù)關(guān)注!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/42295.html
摘要:今天,我們要添加多關(guān)卡的功能了目錄結(jié)構(gòu)在之前的編程中定義好了以后,今天的任務(wù)還是相對(duì)簡單的。上次我們講到這里從開始用寫一個(gè)命令行小游戲多關(guān)卡今天就是在配置文件上做做文章。不多說了,開始以此類推。 今天,我們要添加多關(guān)卡的功能了!目錄結(jié)構(gòu)在之前的編程中定義好了以后,今天的任務(wù)還是相對(duì)簡單的。上次我們講到這里:從0開始用python寫一個(gè)命令行小游戲(11) 多關(guān)卡 今天就是在配置文件上做...
摘要:我回來了今天,我們真正會(huì)亮相的植物要出來了哦還有,我們敵人的基礎(chǔ)類我叫它也會(huì)閃亮登場(chǎng)。還有,這是第二篇。閑話少說,進(jìn)入正題兩種植物和向日葵是,豌豆射手是。注增強(qiáng)版,你怎么看種植向日葵損失,它又產(chǎn)生成功現(xiàn)在,該編豌豆射手了。 我回來了!今天,我們真正會(huì)亮相的植物要出來了哦!還有,我們敵人的基礎(chǔ)類(我叫它BaseZombie)也會(huì)閃亮登(lai)場(chǎng)(xi)。很期待?那就開始吧! 注:我使用...
摘要:嗯,今天我們的從開始用寫一個(gè)命令行小游戲系列總算走到了我發(fā)布的時(shí)候。玩過我的正式版的話,你會(huì)發(fā)現(xiàn)現(xiàn)在的游戲還和正式版差別很大。好,現(xiàn)在就來順便補(bǔ)充一下,上次方法后追加僵尸被打敗是完成了好好慶祝一下 嗯,今天我們的從0開始用python寫一個(gè)命令行小游戲系列總算走到了我發(fā)布v1.0 beta 1的時(shí)候。玩過我的1.0正式版的話,你會(huì)發(fā)現(xiàn)現(xiàn)在的游戲還和正式版差別很大。不管怎么樣,現(xiàn)在就開始...
摘要:講點(diǎn)搞笑的,最近在開發(fā)時(shí),發(fā)現(xiàn)最令程序猿頭疼的一點(diǎn)就是沒有語句。但自動(dòng)的僵尸呢哎,別急,那是后話下集預(yù)告下次,我要把游戲變得全自動(dòng)具體工作令僵尸自動(dòng)出現(xiàn),和讓用戶用命令控制游戲這些工作完成后,就可以發(fā)布了歡迎繼續(xù)關(guān)注 嗯,還是我,我又回來了——以后文章就兩天一篇吧。講點(diǎn)搞笑的,最近在開發(fā)v1.1 beta 3時(shí),發(fā)現(xiàn)Python最令程序猿頭疼的一點(diǎn)就是沒有switch/case語句。要...
摘要:今天我時(shí)間有點(diǎn)緊張,所以不說廢話了,直接進(jìn)入正題。好現(xiàn)在,游戲可以自動(dòng)產(chǎn)生僵尸了。然后呢用戶可控的植物真正的植物大戰(zhàn)僵尸游戲可以讓玩家用鼠標(biāo)控制游戲。由于這是命令行游戲,所以我們得用命令控制。 今天我時(shí)間有點(diǎn)緊張,所以不說廢話了,直接進(jìn)入正題。前作鏈接: 從0開始用python寫一個(gè)命令行小游戲(一) 從0開始用python寫一個(gè)命令行小游戲(二) 從0開始用python寫一個(gè)命令行...
閱讀 2743·2021-10-26 09:50
閱讀 2385·2021-10-11 11:08
閱讀 2128·2019-08-30 15:53
閱讀 1906·2019-08-30 15:44
閱讀 2382·2019-08-28 18:12
閱讀 2519·2019-08-26 13:59
閱讀 2852·2019-08-26 12:19
閱讀 2751·2019-08-26 12:09