成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(三)

Tony_Zby / 1749人閱讀

摘要:今天就開(kāi)始由于整個(gè)游戲會(huì)有自己的一些屬性和行為,所以我決定把它編寫(xiě)在類里。初始化游戲定義自己的屬性先定義這些。我計(jì)劃使用格式,以第幾步出現(xiàn)作為鍵,以出現(xiàn)的僵尸類型以后可能會(huì)出現(xiàn)不同類型的僵尸和是否在它被消滅后結(jié)束游戲作為值。

Hey, everyone! 文章遲到了一天,但我今天心情很好,因?yàn)橛袃蓚€(gè)好消息,你們想先聽(tīng)哪個(gè)?哎,算了,反正都是好消息,一起聽(tīng)吧。

本游戲的v1.1 beta 1和beta 2先后發(fā)布了!想要幫我測(cè)試的話,之前那個(gè)GitHub鏈接里面就是。

隨著游戲的不斷更新,此系列SegmentFault文章有可能不斷延續(xù)!

還有,如果你沒(méi)看過(guò)我的前作的話,下面是鏈接:

從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(一)

從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(二)

好,懷著良好的心(zi wo)情(gan jue),進(jìn)入正題!

BaseZombie的子類

僵尸的行為在基礎(chǔ)類里面定義得很充分,兩行代碼搞定一個(gè)基礎(chǔ)類:

class Zombie(BaseZombie):
    indicating_char = "z"
    
    def __init__(pos, die_to_exit=False):
        super().__init__(pos, 1, 1, die_to_exit)

好了!是不是很簡(jiǎn)單呢?好,開(kāi)始編寫(xiě)用戶界面吧!

用戶界面:第一步

編寫(xiě)用戶界面是一項(xiàng)永無(wú)止境的工作,我到現(xiàn)在的大部分工作還是這個(gè)。今天就開(kāi)始!由于整個(gè)游戲會(huì)有自己的一些屬性和行為,所以我決定把它編寫(xiě)在類里。原文件改名為game_obj.py,新文件叫game.py

import game_obj as o

class Game:
    def __init__(self):
        # 初始化游戲
        o.sunlight = 50
        o.board = [0] * 10
        # 定義自己的屬性
        self.sunlight = o.sunlight
        self.board = o.board

先定義這些。再想想植物大戰(zhàn)僵尸游戲還有什么屬性。對(duì)了,游戲中自動(dòng)出現(xiàn)僵尸,這個(gè)要寫(xiě)在配置文件里面,我們的Game類要讀取它!嗯,先把配置文件編出來(lái)吧。我計(jì)劃使用JSON格式,以第幾步出現(xiàn)作為鍵,以出現(xiàn)的僵尸類型(以后可能會(huì)出現(xiàn)不同類型的僵尸)和是否在它被消滅后結(jié)束游戲作為值。文件名:level.json。

{
  "3": "zombie",
  "6": "zombie",
  "10": "exit zombie"
}

Game類的__init__方法追加以下代碼:

# 讀取配置文件
import json
with open("level.json") as fr:
    self.steps = json.load(fr)

試一試!

In [1]: import game as g

In [2]: Game().steps
Out[2]:
{"3": "zombie", "6": "zombie", "10": "exit zombie"}

好了!我們已經(jīng)獲取了所有用戶界面所需的數(shù)據(jù),但現(xiàn)在的游戲還不能玩。今天就起步,以后,我們將使用今天采集的數(shù)據(jù)制作最終的游戲!

下集預(yù)告

至于下集講什么,沒(méi)得說(shuō),用戶界面開(kāi)發(fā)(第二步)!歡迎繼續(xù)關(guān)注!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42142.html

