100行Python程式碼實現貪吃蛇小遊戲(超詳細)
貪吃蛇小遊戲相信80、90後小時候肯定都玩過,那麼你知道如果透過Python來實現嗎?今天小千就來教大家。首先給大家看一下最終的呈現效果:
基本準備
首先,我們需要安裝pygame庫,小編透過pip install pygame,很快就安裝好了。在完成貪吃蛇小遊戲的時候,我們需要知道整個遊戲分為四部分:
1.遊戲顯示:遊戲介面、結束介面
2.貪吃蛇:頭部、身體、食物判斷、死亡判斷
3.樹莓:隨機生成
4.按鍵控制:上、下、左、右
遊戲顯示
首先,我們來初始化pygame,定義顏色、遊戲介面的視窗大小、標題和圖示等。
遊戲結束介面,我們會顯示“Game Over!”和該局遊戲所得分數,相關程式碼如下:
貪吃蛇和樹莓
我們需要將整個介面看成許多20*20的小方塊,每個方塊代表一個單位,蛇的長度用單位來表示,同時我們採用列表的形式儲存蛇的身體。同時,我們都知道,樹莓的位置是隨機的。所以,我們需要讓樹莓出現的位置是遊戲介面中的隨機位置,同時,每吃到一顆樹莓,就需要重新生成一顆新的樹莓,並且得分加1。相關初始化設定如下:
如何控制貪吃蛇的運動軌跡呢,那麼就需要按鍵控制了。我們透過鍵盤的↑↓←→和WSAD來控制,如果想直接退出遊戲,則可以透過Esc鍵。這裡需要強調的是,貪吃蛇裡面是不能反方向運動,因此,我們需要進一步的增加限制條件:
方向設定好了,那麼貪吃蛇蛇身變換怎麼做啊?很簡單,我們只需要根據方向變換一下座標即可。
貪吃蛇遊戲裡面最重要的就是食物判斷和死亡判斷。首先是食物判斷,我們透過鍵盤按鍵來決定貪吃蛇的走向,以便它能吃到樹莓。如何判斷貪吃蛇有沒有吃到樹莓呢?很簡單,如果貪吃蛇蛇頭的位置和樹莓的位置重合了,也就是相同,那麼貪吃蛇就吃到樹莓了,否則沒有。同時,一旦發生了樹莓被吃的情況,立刻重新隨機生成一個新的樹莓。相關程式碼如下:
死亡判斷則分為兩類情況,一是觸碰到了遊戲介面的邊界,二是貪吃蛇觸碰到了自己的身體。一旦發生死亡,則觸發gameover。
貪吃蛇運動和吃掉樹莓的過程中,遊戲介面需要不斷更新。同時,我們設定了遊戲速度。
至此,我們就能完成一個貪吃蛇小遊戲了。趕緊去實驗一下吧!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2773084/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python:遊戲:貪吃蛇Python遊戲
- 【Python】 Python小遊戲-貪吃蛇大冒險Python遊戲
- OpenGL實現貪吃蛇程式碼
- python實現貪吃蛇Python
- (完整原始碼)貪吃蛇小遊戲——HTML+CSS+JavaScript實現原始碼遊戲HTMLCSSJavaScript
- js+jquery實現貪吃蛇經典小遊戲JSjQuery遊戲
- Python實現貪吃蛇大作戰Python
- 利用python實現簡易版的貪吃蛇遊戲(面向python小白)Python遊戲
- Java實現貪吃蛇Java
- Android-貪吃蛇小遊戲-分析與實現-Kotlin語言描述Android遊戲Kotlin
- [譯] RxJS 遊戲之貪吃蛇JS遊戲
- C語言小遊戲------貪吃蛇----小白專用C語言遊戲
- GUI 基於Swing製作貪吃蛇小遊戲GUI遊戲
- 純JS實現貪吃蛇遊戲 —— 可能是全網程式碼最優雅的實現。JS遊戲
- Python3 貪吃蛇Python
- 貪吃蛇
- 貪吃蛇c原始碼原始碼
- C語言實現桌面貪吃蛇C語言
- c/c++實現簡單的貪吃蛇視覺化遊戲C++視覺化遊戲
- JavaScript-開發一個簡單的貪吃蛇小遊戲JavaScript遊戲
- 貪吃蛇完整版小案例
- 04 貪吃蛇
- 貪吃蛇jsJS
- 開發Windows貪吃蛇遊戲——(一)前期準備Windows遊戲
- C語言貪吃蛇原始碼C語言原始碼
- 一步步教你怎麼用python寫貪吃蛇遊戲Python遊戲
- Python程式碼實現“FlappyBird”小遊戲PythonAPP遊戲
- h5+js實現單機版貪吃蛇H5JS
- 用 Python 寫個貪吃蛇,保姆級教程!Python
- 《貪吃蛇巴士》:《貪吃蛇》和《瘋狂計程車》的「完美結晶」
- 貪吃蛇大作戰JavaFx版完整原始碼Java原始碼
- canvas吃豆小遊戲程式碼Canvas遊戲
- Python實現快遞分揀小程式(附原始碼和超詳細註釋)Python原始碼
- 裝逼的最高境界---一行js程式碼完成一個簡易版的貪吃蛇遊戲JS遊戲
- pygame試水,寫一個貪吃蛇GAM
- 基於正點原子SRM32F103ZET6精英板(戰艦板)的貪吃蛇小遊戲(附原始碼)遊戲原始碼
- 溫習資料演算法—貪吃蛇演算法
- python實現超級瑪麗小遊戲(動圖演示+原始碼分享)Python遊戲原始碼