直接上效果图:

通过左右下控制方向,上改变形状。

game over

var domain="www.zuidaima.com";

var author="zuidaima";

var map=eval("["+Array(23).join("0x801,")+"0xfff]");

var tatris=[[0x6600],[0x2222,0xf00],[0xc600,0x2640],[0x6c00,0x4620],[0x4460,0x2e0,0x6220,0x740],[0x2260,0xe20,0x6440,0x4700],[0x2620,0x720,0x2320,0x2700]];

var keycom={"38":"rotate(1)","40":"down()","37":"move(2,1)","39":"move(0.5,-1)"};

var dia, pos, bak, run;

function start(){

dia=tatris[~~(Math.random()*7)];

bak=pos={fk:[],y:0,x:4,s:~~(Math.random()*4)};

rotate(0);

}

function over(){

document.οnkeydοwn=null;

clearInterval(run);

alert("GAME OVER");

}

function update(t){

bak={fk:pos.fk.slice(0),y:pos.y,x:pos.x,s:pos.s};

if(t) return;

for(var i=0,a2=""; i<22; i++)

a2+=map[i].toString(2).slice(1,-1)+"
";

for(var i=0,n; i<4; i++)

if(/([^0]+)/.test(bak.fk[i].toString(2).replace(/1/g,"\u25a1")))

a2=a2.substr(0,n=(bak.y+i+1)*15-RegExp.$_.length-4)+RegExp.$1+a2.slice(n+RegExp.$1.length);

document.getElementById("box").innerHTML=a2.replace(/1/g,"\u25a0").replace(/0/g,"\u3000");

}

function is(){

for(var i=0; i<4; i++)

if((pos.fk[i]&map[pos.y+i])!=0) return pos=bak;

}

function rotate(r){

var f=dia[pos.s=(pos.s+r)%dia.length];

for(var i=0; i<4; i++)

pos.fk[i]=(f>>(12-i*4)&15)<

update(is());

}

function down(){

++pos.y;

if(is()){

for(var i=0; i<4 && pos.y+i<22; i++)

if((map[pos.y+i]|=pos.fk[i])==0xfff)

map.splice(pos.y+i,1), map.unshift(0x801);

if(map[1]!=0x801) return over();

start();

}

update();

}

function move(t,k){

pos.x+=k;

for(var i=0; i<4; i++)

pos.fk[i]*=t;

update(is());

}

document.οnkeydοwn=function(e){

eval(keycom[(e?e:event).keyCode]);

};

start();

run=setInterval("down()",400);