相關(guān)文章

  • 0開(kāi)始python寫(xiě)一個(gè)命令游戲(六)

    摘要:嗯,今天我們的從開(kāi)始用寫(xiě)一個(gè)命令行小游戲系列總算走到了我發(fā)布的時(shí)候。玩過(guò)我的正式版的話,你會(huì)發(fā)現(xiàn)現(xiàn)在的游戲還和正式版差別很大。好,現(xiàn)在就來(lái)順便補(bǔ)充一下,上次方法后追加僵尸被打敗是完成了好好慶祝一下 嗯,今天我們的從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲系列總算走到了我發(fā)布v1.0 beta 1的時(shí)候。玩過(guò)我的1.0正式版的話,你會(huì)發(fā)現(xiàn)現(xiàn)在的游戲還和正式版差別很大。不管怎么樣,現(xiàn)在就開(kāi)始...

    channg 評(píng)論0 收藏0
  • 0開(kāi)始python寫(xiě)一個(gè)命令游戲(四)

    摘要:講點(diǎn)搞笑的,最近在開(kāi)發(fā)時(shí),發(fā)現(xiàn)最令程序猿頭疼的一點(diǎn)就是沒(méi)有語(yǔ)句。但自動(dòng)的僵尸呢哎,別急,那是后話下集預(yù)告下次,我要把游戲變得全自動(dòng)具體工作令僵尸自動(dòng)出現(xiàn),和讓用戶用命令控制游戲這些工作完成后,就可以發(fā)布了歡迎繼續(xù)關(guān)注 嗯,還是我,我又回來(lái)了——以后文章就兩天一篇吧。講點(diǎn)搞笑的,最近在開(kāi)發(fā)v1.1 beta 3時(shí),發(fā)現(xiàn)Python最令程序猿頭疼的一點(diǎn)就是沒(méi)有switch/case語(yǔ)句。要...

    graf 評(píng)論0 收藏0
  • 0開(kāi)始python寫(xiě)一個(gè)命令游戲(五)

    摘要:今天我時(shí)間有點(diǎn)緊張,所以不說(shuō)廢話了,直接進(jìn)入正題。好現(xiàn)在,游戲可以自動(dòng)產(chǎn)生僵尸了。然后呢用戶可控的植物真正的植物大戰(zhàn)僵尸游戲可以讓玩家用鼠標(biāo)控制游戲。由于這是命令行游戲,所以我們得用命令控制。 今天我時(shí)間有點(diǎn)緊張,所以不說(shuō)廢話了,直接進(jìn)入正題。前作鏈接: 從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(一) 從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(二) 從0開(kāi)始用python寫(xiě)一個(gè)命令行...

    skinner 評(píng)論0 收藏0
  • 0開(kāi)始python寫(xiě)一個(gè)命令游戲(十)

    摘要:前幾天出去旅游了,所以沒(méi)能更新文章,但轉(zhuǎn)眼間,從開(kāi)始用寫(xiě)一個(gè)命令行小游戲系列已經(jīng)更新到了第十篇。閑話少說(shuō),今天我們要開(kāi)始重構(gòu)了但第一件事還是上篇的鏈接從開(kāi)始用寫(xiě)一個(gè)命令行小游戲九。所以,我們需要一個(gè)標(biāo)志變量,以標(biāo)志游戲的結(jié)束。 前幾天出去旅游了,所以沒(méi)能更新文章,但轉(zhuǎn)眼間,從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲系列已經(jīng)更新到了第十篇。閑話少說(shuō),今天我們要開(kāi)始重構(gòu)了!但第一件事還是上篇...

    OnlyLing 評(píng)論0 收藏0
  • 0開(kāi)始python寫(xiě)一個(gè)命令游戲(八)

    摘要:這項(xiàng)亂入的修改就是修改目錄結(jié)構(gòu),為多關(guān)卡作準(zhǔn)備上篇鏈接從開(kāi)始用寫(xiě)一個(gè)命令行小游戲七多關(guān)卡目錄結(jié)構(gòu)我計(jì)劃把目錄結(jié)構(gòu)改成這樣關(guān)卡文件,是關(guān)卡用完后的默認(rèn)配置其中是目前的關(guān)卡數(shù),為表示關(guān)卡已經(jīng)用完,使用默認(rèn)關(guān)卡。 今天,我突然想起了另一項(xiàng)修改,所以原計(jì)劃的多行+新僵尸就改到第九篇再介紹。這項(xiàng)亂入的修改就是:修改目錄結(jié)構(gòu),為多關(guān)卡作準(zhǔn)備!上篇鏈接:從0開(kāi)始用python寫(xiě)一個(gè)命令行小游戲(七)...

    MorePainMoreGain 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<