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
最代码最近下载分享源代码列表最近下载
ts105423小时前
最代码贡献等级说明
zhangjie1141月3日
暂无贡献等级
taoge62016年12月21日
暂无贡献等级
j局外人2016年12月21日
暂无贡献等级
范雪飞2016年12月21日
暂无贡献等级
程序猿而已2016年12月20日
暂无贡献等级
dfwe32222016年12月16日
暂无贡献等级
hweije2016年12月13日
暂无贡献等级
稻草人122016年12月7日
暂无贡献等级
shiwenyi2016年12月1日
暂无贡献等级
最代码最近浏览分享源代码列表最近浏览
ts105423小时前
最代码贡献等级说明
暂无贡献等级
暂无贡献等级
3963706111月17日
暂无贡献等级
zui_li1月16日
暂无贡献等级
ahviplc1月16日
最代码贡献等级说明
sky1月12日
最代码贡献等级说明
28762859341月11日
暂无贡献等级
wq3896580161月10日
暂无贡献等级
阳光li1月10日
暂无贡献等级
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友