话不多说直接贴上代码:

<script>window.onload = function(){//定义一些公共变量var gj = document.getElementById("gj");var p2 = gj.getContext("2d");//定义蛇的变量var snake = 3;//定义存储蛇身体的数组var sBody = [];//定义蛇的初始化位置(坐标)var x = y = 0;//定义蛇的初始化运动方向var direction = 39;//定义食物的位置var fx = fy =0;//绘制场景(运动场所)var bg = document.getElementById("bg");var p1 = bg.getContext("2d");p1.strokeStyle="#efefef"var bx = 0;var by = 0;for(var i = 0;i<=40;i++){//1.画横线
              by+=10;p1.moveTo(0,by)p1.lineTo(400,by)p1.stroke();//2.画竖线
              bx+=10;p1.moveTo(bx,0)p1.lineTo(bx,400)p1.stroke();}//调用函数
          putFood();var Run = setInterval(sankeRun,160);//随机放食物function putFood(){fx = Math.ceil(Math.random()*40-1)*10;fy = Math.ceil(Math.random()*40-1)*10;p2.fillStyle="#009900";p2.fillRect(fx,fy,10,10);}document.onkeydown = function(){switch(event.keyCode){case 37: direction = 37;break;//左case 38: direction = 38;break;//上case 39: direction = 39;break;//右case 40: direction = 40;break;//下
            }}//蛇运动function sankeRun(){switch(direction){case 37: x -= 10;break;case 38: y -= 10;break;case 39: x += 10;break;case 40: y += 10;break;}//调整蛇的x方向路径
            p2.fillStyle="#ffff66";p2.fillRect(x,y,10,10);    clear();sBody.push({'x':x , 'y':y});bump();}//擦除尾部function clear(){if(sBody.length>snake){var wb = sBody.shift();p2.clearRect(wb.x,wb.y,10,10);}}//碰撞检测function bump(){//撞墙if(x>=400 || y>=400 || x<=-1 || y<=-1){alert("碰壁而死");clearInterval(Run);x = 0;y = 0;    }//撞自己//for(var i=0;i<=sBody.length;i++){//alert(sBody[i].x+"---"+sBody[i].y);//if(sBody[i].x == x && sBody[i].y == y){//alert("自爆而亡");//clearInterval(Run);//x = 0;//y = 0;    //window.location.reload();//刷新页面//}//}//蛇吃食物if(x == fx && y == fy){snake += 1;putFood();}}}    </script>

效果图 如下:

转载于:https://www.cnblogs.com/qihangzj/p/6610829.html

