自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我用Python做了一個Windows掃雷游戲,附帶源碼下載

開發(fā) 后端
Windows XP 上的掃雷是無數(shù)80/90后的集體回憶,今天我們就用 Python 來制作一個高仿版的掃雷游戲。

Windows XP 上的掃雷是無數(shù)80/90后的集體回憶,今天我們就用 Python 來制作一個高仿版的掃雷游戲。

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

原諒我手殘,掃雷基本就沒贏過,測試的時候我是偷偷的把雷的數(shù)量從99改到50才贏了。。。

下面講一下我的實(shí)現(xiàn)邏輯。

首先,如何表示雷和非雷,一開始想的是,建立一個二維數(shù)組表示整個區(qū)域,0表示非地雷,1表示地雷。后來一想不對,還有標(biāo)記為地雷,標(biāo)記為問號,還有表示周邊雷數(shù)的數(shù)字,好多狀態(tài),干脆就做個類吧:

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

布雷就很簡單了,隨機(jī)取99個數(shù),從上往下順序排就是了:

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

我們點(diǎn)擊一個格子的時候,只要根據(jù)點(diǎn)擊的坐標(biāo),找到對應(yīng)的 Mine,看它的值是多少,就知道有沒有踩中雷了。

如果沒踩中雷的話,要計算周邊8個位置中有幾個雷,以便顯示對應(yīng)的數(shù)字。

如果周邊有雷,那么顯示數(shù)字,這個簡單,可是如果周邊沒有雷,那就要顯示一片區(qū)域,直到有雷出現(xiàn),如下圖,我只點(diǎn)了當(dāng)中一下,就出現(xiàn)了那么大一片區(qū)域

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

這個計算其實(shí)也容易,只要用遞歸就可以了,如果計算出周圍的雷數(shù)為0,則遞歸計算周邊8個位置的四周雷數(shù),直到雷數(shù)不為0。

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

接下來還有一個麻煩的地方,我們經(jīng)常鼠標(biāo)左右鍵同時按下,如果雷被全部標(biāo)記,則會一下子打開周圍所有的格子,如果其中有標(biāo)記錯的,那么不好意思,GAME OVER。

如果沒有全標(biāo)記完,會有一個效果顯示周圍一圈未被打開和標(biāo)記的格子

 

我用Python做了一個Windows掃雷游戲,附帶源碼下載

掃雷的主要邏輯就這么多,剩下來的就是一些雜七雜八的事件了。當(dāng)然,這些雜七雜八的事件也還是夠你折騰一番的。

責(zé)任編輯:未麗燕 來源: 今日頭條
相關(guān)推薦

2025-03-06 13:10:32

2020-11-16 09:02:38

Python開發(fā)工具

2020-05-08 13:28:53

新擬物UI設(shè)計

2021-04-29 15:53:21

AI 數(shù)據(jù)人工智能

2020-09-07 14:30:37

JUC源碼CAS

2022-02-22 20:35:22

公鑰私鑰數(shù)據(jù)

2022-03-24 07:57:58

Python水果忍者游戲

2022-12-05 18:17:06

技術(shù)

2023-01-26 00:54:57

2023-11-28 12:00:22

應(yīng)用程序API

2019-09-23 09:11:02

Python文本編輯器操作系統(tǒng)

2019-05-14 12:30:07

PythonPygame游戲框架

2018-01-15 15:00:06

工程師項目設(shè)計師

2021-08-06 09:35:37

Python盯盤機(jī)器人編程語言

2021-05-10 10:26:31

技術(shù)資訊

2020-11-30 06:20:13

javascript

2018-03-22 13:58:06

Python換臉程序

2021-12-23 09:50:46

Python游戲腳本

2021-05-04 16:38:54

Linux數(shù)學(xué)游戲

2015-05-21 15:46:20

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號