從0開始用python寫乙個命令列小遊戲(11)

2021-09-13 11:08:40 字數 1227 閱讀 2007

首先,我要強調一點:所有需要變數匹配的地方(類似別的語言中的switch),都可以用配置檔案(主要是字典)。比如,我的遊戲裡面種植植物時匹配植物名稱。既然這個配置檔案需要與植物的類互動,所以要使用python格式,而非json或別的語言。試試看:

# config.py

import game_obj as o

config =

}

然後把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) # 獲取型別並呼叫構造方法

怎麼樣,是不是優雅很多呢?但別忘了,我們還有乙個地方有急需switch語句:殭屍配置。

config.py改為:

import game_obj as o

config = # 同前

"zombie_name":

}

然後將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')

好了,今天就這樣吧。

從0開始用python寫乙個命令列小遊戲(六)

從0開始用python寫乙個命令列小遊戲 一 從0開始用python寫乙個命令列小遊戲 二 從0開始用python寫乙個命令列小遊戲 三 從0開始用python寫乙個命令列小遊戲 四 從0開始用python寫乙個命令列小遊戲 五 上次,我們還缺乙個功能 自動呼叫step 的方法。好,現在就來!順便補...

從0開始用python寫乙個命令列小遊戲(三)

hey,everyone 文章遲到了一天,但我今天心情很好,因為有兩個好訊息,你們想先聽哪個?哎,算了,反正都是好訊息,一起聽吧。從0開始用python寫乙個命令列小遊戲 一 從0開始用python寫乙個命令列小遊戲 二 好,懷著良好的心 zi wo 情 gan jue 進入正題!殭屍的行為在基礎類...

從0開始用python寫乙個命令列小遊戲(五)

從0開始用python寫乙個命令列小遊戲 一 從0開始用python寫乙個命令列小遊戲 二 從0開始用python寫乙個命令列小遊戲 三 從0開始用python寫乙個命令列小遊戲 四 上次我們的game類是這樣的 import game obj as o class game def init se...