前言
這次給大家帶來的是坦克大戰的更新版本。廢話不多說,讓我們愉快地開始吧~
開發工具
Python版本: 3.6.4
相關子產品:
pygame子產品;
以及一些python自帶的子產品。
環境搭建
安裝Python并添加到環境變量,pip安裝需要的相關子產品即可。
更新介紹
1.代碼結構優化
現在的代碼結構介紹如下:
Game5.py:遊戲運作主程式.
cfg.py:遊戲配置檔案, 主要用來記錄遊戲素材路徑等遊戲基本資訊.
resources:用于放遊戲素材(音頻, 圖檔, 字型等).
modules:
--interfaces:定義遊戲開始, 切換和結束界面.
--levels:放遊戲各關卡的地圖.
--sprites:定義所需的遊戲精靈, 如坦克, 子彈, 大學營等等.
--GameLevel.py: 每個關卡的運作主程式, 由Game5.py檔案調用.
2.遊戲界面優化
加了一些估計價值一毛的特效,譬如開始界面現在是這樣了:
遊戲切換界面現在是這樣了:
遊戲主界面添加了一些資料友善玩家檢視遊戲操作方式和目前的遊戲進度:
遊戲結束界面優化:
3.添加新的關卡地圖更加友善
隻需要在levels檔案夾中建立一個.lvl檔案,然後按照我給出的地圖格式模闆進行修改即可:
簡單解釋一下模闆含義:
"#"開頭的行均為注釋行
%TOTALENEMYNUM:本關敵方坦克總數量.
%MAXENEMYNUM:場上敵方坦克最大數量.
%HOMEPOS:我方大學營坐标.
%HOMEAROUNDPOS:我方大學營鄰近點坐标.
%PLAYERTANKPOS:我方坦克的出生位置.
%ENEMYTANKPOS:敵方坦克的出生位置.
接下來26*26的矩陣為遊戲地圖, 其中S代表空地, B代表磚牆,
R代表河流, T代表樹, I代表鐵牆, C代表冰地.
4.遊戲體驗優化以及BUG修複
(1) 解決了坦克在一些岔道口轉彎困難的問題;
(2) 添加了和原版一樣的坦克被摧毀後的爆炸特效;
(3) 修複了多人模式中坦克複活的BUG;
(4) 修複了坦克子彈存在的潛在BUG;
(5) 修複了部分食物功能存在的BUG;
(6) 坦克保護狀态時特效優化;
(7) 完善了地圖元素的功能支援(冰地上加速, 在樹林裡會看不見坦克等等);
(8) 其他代碼細節優化。
文章到這裡就結束了,感謝你的觀看,Python24個小遊戲系列,下篇文章分享重做flappybird小遊戲
為了感謝讀者們,我想把我最近收藏的一些程式設計幹貨分享給大家,回饋每一個讀者,希望能幫到你們。
幹貨主要有:
① 2000多本Python電子書(主流和經典的書籍應該都有了)
② Python标準庫資料(最全中文版)
③ 項目源碼(四五十個有趣且經典的練手項目及源碼)
④ Python基礎入門、爬蟲、web開發、大資料分析方面的視訊(适合小白學習)
⑤ Python學習路線圖(告别不入流的學習)
⑥ 兩天的Python爬蟲訓練營直播權限
All done~私信擷取完整源代碼。。
往期回顧
Python實作掃雷小遊戲
Python實作2048小遊戲
Python實作五子棋聯機對戰小遊戲
Python實作炸彈人小遊戲
Python實作經典吃豆豆小遊戲
Python實作消消樂小遊戲
Python實恐龍跳一跳小遊戲現
Python實作簡易版飛機大戰小遊戲
Python實作俄羅斯方塊小遊戲
Python實作外星人入侵小遊戲
Python實作“小兔子和Bun”遊戲
Python實作八音符小遊戲
Python實作拼圖小遊戲
Python實作滑雪小遊戲
Python實作經典90坦克大戰
Python實作FlappyBird的小遊戲
Python實作塔防小遊戲
Python實作接水果和金币小遊戲
Python實作推箱子小遊戲
Python實作24點小遊戲
Python實作乒乓球小遊戲
Python實作打磚塊小遊戲
Python實作過迷宮小遊戲
Python實作打地鼠小遊戲