之前閑時開發(fā)過一個簡單的網(wǎng)頁版貪食蛇游戲程序,現(xiàn)在把程序的實現(xiàn)思路寫下來,供有興趣同學(xué)參考閱讀。
代碼的實現(xiàn)比較簡單,整個程序由三個類,一組常量和一些游戲邏輯以外的初始化和控制代碼組成,總共400多行JavaScript。
游戲中的三個類分別是「組成蛇身體的節(jié)點」「蛇」「貪食蛇游戲」的抽象,常量用來表示游戲中的各種狀態(tài)。
先從常量講起
var TRANSVERSE = 30;var VERTICAL = 40;var LEFT = 1;var RIGHT = 2;var TOP = 3;var BOTTOM = 4;var GAME_START = 1;var GAME_STOP = 2;var GAME_OVER = 3
首先,可以把游戲的邏輯想象成一個不斷變換的數(shù)據(jù)結(jié)構(gòu),把游戲的界面想象成由一組像素格子組成的長方形,界面渲染程序定時讀取游戲數(shù)據(jù)結(jié)構(gòu),將數(shù)據(jù)結(jié)構(gòu)中不同的值表示成不同的顏色并畫在游戲界面上。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26