本文实例为大家分享了js实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下
<script> class Map{ constructor(){ this.w = 800; this.h = 400; this.c = "#ccc"; this.createEle(); } createEle(){ this.mapEle = document.createElement("div"); this.mapEle.style.cssText = `width:${this.w}px;height:${this.h}px;background:${this.c};margin:0 auto;position:relative;border:solid 10px black;`; document.body.appendChild(this.mapEle); } } class Food{ constructor(){ this.w = 20; this.h = 20; this.c = "red"; this.x = 0; this.y = 0; this.createEle(); } createEle(){ this.foodEle = document.createElement("div"); this.foodEle.style.cssText = `width:${this.w}px;height:${this.h}px;background:${this.c}; position:absolute;left:${this.x * this.w}px;top:${this.y * this.h}px;`; m.mapEle.appendChild(this.foodEle); } randomPos(){ this.x = random(0,(m.w-this.w) / this.w); this.y = random(0,(m.h-this.h) / this.h); this.foodEle.style.left = this.x * this.w + "px"; this.foodEle.style.top = this.y * this.h + "px"; } } class Snake{ constructor(){ this.w = 20; this.h = 20; this.body = [{ ele:null, x:4, y:3, c:randomColor() },{ ele:null, x:3, y:3, c:randomColor() },{ ele:null, x:2, y:3, c:randomColor() }]; this.d = "right"; this.createEle(); } createEle(){ for(var i=0;i<this.body.length;i++){ if(!this.body[i].ele){ this.body[i].ele = document.createElement("div"); m.mapEle.appendChild(this.body[i].ele); } this.body[i].ele.style.cssText = `width:${this.w}px;height:${this.h}px;background:${this.body[i].c}; position:absolute;left:${this.body[i].x * this.w}px;top:${this.body[i].y * this.h}px;`; } this.body[0].ele.innerHTML = "0"; setTimeout(()=>{ this.move(); },300); } move(){ for(var i=this.body.length-1; i>0; i--){ this.body[i].x = this.body[i-1].x; this.body[i].y = this.body[i-1].y; } switch(this.d){ case "left": this.body[0].x -= 1; break; case "right": this.body[0].x += 1; break; case "top": this.body[0].y -= 1; break; case "bottom": this.body[0].y += 1; break; } if(this.body[0].x < 0 || this.body[0].y < 0 || this.body[0].x > ((m.w-this.w) / this.w) || this.body[0].y > ((m.h-this.h) / this.h)){ alert("撞墙了"); return; } if(this.body[0].x === f.x && this.body[0].y === f.y){ this.body.push({ ele:null, x:this.body[this.body.length-1].x, y:this.body[this.body.length-1].y, c:randomColor() }) f.randomPos(); } for(var i=1;i<this.body.length;i++){ if(this.body[0].x == this.body[i].x && this.body[0].y == this.body[i].y){ alert("撞到自己了"); return; } } this.createEle(); } direct(type){ switch(type){ case 37: if(this.d === "right") break; this.d = "left"; break; case 38: if(this.d === "bottom") break; this.d = "top"; break; case 39: if(this.d === "left") break; this.d = "right"; break; case 40: if(this.d === "top") break; this.d = "bottom"; break; } } } function random(a,b){ return Math.round(Math.random()*(a-b)+b) } function randomColor(){ return `rgb(${random(0,255)},${random(0,255)},${random(0,255)})` } var m = new Map(); var f = new Food(); f.randomPos(); var s = new Snake(); document.onkeydown = function(eve){ var e = eve || window.event; var code = e.keyCode || e.which; s.direct(code); } </script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍C语言贪吃蛇经典小游戏,包括了C语言贪吃蛇经典小游戏的使用技巧和注意事项,需要的朋友参考一下 一、贪吃蛇小游戏简介: 用上下左右控制蛇的方向,寻找吃的东西,每吃一口就能得到一定的积分,而且蛇的身子会越吃越长,身子越长玩的难度就越大,不能碰墙,也不能咬到自己的身体,等到了一定的分数,就能过关。 二、函数框架 三、数据结构 定义蛇的结构体,利用单链表来表示蛇,每个结点为蛇身体的一部分。
本文向大家介绍原生js实现贪吃蛇游戏,包括了原生js实现贪吃蛇游戏的使用技巧和注意事项,需要的朋友参考一下 原生JavaScript实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 代码: 代码仅有js部分,完整代码可以上我的github免费下载 更多有趣的经典小游戏实现专题,分享给大家: C++经典小游戏汇总 python经典小游戏汇总 python俄罗斯方块游戏集合 JavaScript经典
本文向大家介绍python实现贪吃蛇游戏,包括了python实现贪吃蛇游戏的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 本文稍作改动,修复一些bug,原文链接:python实现贪吃蛇游戏 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍js实现贪吃蛇游戏(简易版),包括了js实现贪吃蛇游戏(简易版)的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 直接开始 效果图: 项目结构:图片自己找的 1.html 2.area.js 3.config.js 4.food.js 5.init.js 6.move.js 7.score.js 8.snake.js
本文向大家介绍纯原生js实现贪吃蛇游戏,包括了纯原生js实现贪吃蛇游戏的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 更多有趣的经典小游戏实现专题,分享给大家: C++经典小游戏汇总 python经典小游戏汇总 python俄罗斯方块游戏集合 JavaScript经典游戏 玩不停 java经典小游戏汇总 javascript经典
本文向大家介绍jsp网页实现贪吃蛇小游戏,包括了jsp网页实现贪吃蛇小游戏的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了jsp网页实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 一、主要思路 (1)第一步实现地图。 (2)第二步实现蛇身。 (3)第三步实现食物。 (4)第四步实现移动吃食物。 (5)第五步实现规则(撞墙游戏结束)。 二、代码实现 三、实现效果 按方向键实现蛇身