JS 写的贪吃蛇 无聊发帖散分
已下为 JS 部分代码 ,编写时间较短用了8个小时写的,还有部分 BUG 未解决,娱乐为辅,散分为主。
以下为网络地址:
http://www.needsee.com/game/html.html
- JScript code
<script type="text/javascript" language="javascript">//--------------------------------//----制作者: LZ雨辰//--制作时间: 2010年5月21日//--制作用时: 8小时//--------QQ: *********//-------------------------------- var key=39; //键值 39右键 37左键 38上建 下键40var trailId=''; //记录头部IDvar tailId=''; //记录尾部IDvar tailArray = new Array(); //ID 拆分的数组var randomL=20; //随机数 左IDvar randomR=30; //随机数 右IDvar foodCount=5; //食物数量var count=0; //食物累计var times=200; //行进速度var timeSpace=10; //速度递增值 注意:值必须大于等于1 function $(id){ return document.getElementById(id);} function run(){ //程序入口 d(); //程序主体 r(); $('txtTime').value = times; //行进速度显示} function r(){ //食物随机函数 var randomID = ''; randomL = Math.floor(Math.random()*52+1); randomR = Math.floor(Math.random()*48+1); if(count < foodCount){ randomID = randomL + '_' + randomR; if($(randomID).style.background == 'white' && $(randomID).title == ''){ $(randomID).style.background = 'black'; $(randomID).title = '0'; count++; } }} function d(){ var left=0; var right=0; var up=0; var down=0; var oId=''; tailArray = tailId.split('_'); //0 为左边(-1 上 +1 下) 1 为右边(-1 左 +1 右)尾部ID拆分 //alert(tailId); //------------------------------到此尾部开始 left = Number(tailArray[1]) - 1; if(left >= 1){ //左边预算 var id = tailArray[0] + '_' + left; if($(id).style.background != 'white' && $(id).title == ''){//0 食物 oId = id; } } right = Number(tailArray[1]) + 1; if(right <= 50){ //右边预算 var id = tailArray[0] + '_' + right; if($(id).style.background != 'white' && $(id).title == ''){//0 食物 oId = id; } } up = Number(tailArray[0]) - 1; if(up >= 1){ //上边预算 var id = up + '_' + tailArray[1]; if($(id).style.background != 'white' && $(id).title == ''){//0 食物 oId = id; } } down = Number(tailArray[0]) + 1; if(down <= 55){ //下边预算 var id = down + '_' + tailArray[1]; if($(id).style.background != 'white' && $(id).title == ''){//0 食物 oId = id; } } //alert(tailId); $(tailId).style.background='white';//将先前尾部变色 tailId = oId;//记录预算尾部ID //------------------------------到此尾部结束 //------------------------------到此头部开始 tailArray = trailId.split('_'); //0 为左边(-1 上 +1 下) 1 为右边(-1 左 +1 右)头部ID拆分 if(key == 37){//左 left = Number(tailArray[1]) - 1; if(left >= 1){ //左边预算 var id = tailArray[0] + '_' + left; if($(id).style.background == 'white' && $(id).title == ''){//0 食物 $(id).style.background = 'black'; $(id).title = ''; trailId = id; }else if($(id).style.background == 'black' && $(id).title == '0'){ var ids = tailArray[0] + '_' + (left-1); $(id).style.background = 'black'; $(id).title = ''; $(ids).style.background = 'black'; $(ids).title = ''; trailId = ids; count--; //times -= timeSpace; times = times > timeSpace ? times - timeSpace : timeSpace; }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else if(key == 38){//上 up = Number(tailArray[0]) - 1; if(up >= 1){ //上边预算 var id = up + '_' + tailArray[1]; if($(id).style.background == 'white' && $(id).title == ''){//0 食物 $(id).style.background = 'black'; $(id).title = ''; trailId = id; }else if($(id).style.background == 'black' && $(id).title == '0'){ var ids = (up-1) + '_' + tailArray[1]; $(id).style.background = 'black'; $(id).title = ''; $(ids).style.background = 'black'; $(ids).title = ''; trailId = ids; count--; //times -= timeSpace; times = times > timeSpace ? times - timeSpace : timeSpace; }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else if(key == 39){//右 right = Number(tailArray[1]) + 1; if(right <= 50){ //右边预算 var id = tailArray[0] + '_' + right; if($(id).style.background == 'white' && $(id).title == ''){//0 食物 $(id).style.background = 'black'; $(id).title = ''; trailId = id; }else if($(id).style.background == 'black' && $(id).title == '0'){ var ids = tailArray[0] + '_' + (right+1); $(id).style.background = 'black'; $(id).title = ''; $(ids).style.background = 'black'; $(ids).title = ''; trailId = ids; count--; //times -= timeSpace; times = times > timeSpace ? times - timeSpace : timeSpace; }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else if(key == 40){//下 down = Number(tailArray[0]) + 1; if(down <= 55){ //下边预算 var id = down + '_' + tailArray[1]; if($(id).style.background == 'white' && $(id).title == ''){//0 食物 $(id).style.background = 'black'; $(id).title = ''; trailId = id; }else if($(id).style.background == 'black' && $(id).title == '0'){ var ids = (down+1) + '_' + tailArray[1]; $(id).style.background = 'black'; $(id).title = ''; $(ids).style.background = 'black'; $(ids).title = ''; trailId = ids; count--; //times -= timeSpace; times = times > timeSpace ? times - timeSpace : timeSpace; }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } }else{ $('butNewStart').style.display = 'block'; alert('Game Over !'); times = 600000; } } //------------------------------到此头部结束 setTimeout('run()',times);} //开始 初始位置function Start(id1,id2,id3){ trailId=id3; tailId=id1; times=200; key=39; count=0; $(id1).style.background='black'; $(id2).style.background='black'; $(id3).style.background='black'; $('txtTime').value = times; $('butStart').disabled = 'false'; run();} //重新开始function newStart(){ $('butNewStart').style.display = 'none'; for(var i=1 ; i<=55 ; i++){ for(var j=1 ; j<=50 ; j++){ $(i+'_'+j).style.background='white'; $(i+'_'+j).title = ''; } } Start('1_1','1_2','1_3');} function jumpPage(){ if(event.keyCode == 37){//左 if(key != 39){ key=37; } } if(event.keyCode == 38){//上 if(key != 40){ key=38; } } if(event.keyCode == 39){//右 if(key != 37){ key=39; } } if(event.keyCode == 40){//下 if(key != 38){ key=40; } }}document.onkeydown=jumpPage;</script>
[解决办法]
强。。
[解决办法]
都拿写游戏来玩
[解决办法]
强 ,
[解决办法]
强
[解决办法]
[解决办法]
很OK
[解决办法]
up
[解决办法]
[解决办法]
很强大 呵呵接分了
[解决办法]
js高人
[解决办法]
up.
[解决办法]
呵呵,支持
[解决办法]
楼主你太牛了啊。。JS强人啊。。能收我当你徒弟吗?顶。。
[解决办法]
up.
[解决办法]
- -!厉害
[解决办法]
JS大牛!
[解决办法]
顶个 去玩玩看。
[解决办法]
支持~!
[解决办法]
标记。。。。。。。
[解决办法]
..........................
[解决办法]
强。。。
[解决办法]
牛人哪
[解决办法]
csdb牛人多啊 !!
[解决办法]
好东西
来接分的!
[解决办法]
接分....
[解决办法]
接分!
[解决办法]
[解决办法]
速度玩到了10,速度太快了,承受不住了
[解决办法]
太强了~~
[解决办法]
jf~
[解决办法]
强大滴楼主,当我们还在document.write的时候,你已经在写游戏玩了。。。我们内牛满面啊
[解决办法]
太强了,学习了
[解决办法]
不错哦 顶你。。。。
[解决办法]
膜拜一下!!!!!!!!
------解决方案--------------------
下下来 自己玩玩
[解决办法]
地板,学习学习,改天也弄个来玩玩,呵呵
[解决办法]
[解决办法]
太牛叉了!!!!!!!!
[解决办法]
高人啊~~~
[解决办法]
支持一下!
[解决办法]
厉害!
[解决办法]
牛就一个字~
[解决办法]
经典哦。。。哈哈哈
[解决办法]
强 人
[解决办法]
强 强
[解决办法]
很强。光用js就写出来了。
[解决办法]
进来学习一下
[解决办法]
很好很强大。
[解决办法]
牛,复制到U盘就可以作办公室小游戏~
[解决办法]
何时我也能和大家一样,写出一个像样的程序呀。
[解决办法]
牛人啊
[解决办法]
强人啊,8小时就写了
[解决办法]
nb~~~~
[解决办法]
顶一个,呵
[解决办法]
dddddddddddddddddddddddddddddddd
[解决办法]
这个早有了
[解决办法]
up```~
[解决办法]
每天回帖即可获得10分可用分!
[解决办法]
我是来接分的
[解决办法]
牛人 牛肉 jf
[解决办法]
接分1111
[解决办法]
very 牛!
[解决办法]
牛人 我来接分
[解决办法]
JS牛人
[解决办法]
学啊..
[解决办法]
It's very 的 good + Ding + JF
[解决办法]
学习来了
[解决办法]
强 悍
[解决办法]
厉害,哎,没这能力!
------解决方案--------------------
牛人呀,也来接分了
[解决办法]
我顶你膜拜~~
[解决办法]
请让我叫你一声大哥
[解决办法]
厉害诶
[解决办法]
顶一下 呵呵
[解决办法]
的确很强啊
[解决办法]
强人很强。。。。。JF
[解决办法]
的确很强啊
[解决办法]
学习了,真厉害啊~~~~~~~~
[解决办法]
这么强,还这么谦逊。好人一生平安。
[解决办法]
lz代码牛人啊,思路很清晰,佩服啊!
[解决办法]
不错,有一点点小bug,吃了两个就停了,期待更好的作品.
欢迎加入jsQQ技术交流群:12491096
[解决办法]
很强啊!
[解决办法]
mark^
[解决办法]
楼主很厉害,头像更厉害。
[解决办法]
不错。真的很好。js能做这样的东西是有点难度啊
[解决办法]
我只看不说,沉默是金
[解决办法]
你很牛X。。。。。
[解决办法]
牛人啊
[解决办法]
这个游戏我就写了一半,没功夫写了。
[解决办法]
++++++++++++++fen
[解决办法]
强,我也来顶下!
[解决办法]
强人啊,学习
[解决办法]
果然很强
[解决办法]
楼主 其他部分代码还有吗?
[解决办法]