咕咕镇进度变动

剥削者的监视器

目前為 2020-08-18 提交的版本,檢視 最新版本

// ==UserScript==
// @name         咕咕镇进度变动
// @namespace    http://tampermonkey.net/
// @version      0.8
// @description  剥削者的监视器
// @author       ikarosf
// @match        https://www.guguzhen.com/fyg_pk.php
// @grant        GM_xmlhttpRequest
// ==/UserScript==

(function() {
    'use strict';
    var audio = new Audio("https://cdnringhlt.shoujiduoduo.com/ringres/user/a24/564/9246564.aac");
    audio.load();

    var Num = 0;
    var time = 10;
    var myrank = -100;
    var changeLog = [];
    let progresschange = document.createElement('div');
    progresschange.setAttribute('id','progresschange');
    progresschange.setAttribute('class','panel-body');
    document.getElementsByClassName('panel panel-primary')[1].appendChild(progresschange);

    function read_rank(){
        if(--time!=0){
            document.getElementsByClassName('panel-heading')[0].innerText = Num + "刷新进度倒计时 "+time;
        }else{
            document.getElementsByClassName('panel-heading')[0].innerText = Num + "刷新进度倒计时 "+0;
            time = 10;
            GM_xmlhttpRequest({
                method: 'POST',
                url: `https://www.guguzhen.com/fyg_read.php`,
                headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'},
                data: 'f=12',
                onload: response => {
                    Num++;
                    let newrank = parseInt(response.responseText.match(/class="fyg_colpz02" style="font-size:32px;font-weight:900;">[0-9]+%</)[0].match(/[0-9]+%/)[0]);
                    if(myrank == -100){
                        myrank = newrank;
                    }
                    else if(newrank != myrank){
                        document.getElementsByClassName('fyg_colpz02')[0].innerText = newrank;
                        myrank = newrank;
                        var date=new Date();
                        var datetext = date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
                        changeLog.push(datetext+"  "+newrank + "%")
                        audio.play();
                        var my_url = location.href;
                        var newwin = window.open(my_url, '进度变动', 'resizable=no')
                        }
                    progresschange.innerText = getChangeLogText();
                    /* else{
                    document.getElementsByClassName('fyg_colpz02')[0].innerText = newrank;
                }*/
                }
            });
        }
    }

    function getChangeLogText(){
        let LogText = "";
        LogText += "刷新次数: " +Num + "\n";
        if(changeLog.length == 0){
            LogText += "未出现进度变动"
        }
        else{
            for(var i = 0;i<changeLog.length;i++){
                LogText += changeLog[i] + "\n"
            }
        }
        return LogText;
    }
    setInterval(read_rank,"1000");
    // Your code here...
})();