Snake 貪吃蛇


 

這款遊戲我想不必介紹太多,童年回憶啊!!而且大人小孩都愛,貪吃蛇已經成為所有蛇種裡面,最可愛的一種。

這是2012年完成的小遊戲,目前,貪吃蛇玩法已經千變萬化了,但魅力依舊還在,希望大家喜歡。


- 界面介紹

本次頁面分為4個,分別為:開始頁面,選色頁面,快捷鍵介紹頁面,遊戲頁面。

  

   


- 玩法介紹

基本規則不變,額外加入了塗鴉版,讓貪吃蛇走過的路徑塗上顏色,這點子是因為我在朋友電腦安裝了病毒版的貪吃蛇,電腦熒幕就會被ai貪吃蛇塗滿,有點像熒幕保護程式,純屬好玩。


- 程式介紹

一些頁面轉換的程式我就不說明了,因為之前是用物件來當貪吃蛇身體,所以蛇體是不會長大的,當然是因為教學上的緣故,不過既然想寫貪吃蛇遊戲,不寫出個完整版還有點說不過去。

於是,在網路上找到相關資訊後,發現方法千百種,而我使用了 Pen 這個方法,簡單好用。

 

接下來我說明一些撰寫時要注意的事項:

 

1. 蛇體移動方法介紹

如何讓蛇移動,已經算是程式的核心了,移動同時也要繪製蛇體,這就更加複雜了。各位如果覺得這方面有難度,可以一步一步分開來寫:

a. 首先,使用一個物件,來當做蛇頭,然後讓他能上下左右移動,記得設定好移動距離,讓每次移動就是一格。

b. 創建一個身體,運用 List 的方法,記錄每次移動路徑,讓身體跟著頭走,成功後可以增加到三個。

c. 限制蛇頭不能回頭,例如蛇頭往上,就不能直接往下,將先前移動的方向儲存起來(這在後面也會用到,非常重要),每次移動時都先和儲存值比對,以防蛇頭回頭。

d. 上述功能成功後,加入Timer,Timer每次都會讓蛇頭移動,而方向就是儲存值,儲存值會因 Keydown 而改變,記住,儲存值也會受到回頭判斷限制。(附加說明,你在timer的間隔內,不管按了幾次上下左右,timer 只會執行你最後一次的儲存值。)

 

2. 繪製蛇身的方法

步驟一成功後,可以將物件變成 Pen,在不吃系統資源的情況下,讓蛇身可以變長。 

a. 改用 Pen 來繪製蛇頭,想不考慮收尾,用 Timer 的方式,讓蛇頭一直往前跑。

b. 創建一個 list,用來收集每次蛇頭的移動路徑,以同一個 Timer 控制,在第四拍後,開始清除蛇頭劃過的痕跡,說清除,其實是反向塗鴉,只是把畫面塗上背景色,例如背景色是白色,便塗上白色即可,如此這般,蛇身體就能控制在四個以內。

 

3. 長大的方法

如果前面順利的話,這一步就不會太難了,不過還是有一些注意事項:

a. 一開始變隨機產生一格的食物,記得判定食物不能產生於蛇身及蛇頭內,也就是不能重複出現在 List 內。

b. 在 Timer 裡判定,若蛇頭碰到了食物,反向塗鴉便暫緩一拍,這樣蛇就會長大了。

 

4. 失敗判定

跟食物原理一樣,若蛇頭碰到蛇身便失敗,如果想增加圍牆或障礙物,只需將座標放到另外一個 List 中,每次判定即可。


- 結尾

本次就介紹到這裡了,各位可以各自發揮新玩法,想必大家也猜到,塗鴉版只是把白色變成其他顏色而已,哈哈哈!!

最後,這是本人現有的最後一個小遊戲,未來應該也不會發 VB 的遊戲了,畢竟 VB 不是用來寫遊戲的軟體。

再次祝各位愉快地寫程式!!!

有緣再會!!!

BYE.


- 下載

點擊此處下載本次小遊戲

---檔案過大可能會被誤判為病毒,此檔案保證無毒,請儘管放心---


 

 

 

 

 

 

查看原文 >>
相关文章