申明: 本站飛宇網 https://feiyetopro.blogspot.com/。自網路收集整理之書籍、文章、影音僅供預覽交流學習研究,其[書籍、文章、影音]情節內容, 評論屬其個人行為, 與本網站無關。版權歸原作者和出版社所有,請在下載 24 小時內刪除,不得用作商業用途;如果您喜歡其作品,請支持訂閱購買[正版]。謝謝!
第 10 章 遊戲時間到了
學習程式設計有一種慣常的做法,就是先鍵入一些代碼,儘管你可能完全不理解這些代碼。確實是這樣!
有時僅僅鍵入代碼就能讓你對程式如何工作找到一點“感覺”,雖然並不是每一行或每一個關鍵字都理解。我們在第 1 章就是這麼做的,就是那個猜數遊戲。現在還是用這個老辦法建立一個程式,不過這個程式更長也更有意思。
Skier
Skier(滑雪的人)是一個非常簡單的滑雪遊戲,靈感來自一個名叫 SkiFree 的遊戲。(你可以在 en.wikipedia.org/wiki/SkiFree 找到有關 SkiFree 的所有資訊。)
在這個遊戲中,你要滑下小山,努力避開樹而且要儘量撿起小旗。撿起一個小旗得 10 分;碰到樹則會丟掉 100 分。
運行這個程式時,會看到如下圖所示的場景:
Skier 使用一個名叫 Pygame 的模組來説明實現圖形。Pygame 是一個 Python 模組(module)(我們會在第 15 章更多地討論模組)。如果你運行了這本書的安裝程式,那就已經安裝了 Pygame。如果尚未安裝,可以從 www.pygame.org 下載。我們會在第 16 章學習有關 Pygame 的內容。
這個程式需要如下一些圖形檔:
·
skier_down.png skier_right1.png
·
skier_crash.png skier_right2.png
·
skier_tree.png skier_left1.png
·
skier_flag.png skier_left2.png
可以在 \examples\skier 資料夾找到這些檔(如果運行過安裝程式),或者在本書的網站上也可以找到這些圖形檔。要把它們放在保存程式的同一個資料夾或目錄中,這一點非常重要。如果它們與程式不在同一個目錄下,Python 就無法找到這些檔,這個程式也將無法正常工作。
Skier 的代碼見代碼清單 10-1。這個代碼清單有點長,大約 100 行代碼(為了方便閱讀,這裡還加入了一些空行),不過建議你還是花點時間自己親手鍵入這些代碼。代碼清單中有一些說明,解釋了代碼所做的工作。注意,在代碼中看到 __init__ 時,init 的兩邊各有兩條底線。也就是說,init 之前和之後都有兩條底線,而不是一邊一條。
代碼清單 10-1 Skier
代碼清單 10-1 的代碼已經放在 \examples\skier
資料夾中,所以如果你鍵入的程式無法執行,或者不想完全自己鍵入,也可以使用這個檔。不過不管你是否相信,與簡單地打開和查看代碼清單相比,親手鍵入這些代碼會讓你有更多收穫。
在後面的幾章,我們將會學習用於 Skier 中的所有關鍵字和技術。本書第 25 章將用一整章來詳細解釋 Skier 程式的工作原理。但是現在,你只需要鍵入這個程式,試著運行看看。
動手試一試
這一章你要做的只是鍵入這個 Skier 程式(代碼清單 10-1),再運行試試看。如果運行時遇到錯誤,看看錯誤消息,試著找出錯誤究竟出現在哪裡。
祝你好運!



0 留言:
發佈留言