本來想寫幾句的,但是看到前面一篇的反映不是很理想,所以也沒動力了,原計劃下面還想寫個「貪吃蛇」的,看看再說吧,直接上源代碼。
這次在上一篇程式的基礎上增加了以下功能:
1、鍵盤控制
2、開始、暫停
##3、消除時候空行的停頓效果4、隨著消除行數的增多,速度加快#5、音效等等。 程式碼裡的註解已經很詳細了,上一篇模型的程式碼基本上沒改動,只是增加了控制和圖形的程式碼,自己感覺寫的還是比較有條理的。提示:本文中的俄羅斯方塊遊戲需要Chrome #瀏覽器才能得到最好的運作效果,Firefox 瀏覽器也可以運行,但沒有聲音效果。
後面囉嗦兩句,願意看的就看看。 這部分程式碼主要由兩個計時器組成。
第一個定時器每間隔一段時間就產生一個 TickMessage 訊息,對這個訊息的處理就是使方塊下落,下落後每消去一次,觸發的速度就更快一點。 第二個計時器是訊息因為整個遊戲的模型部分和控制部分會產生很多的事件,誰也不知道用戶什麼時候按下按鍵,所以這裡維護了一個訊息隊列。
一旦有新的情況產生,就在訊息佇列裡面添加上一條對應的訊息,而訊息循環不停的從裡面取出訊息,只要有就取出一條,並處理它。 圖形部分,重點是要把七種顏色的小方塊事先繪製好,並快取起來,後面需要的時候直接使用。否則臨時繪製的話,隨著方塊的增多,程式會出現卡死現象。
以上是HTML5邊玩邊學(十)-俄羅斯方塊之控制界面篇(源碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!