HTML5----简易贪吃蛇小游戏相关推荐

  1. html5实现贪吃蛇小游戏

    实现技术:h5的canvas+原生js 可直接复制,查看效果 <!doctype html> <html> <head> <meta charset=&quo ...

  2. 简易贪吃蛇小游戏java版_用GUI实现java版贪吃蛇小游戏

    本文实例为大家分享了java版贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 项目结构 新建一个JFrame窗口,作为程序入口 public class GameStart{ public stat ...

  3. python快速实现简易贪吃蛇小游戏

    贪吃蛇(也叫做贪食蛇)游戏是一款休闲益智类游戏,有PC和手机等多平台版本.既简单又耐玩.该游戏通过控制蛇头方向吃蛋,从而使得蛇变得越来越长.  贪吃蛇游戏最初为单机模式,后续又陆续推出团战模式.赏金模 ...

  4. html5实现贪吃蛇小游戏,H5 canvas实现贪吃蛇小游戏

    本文介绍了h5 canvas实现贪吃蛇小游戏,分享给大家,具体如下: 实现效果如下 实现思路: ps:这个只是思路,详细可看代码注释 一.先把蛇画出来 定义一下蛇的结构,用一个数组保存一堆矩形,包含蛇 ...

  5. swing 简易贪吃蛇小游戏开发

    贪吃蛇游戏 1.界面绘制 startGame(启动器界面) package com.company.snake;import javax.swing.*; import java.awt.*;publ ...

  6. python简易贪吃蛇小游戏任务书含代码

    目  录 第一章 绪论 1.1 开发的背景 1.2 开发的目的 1.3 开发的意义 1.4 开发工具简介 第二章 需求分析 (1) 利用方向键来改变蛇的运行方向. (2) 在随机的地方产生食物. (3 ...

  7. c语言小游戏 精简_一个简易的贪吃蛇小游戏C语言源码

    /* *程序名称:贪吃蛇v2.1 *程序描述:一个简易的贪吃蛇小游戏 *版本信息:v2.1 *v1.1版本更新:1:加入菜单选择项 *v1.2版本更新:1:修复菜单选择bug *v1.3班本更新:1: ...

  8. 100行代码,使用 Pygame 制作一个贪吃蛇小游戏!

    作者 | 周萝卜 来源 | 萝卜大杂烩 相信我们大家都玩过贪吃蛇游戏,今天我们就从头一起来写一个贪吃蛇小游戏,只需要100多行的代码就完成了. 用到的 Pygame 函数 贪吃蛇小游戏用到的函数 功能 ...

  9. python100行代码程序-100行python代码,轻松完成贪吃蛇小游戏

    大家小时候都玩过贪吃蛇吧?小编小时候可喜欢拿爸妈的手机玩了,厉害着呢!今天,小编就来用100行代码实现一个简易版的贪吃蛇.在网上,贪吃蛇教程蛮多的,但要安装蛮多库的,而且也不够清晰,今天的代码比较短, ...

  10. python100行代码-怎样写贪吃蛇小游戏?用100行python代码轻松解决!

    大家小时候都玩过贪吃蛇吧?小编小时候可喜欢拿爸妈的手机玩了,厉害着呢!今天,小编就来用100行代码实现一个简易版的贪吃蛇.在网上,贪吃蛇教程蛮多的,但要安装蛮多库的,而且也不够清晰,今天的代码比较短, ...

最新文章

  1. python从入门到放弃图片大全-Python 从入门到放弃(一)
  2. 有关android 应用的plugin框架调研
  3. Spring Boot配置@spring.profiles.active配置
  4. 运行时库例程-acc_get_num_devices
  5. mysql 失效转移_MySQL基于MHA的FailOver过程
  6. java中session的作用_java中session的工作原理是什么?和Cookies有何区别?
  7. 【操作系统】Semaphore处理生产者-消费者问题
  8. Python实现FTP服务器和客户端
  9. 二次元QQ价值评估网源码
  10. Google research 一行预处理代码,让你的CV模型更强!
  11. jenkins 脚本编写_使用Jenkins 2编写以代码形式编写管道和实现DevOps的简介
  12. 【小工匠聊Modbus】07-错误响应
  13. 信号量有没有容量限制?
  14. 关于直线,折线切割平面的问题
  15. win10系统托盘图标不见了_win10托盘图标不显示怎么回事_win10任务栏托盘图标显示不完全如何修复...
  16. 使用Python横向合并excel文件的实例
  17. 2018软科计算机科学工程排行,2018全球计算机与工程学科排名:清华第7,中国9个学科世界第一!...
  18. 计算机常用工具软件实训总结报告,计算机常用工具软件实训报告精编版.doc
  19. 我的工作必装软件清单
  20. Springboot电子病历管理APP毕业设计源码010350

热门文章

  1. springmvc二: @RequestMapping
  2. 人生苦短,我用Python
  3. 机器学习实战笔记(Python实现)-04-Logistic回归
  4. 解释一下为什么我很少jQuery
  5. HTML5 之前的视频播放格式
  6. 执行系统命令,subprocess使用说明
  7. IOS学习动画二之 Core Animation (3)
  8. 阅《领域驱动设计与设计模式实战》
  9. 安装ipvsadm 用make编译出现错误解决方法
  10. 协程、asyncio、异步编程