50行代码写的一个插件,破解一个H5小游戏

小游戏链接:测测你的眼睛对色差的辨识度http://www.webhek.com/post/color-test.html?from=timeline
废话不多说,先放代码:
window.onload = function () {
console.log("点击开始测试-------");
//点击开始按钮
var play = document.getElementsByClassName('play-btn');
play[0].click();
//获取画布盒子
// sleep(1);
var box = document.getElementById('box');
var num = box.children.length;
console.log('共有'+ num + '个字元素');
//把第一个元素定义为基础色
var color = [];
var basecolor = box.children[0].style.backgroundColor;
console.log(basecolor);
//循环
function clickButton() {
console.log('下一关');
box = document.getElementById('box');
num = box.children.length;
color = [];
basecolor = box.children[0].style.backgroundColor;
// console.log('进入下一关');
for (var i = 1; i < num ; i++) {
color[i] = box.children[i].style.backgroundColor;
}
for (var i = num-1; i >0 ; i--) {
if (color[i]!=basecolor && color[i-1] ==basecolor) {
box.children[i].click();
console.log("点击第"+(i+1)+'个元素');
} else if (color[i]!=basecolor && color[i-1] !=basecolor) {
box.children[0].click();
console.log("点击第"+1+'个元素');
}
}
}
setInterval(clickButton,300);
}
游戏界面:

思路都在代码里了,就是取到全部的色块元素,拿CSS对比,找到不一样那个,JS点击,进入下一关。当然,代码写的很粗糙,还有改进的空间。轻喷。
说一下流程:
首先呢,我们要把JS代码注入到游戏页面中,这个我是通过把代码打包成浏览器插件实现的。我做的谷歌浏览器的插件,当然你也可以做360的,火狐的,等等。
具体不同浏览器的插件的方法,你可以通过百度,在CSDN上找到对应的文章。
如果有人想试一下的话,可以下载这个谷歌浏览器的插件:
链接: https://pan.baidu.com/s/1yASkGKcrz1pPt0vY6gxqeg 提取码: jvcu
插件安装方法:
解压文件到一个好找的文件夹,然后 谷歌浏览器-》设置-》更多工具-》拓展程序-》开发者模式打开-》加载已解压的插件。
插件使用:
打开游戏界面,,插件就会自动运行,如果出问题的话,就多刷新几次。
放在最后:
体验几次之后就把插件移除吧,代码写的不完善,插件会在每个页面都运行,而JS里有一个定时器,因而可能会拖累浏览器的速度。
50行代码写的一个插件,破解一个H5小游戏的更多相关文章
- python实战:用70行代码写了一个山炮计算器!
python实战训练:用70行代码写了个山炮计算器! 好了...好了...各位因为我是三年级而发牢骚的各位伙伴们,我第一次为大家插播了python的基础实战训练.这个,我是想给,那些python基础一 ...
- HTML5游戏实战(1):50行代码实现正面跑酷游戏
前段时间看到一个"熊来了"的HTML5跑酷游戏,它是一个典型的正面2D跑酷游戏,这里借用它来介绍一下用Gamebuilder+CanTK开发正面跑酷游戏的基本方法. CanTK(C ...
- python爬虫实战:利用scrapy,短短50行代码下载整站短视频
近日,有朋友向我求助一件小事儿,他在一个短视频app上看到一个好玩儿的段子,想下载下来,可死活找不到下载的方法.这忙我得帮,少不得就抓包分析了一下这个app,找到了视频的下载链接,帮他解决了这个小问题 ...
- 50行代码实现缓存,JAVA内存模型原理
遇见这样的高人怎么办??下面是一个简单缓存的实现,相当牛叉!自己看吧,只有50行代码. 摘自:http://www.oschina.net/code/snippet_55577_3887 import ...
- 50行代码实现GAN | 干货演练
2014年,Ian Goodfellow和他的同事发表了一篇论文,向世界介绍了生成对抗网络(GAN).通过对计算图和博弈论的创新性组合,他们表明如果有足够的建模能力,两个相互对抗的模型可以通过普通的反 ...
- 50行代码实现python计算器主要功能
实现功能:计算带有括号和四则运算的式子 3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 基本思路:使用正则表达式提取出每一层 ...
- “倔驴”一个h5小游戏的实现和思考(码易直播)——总结与整理
3月23日晚上8点半(中国队火拼韩国的时候),做了一期直播分享.15年做的一个小游戏,把核心代码拿出来,现场讲写了一遍,结果后面翻车了,写错了两个地方,导致运行效果有点问题,直播边说话边写代码还真不一 ...
- 如何开发一个简单的HTML5 Canvas 小游戏
原文:How to make a simple HTML5 Canvas game 想要快速上手HTML5 Canvas小游戏开发?下面通过一个例子来进行手把手教学.(如果你怀疑我的资历, A Wiz ...
- 【编程教室】PONG - 100行代码写一个弹球游戏
大家好,欢迎来到 Crossin的编程教室 ! 今天跟大家讲一讲:如何做游戏 游戏的主题是弹球游戏<PONG>,它是史上第一款街机游戏.因此选它作为我这个游戏开发系列的第一期主题. 游戏引 ...
随机推荐
- wince窗口被静态的焦点挡住
效果如下图: 问题:文本框被挡住了 解决办法如下: 找到该窗体,设置属性Menu值为无即可解决
- burpsuite暴力破解dvwa的登录密码
前提准备条件: 1.下载安装dvwa,下载链接地址:http://www.dvwa.co.uk/. 2.安装php+mysql环境,我用的是这个软件(phpStudy)下载地址:https://www ...
- zabbix监控MySQL,Tomcat及配置邮件报警
目录 一.思路 二.部署.配置 环境 安装zabbix 对zabbix进行初步优化 添加监控主机 部署监控Tomcat 配置邮件报警 三.总结 一.思路 首先搭建zabbixserver,本机需要安装 ...
- Oracle创建上下文 SYS_CONTEXT
Oracle创建上下文 SYS_CONTEXT 1. 系统默认的一些参数 set heading offselect SYS_CONTEXT('USERENV', 'TERMINAL') termin ...
- api的日志
package cn.com.acxiom.coty.wechat.ws.bean.po; import java.util.Date; public class WebserviceLogWecha ...
- Python 类和对象(3)
大家有没有想我呢? 今天讲一下类的一些概念: 公开属性 私有属性 基本方法 私有方法 直接上代码 class Makeup(): brand = 'MAC' #公开属性 __producer = 'U ...
- L1与L2正则化
目录 过拟合 结构风险最小化原理 正则化 L2正则化 L1正则化 L1与L2正则化 参考链接 过拟合 机器学习中,如果参数过多.模型过于复杂,容易造成过拟合. 结构风险最小化原理 在经验风险最小化(训 ...
- uhd镜像重新安装
USRP LW-X300连接网口,设置IP地址:192.168.10.1,子网验码:255.255.255.0 连接后uhd_usrp_probe提示更新镜像. 终端输入: uhd_image_loa ...
- mysql 5.7 版本 You must reset your password using ALTER USER statement before executing this statement报错处理
https://blog.csdn.net/muziljx/article/details/81541896 MySQL版本5.7.6版本开始的用户可以使用如下命令: mysql> ALTER ...
- Pycharm----设置默认脚本请求头
每次新建py文件,均需要在文件头部加上编码声明,每次的手动添加比较麻烦,因此设置自动生成,也可添加作者.时间等等,详见如下: 设置后的样例显示: 操作方式: 操作完如上的截图步骤,再次新建一个py文件 ...