美文网首页
JavaScriptban春节12响代码

JavaScriptban春节12响代码

作者: DavieKong | 来源:发表于2019-02-21 13:08 被阅读35次

    正文共: 1424字 3图

    预计阅读时间: 4分钟

    在电影《流浪地球》中,苏拉威西三号转向发动机在工程师李一一的调整下,利用“春节十二响”这一程序,将发动机离子流束喷射到距离地球6.5万公里的木星大气上方,随后刘培强通过引燃领航者空间站将火焰进一步引向木星大气,从而引燃木星。

    image

    JavaScript版

    作为一个前端,信奉:

    JavaScript是世界上最好的语言!

    JavaScript是万能的!

    JavaScript拯救世界!

    于是我用JavaScript实现了这个程序,代码如下:

    import hack_engine from 'hack_engine'; //破解行星发送机,获得控制权
    //行星发送机初始化函数
    function init() {
      hack_engine.setEngineNumberMask(12);
      hack_engine.setFuneralLevel(hack_engine.FUNERAL_FULL);
    }
    //主函数,在此启动12座发动机
    async function  main() {
      init()
      for(let i = 0; i < 12;i++){
         await fire(i)
      }
    }
    //发动机启动函数
    function fire(i){
      //每隔3秒钟启动一座
      setTimeout(()=>{
          hack_engine.engines[i].start(i);
      },i*3000)
    }
    //开始按钮点击后,执行start事件函数
    function start(){
      main()
    }
    start()
    

    实现了每隔3秒钟启动一座发动机,测试结果如下:

    image

    代码已经开源,放在Github上,仓库地址:

    https://github.com/cooleye/spring12biubiu

    欢迎有志拯救世界的你star,fork

    如果你觉得又可以改进的地方,也可以提pr。

    C语言版

    国内还有网友使用c语言实现了“春节12响”,代码如下:

    // File: twelve_biubiu.c
    // Permission: CN-2082-2
    // Author: Li.YiYi
    // Dept: PE-362, UG
    // Origin: TI-352132
    //春节十二响biu biu biu!
    #env "planet_engine"
    int init() {
      set_engine_number_mask(ENGINE_ALL);
      set_funeral_level(FUNERAL_FULL);
      //允许误差10秒以内
      if (unix_time() < make_unix_time(2082, 1, 28, 23, 59, 60-10)) return ERR_ENGINE_ENV;
      return engine_check_init(); // after compile and before real run
    }
    int main() {
      set_curve(CURVE_NATURAL); //自然曲线耗费燃料最少
      for (int i :range(0, 12, 1)) {
          engine_start();
          wait_engine(ENGINE_STATE_CHAGNE);
          sleep(2000);
          engin_stop();
          wait_engine(ENGINE_STATE_CHAGNE);
          sleep(4000); //这个时长在模拟器里听起来更像心跳
      }
      return 0;
    }
    int final() {
      engine_ensure_shutdown();
    }
    

    如果你还有其他实现,也欢迎开一个issue,发出来,谁知道到时候行星发动机的语言环境是什么呢,索性都实现了吧。

    来吧,地球需要你!


    想了解更多?
    那就赶紧来关注我们

    image

    长按二维码 关注我们

    有问题请联系孔老师
    微信ID:
    sundaymorning

    相关文章

      网友评论

          本文标题:JavaScriptban春节12响代码

          本文链接:https://www.haomeiwen.com/subject/mpsryqtx.html