| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 贪吃蛇小游戏 -> 正文阅读 |
|
[游戏开发]贪吃蛇小游戏 |
<!doctype html> <html> <body> <!-- Canvas 画布 --> <canvas id="can" width="400" height="400" style="background:Black"></canvas> <script> var snake = [42], //初始化位置 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 = snake[1] - snake[0] == (n = [-1, -20, 1, 20][(e || event).keyCode - 37] || fx) ? fx : n }; ! function() { snake.unshift(n = snake[0] + fx);? if (snake.indexOf(n, 1) > 0 || n < 0 || n > 399 || fx == 1 && n % 20 == 0 || fx == -1 && n % 20 == 19) { console.log(n); return alert("GAME OVER"); } draw(n, "Lime"); if (n == dz) { //判断蛇头的位置是否和食物的位置重合 math = Math.random() * 400; while (snake.indexOf(dz = ~~(math)) >= 0); draw(dz, "Yellow"); } else draw(snake.pop(), "Black");? setTimeout(arguments.callee, 130); //arguments.callee自身函数的重复执行(递归调用) }(); </script> </body> </html> |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/15 14:42:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |