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行代码)

gif动图


打赏

文件名:snakeat.zip,文件大小:0.599K下载
  • /
    • /snakeat.html
最代码最近下载分享源代码列表最近下载
tianlin199512月6日
暂无贡献等级
最代码官方 LV411月17日
最代码贡献等级说明
118393755511月16日
暂无贡献等级
lyh198911月8日
暂无贡献等级
文斌良9月5日
暂无贡献等级
笑面丶8月24日
暂无贡献等级
xlhxlh8月15日
最代码贡献等级说明
xujiajun7月20日
暂无贡献等级
请叫我陌6月29日
最代码贡献等级说明
kckckc6月28日
暂无贡献等级
最代码最近浏览分享源代码列表最近浏览
asdfagg昨天
暂无贡献等级
威66688812月11日
暂无贡献等级
gx11234512月8日
暂无贡献等级
暂无贡献等级
wk96257192012月7日
最代码贡献等级说明
agalis12月7日
暂无贡献等级
食梦xy12月7日
暂无贡献等级
暂无贡献等级
cghzym12月6日
暂无贡献等级
tianlin199512月6日
暂无贡献等级
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友