<!DOCTYPE HTML>
<html>
<body>
<canvas id="myCanvas" width="400" height="400" style="border:1px solid #c3c3c3;"></canvas>
<script type="text/javascript">
var c = document.getElementById("myCanvas");
var time = 160; //蛇的速度
var cxt = c.getContext("2d");
var x = y = 8;
var a = 0; //食物坐标
var t = 10; //舍身长
var map = []; //记录蛇运行路径
var size = 8; //蛇身单元大小
var direction = 2; // 1 向上 2 向右 0 左 3下
interval = window.setInterval(set_game_speed, time); // 移动蛇
function set_game_speed() { // 移动蛇
switch (direction) {
case 1:
y = y - size;
break;
case 2:
x = x + size;
break;
case 0:
x = x - size;
break;
case 3:
y = y + size;
break;
}
if (x > 400 || y > 400 || x < 0 || y < 0) {
alert("你挂了,失败原因:碰壁了.....");
window.location.reload();
}
for (var i = 0; i < map.length; i++) {
if (parseInt(map[i].x) == x && parseInt(map[i].y) == y) {
alert("你挂了,失败原因:撞到自己.....");
window.location.reload();
}
}
if (map.length > t) { //保持舍身长度
var cl = map.shift(); //删除数组第一项,并且返回原元素
cxt.clearRect(cl['x'], cl['y'], size, size);
};
map.push({
'x': x,
'y': y
}); //将数据添加到原数组尾部
cxt.fillStyle = "pink"; //内部填充颜色
cxt.strokeStyle = "pink"; //边框颜色
cxt.fillRect(x, y, size, size); //绘制矩形
if ((a * 8) == x && (a * 8) == y) { //吃食物
rand_frog();
t++;
}
}
document.onkeydown = function(e) { //改变蛇方向
var code = e.keyCode - 37;
switch (code) {
case 1:
direction = 1;
break; //上
case 2:
direction = 2;
break; //右
case 3:
direction = 3;
break; //下
case 0:
direction = 0;
break; //左
}
}
// 随机放置食物
function rand_frog() {
a = Math.ceil(Math.random() * 50);
cxt.fillStyle = "#000000"; //内部填充颜色
cxt.strokeStyle = "#000000"; //边框颜色
cxt.fillRect(a * 8, a * 8, 8, 8); //绘制矩形
}
// 随机放置食物
rand_frog();
</script>
</body>
</html>
林当时
- 粉丝: 114
- 资源: 1万+
最新资源
- 自驾游拼团小程序的设计与实现+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 电机控制 龙伯格观测器 永磁同步电机无传感器控制 全C代码程序 成熟产品方案 DSP28335 (1)全C程序完成由电机参数、电流微分方程构建dq轴误差模型、控制参数逻辑变、低通滤波器转速滤波和转子
- PEMFC(质子交膜燃料电池)模型: 建模平台:Matlab2022 Simulink 模型介绍:密歇根大学的模型,保证可运行 密歇根大学模型:质子交膜燃料模型主要部分有空压机模型,供气系统模型
- 基于鲸鱼优化算法优化高斯过程回归预测(WOA-GPR) 代码含注解(时间有限,就不) 多输入单输出 数据存入Excel,替方便 数据来源:相关向量机模型在边坡稳定性预测中的应用
- 中学综合素质笔记2.docx
- 全开源代码 无感FOC风机代码 国产M0核风机量产程序开发方案… FOC电机控制开发方案…3电阻采样 一份基于国产M0核MCU平台, 风机量产程序,包含龙博格电机观测器,SVPWM,顺逆风启动,五段
- BLDC无刷直流电机Simulink模型(数学方法搭建) 版本:marlab2018a,可生成低版本 包括:模型,设计文档,电机参数m文件 仿真时在第三秒加入3Nm的负载,图中为模型和仿真结果(输出扭
- COMSOL三次谐波THG产生模拟(文章复现)
- 基于cruise的燃料电池功率跟随仿真,按照丰田氢能源车型搭建,在wltc工况下跟随效果好,最高车速175,最大爬坡30,百公里9s均已实现 1.模型通过cruise simulink联合仿真,策略
- 党员之家服务系统小程序--论文-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.zip
- 大学生闲置物品交易平台的分析与设计+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 懂球短视频微信小程序SpringBoot-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 大学生心理健康服务+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 大学生就业平台微信小程序+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 个人健康信息管理小程序-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.zip
- 高校校园交友微信小程序springboot-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