用最少的JS代碼寫出貪吃蛇游戲
曾經(jīng)諾基亞的貪吃蛇風(fēng)靡一時,在游戲匱乏的年代,用java實現(xiàn)太難,現(xiàn)在網(wǎng)頁制作20行代碼就做成一個簡單的demo了,時代在進步啊
完整腳本代碼:
<!doctype html> <html> <body> <canvas id="can" width="400" height="400" style="background: Black"></canvas> <script> var sn = [ 42, 41 ], dz = 43, fx = 1, n, ctx = document.getElementById("can").getContext("2d"); function draw(t, c) { ctx.fillStyle = c; ctx.fillRect(t % 20 * 20 + 1, ~~(t / 20) * 20 + 1, 18, 18); } document.onkeydown = function(e) { fx = sn[1] - sn[0] == (n = [ -1, -20, 1, 20 ][(e || event).keyCode - 37] || fx) ? fx : n }; !function() { sn.unshift(n = sn[0] + fx); if (sn.indexOf(n, 1) > 0 || n<0||n>399 || fx == 1 && n % 20 == 0 || fx == -1 && n % 20 == 19) return alert("GAME OVER"); draw(n, "Lime"); if (n == dz) { while (sn.indexOf(dz = ~~(Math.random() * 400)) >= 0); draw(dz, "Yellow"); } else draw(sn.pop(), "Black"); setTimeout(arguments.callee, 130); }(); </script> </body> </html>
以上就是腳本之家為大家分享的最簡代碼寫出貪吃蛇游戲的全部內(nèi)容,如果大家有更好的方法可以在下方的留言區(qū)討論,感謝你對腳本之家的支持。
相關(guān)文章
帶有定位當(dāng)前位置的百度地圖前端web api實例代碼
這篇文章主要介紹了帶有定位當(dāng)前位置的百度地圖前端web api實例代碼 的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-06-06使用element-ui的upload組件上傳代碼包時遇到的問題小結(jié)
這篇文章主要介紹了使用element-ui的upload組件上傳代碼包時遇到的問題及總結(jié),本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-12-12原生javascript實現(xiàn)addClass,removeClass,hasClass函數(shù)
這篇文章主要介紹了原生javascript實現(xiàn)addClass,removeClass,hasClass函數(shù)的相關(guān)代碼,有需要的小伙伴可以參考下2016-02-02JavaScript實現(xiàn)給數(shù)字添加千位分隔符
這篇文章主要為大家詳細介紹了JavaScript如何實現(xiàn)給數(shù)字添加千位分隔符,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11JavaScript定時器設(shè)置、使用與倒計時案例詳解
這篇文章主要介紹了JavaScript定時器設(shè)置、使用與倒計時案例,詳細分析了javascript定時器的設(shè)置、取消、循環(huán)調(diào)用并附帶一個倒計時功能應(yīng)用案例,需要的朋友可以參考下2019-07-07JAVASCRIPT車架號識別/驗證函數(shù)代碼 汽車車架號驗證程序
偶然中在CSDN里找到C#版的驗證程序,因此改編了一版JS版本,相信會對大家有用2012-01-01