html俄罗斯方块游戏代码,史上最短小精悍的javascript编写的俄罗斯方块游戏,仅仅60行代码...相关推荐

  1. 史上最昂贵的 Javascript 代码(转)

    Opera 公司在大规模采购服务器的过程中,发现了史上最昂贵的 Javascript 代码.由于这行代码,此服务器供应商成功丢掉了百万订单. 缘起: 前一段时间,Opera 浏览器公司需要越来越多的服 ...

  2. 直击面试现场:神级程序员仅100秒,60行代码写出俄罗斯方块,成为全公司焦点!...

    小编我今天逛论坛看到一位HR帖子直播公司面试情况,该公司是做棋牌APP的,现在正在招聘前端工程师和运营人员,HR直播的是前端这块的,有写游戏的也有做网站项目的,写特效的都有很多,但是这位HR却看上了一 ...

  3. GameBuilder开发游戏应用系列之60行代码实现FlappyBird

    在线演示:http://osgames.duapp.com/apprun.html?appid=osgames1-911422256817006 在线编辑:http://osgames.duapp.c ...

  4. 菜鸟最爱,60行代码打造一款音乐播放器!

    点上方"菜鸟学Python",选择"星标" 第467篇原创干货,第一时间送达 大家好,我是菜鸟哥! 对于小伙伴们来说,在日常的学习和工作中,很多人都喜欢边听音乐 ...

  5. 用javascript编写的小游戏-打砖块

    用javascript编写的小游戏-打砖块 前言 启发 下载链接 游戏功能说明 代码效果演示 代码 后记 前言 这是我在CSDN发表的第一篇文章.是我在初学javascript后, 忽然来了兴致, 编 ...

  6. JavaScript开发区块链只需200行代码

    JavaScript开发区块链只需200行代码 用JavaScript开发实现一个简单区块链.通过这一开发过程,你将理解区块链技术是什么:区块链就是一个分布式数据库,存储结构是一个不断增长的链表,链表 ...

  7. java粒子特效_程序员20分钟搞定粒子效果, 仅仅200行代码

    原标题:程序员20分钟搞定粒子效果, 仅仅200行代码 这粒子的打造,确实没有布局代码,稍后大家在源码上可以看到,css代码都只有几行,绝大部分代码都是java代码,而且是原生java书写的,现在很多 ...

  8. 仅仅9行代码 爬取教务处成绩 仅用2个模块 正方教务系统

    先挖个坑,最近几天补上,这是个最最最简单的爬虫了吧! 有点标题党了哈,其实把url,header,data都直接填入函数,session不拆开写,确实仅仅9行!然后仅仅9行代码. 想看的先收藏吧,别之 ...

  9. python居然能语音控制电脑壁纸切换,只需60行代码

    前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 家在日常的电脑使用中,都会有自己喜爱类型的桌面 单纯的桌面有时候会让人觉得单调 今天,就由我带领大家只用60行代码打造一款语音壁纸切换器程序, 让大家能够 ...

  10. 【线程池】自行准备linux环境,带你手写线程池,只需仅仅150行代码|内存池|API|连接池|应用协议丨C/C++Linux服务器开发

    [线程池]自行准备linux环境,带你手写线程池,只需仅仅150行代码 视频讲解如下,点击观看: [线程池]自行准备linux环境,带你手写线程池,只需仅仅150行代码|内存池|API|连接池|应用协 ...

最新文章

  1. java从入门到精通_想要开始学java?你要的java从入门到精通布列如下!
  2. 沟通无国界,云信助力译牛构建远程会议同传新模式
  3. GPU Gems1 - 21 实时辉光(Real-Time Glow)
  4. 几种常见的电话光端机连接图以及电话光端机的连接方式
  5. 题目:[NOIP 2011]计算系数
  6. 谷歌资助OSTIF审计8个重要开源项目,提升软件供应链安全
  7. +0 ≠ -0:多出一个数的补码
  8. 遥感影像数据下载网址
  9. JSFinder自动化脚本一键批量处理URL(附自动执行脚本带whatweb筛选)
  10. Ajax回调函数中return不生效问题
  11. 使用python暴力破解压缩包密码winrar解压密码破解源代码
  12. XPT2046 四线电阻式触摸屏
  13. 【报错】VMware Workstation 与 Device/Credential Guard 不兼容.在禁用 Device/Credenti
  14. vue 高德api Map事件方法封装
  15. uniapp打包的app上架应用商店隐私政策:您的应用在用户同意隐私政策前申请获取用户个人信息
  16. 《IT项目管理》(郭宁编著) 课后习题答案
  17. 微信小程序接入腾讯云的对象存储
  18. 雾霾“倾国倾城” 谣言肆虐你中招了么?
  19. 图书推荐系统项目分享
  20. python学习爬虫之删除无用字符以及空白替换等()

热门文章

  1. 智能电视聚好看连接服务器失败,海信电视网络异常解决办法
  2. 百度地图API和2D/3D地图的转换
  3. activex服务器与com组件,COM和ActiveX控件设计.ppt
  4. 电台复活节_如何通过在控制台中隐藏复活节彩蛋使您的应用程序用户惊讶
  5. 候鸟算法matlab实现
  6. Hexo butterfly 自定义文章封面 主页顶部图片更改
  7. python 自动问答系统_问答系统介绍
  8. 10-Little prince's trip to Java-奇数魔方阵
  9. LTE CAT M1模块为辅助生活系统提供了宽带和智能手机的替代方案
  10. 软件设计·体系结构设计(Architectual Design)