使用grunt-contrib-copy自动复制文件

2014-04-05 · 8 min read

在使用 GruntJS 自动化工具的打包编译的时候,有时需要将一些文件直接复制到目标文件夹(不经过编译,压缩,合并什么的,例如图片文件),这时候 grunt-contrib-copy 就派上用场了。今天就拿Flappy Pig的代码来说说怎么用 grunt-contrib-copy 自动复制文件。

SVN回滚版本

2014-04-05 · 10 min read

SVN 是一个版本管理工具,在工作中经常使用,尤其是多人合作开发的时候,版本管理显得更加重要。需要使用回退的场景往往都比较“紧急”,今天就记录一下在使用 SVN 的时候怎么回退到指定的版本,方便以后随时查看。

《Flappy Pig》被高手破解,代码分析

2014-03-05 · 8 min read

2014-11-14 更新:

其实那段“乱七八糟”的代码不是手写的,可以使用jjencode这个工具生成。

正文:

今天早晨刚起来,看到一个朋友(@Laix)的留言,他留了一段“奇怪的代码”,说在控制台执行会发生神奇的事情:

_=~[];_={___:++_,$$$$:(![]+"")[_],__$:++_,$_$_:(![]+"")[_],_$_:++_,$_$$:({}+"")[_],$$_$:(_[_]+"")[_],_$$:++_,$$$_:(!""+"")[_],$__:++_,$_$:++_,$$__:({}+"")[_],$$_:++_,$$$:++_,$___:++_,$__$:++_};_.$_=(_.$_=_+"")[_.$_$]+(_._$=_.$_[_.__$])+(_.$$=(_.$+"")[_.__$])+((!_)+"")[_._$$]+(_.__=_.$_[_.$$_])+(_.$=(!""+"")[_.__$])+(_._=(!""+"")[_._$_])+_.$_[_.$_$]+_.__+_._$+_.$;_.$$=_.$+(!""+"")[_._$$]+_.__+_._+_.$+_.$$;_.$=(_.___)[_.$_][_.$_];_.$(_.$(_.$$+"\""+_.$$$$+(![]+"")[_._$_]+_.$_$_+"\\"+_.__$+_.$$_+_.___+"\\"+_.__$+_.$$_+_.___+"\\"+_.__$+_.$$$+_.__$+".\\"+_.__$+_.$_$+_.__$+"\\"+_.__$+_.$_$+_.$$_+"\\"+_.__$+_.$_$+_.__$+_.__+"();"+"\"")())();

后记:上万访问量的考验

2014-03-05 · 9 min read

如何搭建个人网站系列:

  1. 域名和空间
  2. 熟悉 Linux
  3. 安装 LNMP 和 wordpress
  4. 小内存 VPS 优化
  5. 自动定时备份 VPS
  6. 后记:上万访问量的考验

在这个系列文章完成一个多月后,有了这篇后记,原因是前些天的“javascript 小游戏”,得到了不少朋友的支持,很多人试玩了游戏,访问量达到了一万左右,下面是百度统计的数据:

原生javascript写的小游戏《Flappy Pig》

2014-03-05 · 13 min read

Flappy Pig,是 Pig,使用原生 javascript 写的网页版“Flappy Bird”。我也奇了个怪为什么搞这个东西出来,而且还花了一天宝贵的周末,但是既然写出来,就拿出来和大家分享一下,点击在线试玩(没有做兼容性测试,所以请用现代浏览器)。

整个程序,主要分几个部分:全局设置和工具函数,pig 类(控制猪的跳跃,掉落等),柱子类(渲染柱子,控制柱子移动),位置判断(判断 pig 有没有撞到柱子上),controller(控制器,初始化各个类,全局设置,计时器的开始和结束,UI 控制等),主函数(程序起点),接下来说下程序的几个难点: