贪吃蛇javascript版本.doc_第1页
贪吃蛇javascript版本.doc_第2页
贪吃蛇javascript版本.doc_第3页
贪吃蛇javascript版本.doc_第4页
贪吃蛇javascript版本.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java编码规范功能完整,无bug代码如下:无标题文档var onStart = true;var allwh = 600;var snakewh = 20;var isSnake = true;/用于初始化蛇var isFood = true; /用于记录是否产生食物var avoidBack = true;/用于防止回走var firstDir = ;/初始方向var dir = ;/按键方向var changW;var changH;var snakeArray = new Array;/蛇的ID (内涵坐标)var foodCount = 0;var gameOver = false;var maxScore = 0;var nowScore =0;/var speed = 0;var XXYY = 0,0;var Time = 400;function loopbegin()/alert(Time = +Time);if(onStart)t = setInterval(begin(),150);onStart = false;function begin()removeSnakeFood();initSnake();/初始化蛇createFood();/初始化食物meetSnakeFood();/蛇与食物相遇moveSnake();checkSnakeOut();checkSnakeEatSelf();/getMessage();function getMessage()var changS = 2;var L = snakeArray.length;if(L5)changS = 2;else if(L10)changS = 4;else if(L15)changS = 6;else if(L20)changS = 8;else changS = 10;nowScore += changS;if(maxScorenowScore)maxScore = nowScore;if(L=20)Time = Time - L;if(Time=80)Time = 80;speed = parseInt(1000/Time*10)/10.0;stopSnake();loopbegin();NowScore.innerHTML=当前得分:+nowScore;MaxScore.innerHTML=最高分:+maxScore;Spend.innerHTML=当前速度每秒走 +speed+格;function removeSnakeFood()if(gameOver)isSnake = true;/用于初始化蛇isFood = true;/清除食物var all = document.getElementById(all);for(var i=0; i=foodCount; i+)var food = document.getElementById(food+i);all.removeChild(food);snakeArray.length = 0;gameOver = false;foodCount = 0;/Time = 500;/nowScore = 0;function initSnake()if(isSnake) var snakeT = document.getElementById(snakeT);var snakeT_x = parseInt(Math.random()*(allwh/snakewh-8)+4)*snakewh;var snakeT_y = parseInt(Math.random()*(allwh/snakewh-8)+4)*snakewh;snakeT.style.left = snakeT_x+px;snakeT.style.top = snakeT_y+px;snakeT.style.backgroundColor=#000000;snakeT.style.borderColor = #000000;snakeArray.push(snakeT);/蛇头进站var keyCode =parseInt(Math.random()*4)+37;if(keyCode=37)firstDir=left;changW = -snakewh;changH = 0;else if(keyCode=38)firstDir=top;changW = 0;changH = -snakewh;else if(keyCode=39)firstDir=right;changW = snakewh;changH = 0;else if(keyCode=40)firstDir=bottom;changW = 0;changH = snakewh;isSnake = false;function createFood()var all = document.getElementById(all);var food_x;var food_y;if(isFood)var food = document.createElement(div);var strW = ;var strH = ;for(var i=0; isnakeArray.length; i+)var snakeNode_x = snakeArrayi.style.left;var snakeNode_y = snakeArrayi.style.top;snakeNode_x = snakeNode_x.substring(0,snakeNode_x.indexOf(px);snakeNode_y = snakeNode_y.substring(0,snakeNode_y.indexOf(px);strWi = snakeNode_x;strHi = snakeNode_y;var flag;doflag = false;food_x = parseInt(Math.random()*(allwh/snakewh-0)+0)*snakewh;food_y = parseInt(Math.random()*(allwh/snakewh-0)+0)*snakewh;for(var i=0; i0; i-)/移动蛇的数组 后移一各snakeArrayi = snakeArrayi-1;snakeArray0 = temp;snake01_x = parseInt(snake01_x)+changW;snake01_y = parseInt(snake01_y)+changH;XXYY0 = snakeArray0.style.left;XXYY1 = snakeArray0.style.top;snakeArray0.style.left =snake01_x+px;snakeArray0.style.top =snake01_y+px;snakeArray0.style.backgroundColor = #000000;snakeArray0.style.borderColor = #000000;avoidBack = true;/用于防止误走function checkSnakeEatSelf()for(var i=1; isnakeArray.length; i+)if(snakeArray0.style.top=snakeArrayi.style.top&snakeArray0.style.left=snakeArrayi.style.left)GameOver();function checkSnakeOut()var snake01_X = snakeArray0.style.left;var snake01_Y = snakeArray0.style.top;snake01_X = snake01_X.substring(0,snake01_X.indexOf(px);snake01_Y = snake01_Y.substring(0,snake01_Y.indexOf(px);if(snake01_X580|snake01_Y580)snakeArray0.style.left = XXYY0;snakeArray0.style.top = XXYY1;snakeArray0.style.backgroundColor=#00FF00; snakeArray0.style.borderColor=#00FF00;if(snakeArray.length1)snakeArray1.style.backgroundColor=#FF0000; snakeArray1.style.borderColor=#FF0000;GameOver();function GameOver()alert(OVER! GameOver();clearInterval(t);gameOver = true;avoidBack = true;/用于防止回走onStart = true;/foodCount = 0;Time = 400;nowScore = 0;NowScore.innerHTML=当前得分:+0;/MaxScore.innerHTML=最高分:+maxScore;Spend.innerHTML=当前速度每秒走 +0+格;function startKeyEvent()/alert(调用startKeyEvent();document.onkeydown = startKey;/函数function startKey()var keyCode = event.keyCode;/var dir;switch(keyCode)case 37:dir = left;break;case 38:dir = top;break;case 39:dir = right;break;case 40:dir = bottom;break;if(avoidBack=true)if(firstDir=left&dir!=right)if(dir=top)changW = 0;changH = -snakewh;else if(dir=bottom)changW = 0;changH = snakewh;firstDir = dir;else if(firstDir=right&dir!=left)if(dir=top)changW = 0;changH = -snakewh;else if(dir=bottom)changW = 0;changH = snakewh;firstDir = dir;else if(firstDir=top&dir!=bottom)if(dir=left)changW = -snakewh;changH = 0; else if(dir=right)changW = snakewh;changH = 0; firstDir = dir;else if(firstDir=bottom&dir!=top)if(dir=left)changW = -snakewh;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论