tangloong的gravatar头像
tangloong2016-03-23 10:28:28

js开发实现简单贪吃蛇游戏(20行代码)

曾经诺基亚的贪吃蛇风靡一时,在游戏匮乏的年代,用java实现太难,现在网页制作20行代码就做成一个简单的demo了,时代在进步啊

代码:

<!doctype html>
<html>
<body>
<canvas id="can" width="400" height="400" style="background:Black"></canvas>
<script>
    var sn=[42,41],dz=43,fx=1,n,ctx=document.getElementById("can").getContext("2d");
    function draw(t,c){
        ctx.fillStyle=c;
        ctx.fillRect(t%20*20+1,~~(t/20)*20+1,18,18);
    }
    document.onkeydown=function(e){fx=sn[1]-sn[0]==(n=[-1,-20,1,20][(e||event).keyCode-37]||fx)?fx:n};
    !function(){
        sn.unshift(n=sn[0]+fx);
        if(sn.indexOf(n,1)>0 || n<0||n>399||fx==1&&n%20==0||fx==-1&&n%20==19) return alert("GAME OVER");
        draw(n,"Lime");
        if(n==dz){
            while(sn.indexOf(dz=~~(Math.random()*400))>=0);
            draw(dz,"Yellow");
        }else
            draw(sn.pop(),"Black");
        setTimeout(arguments.callee,130);
    }();
</script>
</body>
</html>

这是开始游戏:

js开发实现简单贪吃蛇游戏(20行代码)

这是游戏结束:

js开发实现简单贪吃蛇游戏(20行代码)

文件名:snakeat.zip,文件大小:0.599K下载
  • /
    • /snakeat.html
最代码最近下载分享源代码列表最近下载
kckckc昨天
暂无贡献等级
3199234006月21日
最代码贡献等级说明
cao19925月27日
暂无贡献等级
风之dog5月15日
最代码贡献等级说明
cyr9211044月23日
暂无贡献等级
mushuihan4月6日
暂无贡献等级
zhaoguozhen3月6日
暂无贡献等级
林先生2月9日
暂无贡献等级
33669833282月6日
暂无贡献等级
ts105421月23日
最代码贡献等级说明
最代码最近浏览分享源代码列表最近浏览
guibin7101小时前
暂无贡献等级
暂无贡献等级
kckckc昨天
暂无贡献等级
暂无贡献等级
暂无贡献等级
骑驴找马6月26日
暂无贡献等级
fxywmt6月26日
暂无贡献等级
余白空6月25日
最代码贡献等级说明
14389930226月23日
暂无贡献等级
yangqin20186月23日
暂无贡献等级
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友