hyperchromatism - Color test cheat

Cheat in a color test game. Just have fun :D

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         hyperchromatism - Color test cheat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Cheat in a color test game. Just have fun :D
// @author       firetree
// @match        https://www.webhek.com/post/color-test/
// @icon         https://www.webhek.com/favicon.ico
// @grant        none
// @license      GPL3
// ==/UserScript==

(function() {
    'use strict';

    function findUniqueIndex(list) {
        for (let i = 1; i < list.length; i++) {
            if (list[i] !== list[i - 1]) {
                if (i === 1) {
                    if (list[1] === list[2]) {
                        return 0
                    } else {
                        return 1
                    }
                } else {
                    return i
                }
            }
        }
    }

    const box = document.getElementById('box')

    function solve() {
        box.children[findUniqueIndex([...box.children].map(el => el.style.backgroundColor))].click()
    }

    const observer = new MutationObserver(() => setTimeout(() =>solve(), 10))
    const config = {childList: true}
    observer.observe(box, config)

})();