ztory 发表于 2021-3-26 17:04

网页版抓猫代码分析

本帖最后由 ztory 于 2021-3-26 17:16 编辑

看到这个大佬的帖子https://www.52pojie.cn/thread-1391583-1-1.html 我就想起来网页版的抓猫, 搞一下
网页版抓猫地址 https://www.52pojie.cn/404.html
发现点击重置就是触发了这个reset
      e.prototype.reset = function() {
            this.cat.reset(),
            this.resetBlocks(),
            this.randomWall(),
            this.state = i.PLAYING,
            this.setStatusText(f.default("点击小圆点,围住小猫"))
      }

进一步看到随机创建墙体的代码
      e.prototype.randomWall = function() {
            for (var t = 0; t < 8; t++) {
                var e = Math.floor(this.w * Math.random())
                  , n = Math.floor(this.h * Math.random());
                e === this.cat.i && n === this.cat.j || (this.getBlock(e, n).isWall = !0)
            }
      }


按F12打开控制台, 复制以下代码到控制台并执行

game.mainScene.randomWall= function(){
    this.getBlock(4,5).isWall=!0;
    this.getBlock(5,4).isWall=!0;
    this.getBlock(6,4).isWall=!0;
    this.getBlock(2,5).isWall=!0;
    this.getBlock(5,2).isWall=!0;
    this.getBlock(6,6).isWall=!0;
    this.getBlock(6,5).isWall=!0;
    this.getBlock(2,4).isWall=!0;
}


然后点击"重置"按钮 然后就可以一步抓到了




想一步也不点? 复制这个到控制台 执行后点重置


game.mainScene.randomWall = function(){
    this.getBlock(4,5).isWall=!0;
    this.getBlock(5,4).isWall=!0;
    this.getBlock(6,4).isWall=!0;
    this.getBlock(2,5).isWall=!0;
    this.getBlock(5,2).isWall=!0;
    this.getBlock(6,6).isWall=!0;
    this.getBlock(6,5).isWall=!0;
    setTimeout(()=>{
       this.playerClick(5,6);
    },0)
};




bdanccd 发表于 2021-3-26 17:25

猫:你们都开挂,玩不起啊!

旗袍妹妹 发表于 2021-3-26 18:54

猫生气了,不玩了:lol

qianshang666 发表于 2021-3-26 17:09

猫:你是不是玩不起呀:(eew

lyl610abc 发表于 2021-3-26 17:19

qianshang666 发表于 2021-3-26 17:09
猫:你是不是玩不起呀

你怎么还不更新,点名批评{:301_1010:}

跌宕起伏 发表于 2021-3-26 17:34

猫:不应该是我玩你们的吗?你们玩不起吗?

一大杯奶茶呀 发表于 2021-3-26 17:44

哈哈哈哈哈{:301_978:}

laosange 发表于 2021-3-26 17:45

猫:你是不是把我当老鼠了!

莫丶小白 发表于 2021-3-26 17:49

果然猫被玩坏了。。

老大哥 发表于 2021-3-26 18:27

哈哈哈 最近被玩坏了

matt91190 发表于 2021-3-26 18:45

这个猫太厉害了,哈哈
页: [1] 2 3 4 5 6
查看完整版本: 网页版抓猫代码分析