Under PPS Restart Script

restarts game automatically when you go too slow

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         Under PPS Restart Script
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  restarts game automatically when you go too slow
// @author       Oki
// @match        https://*.jstris.jezevec10.com/*
// @grant        none
// ==/UserScript==

/**************************
  Under PPS Restart Script         
**************************/
(function() {
    window.addEventListener('load', function(){

localStorage.restartOption = localStorage.restartOption || "0";
localStorage.restartThreshold = localStorage.restartThreshold || "0";

var pbOption = document.createElement("table");
pbOption.innerHTML = `<tbody><tr><td><input name='group'onclick="localStorage.restartOption=0"id='soundPPS'type="radio"><label for="soundPPS">Play a sound</label></td><td><input onclick="localStorage.restartOption=1" id='restartPPS' name='group' type="radio"><label for="restartPPS">Restart the run</label></td></tr><tr><td colspan="2"><span>when PPS goes below <input oninput='localStorage.restartThreshold=this.value'id='threshold'style="width:50px"></span></td></tr></tbody><br>`
tab_other.appendChild(pbOption)

document.getElementsByName("group")[+localStorage.restartOption].checked = 1
threshold.value = localStorage.restartThreshold

var trim=a=>{a=a.slice(0,-1);a=a.substr(a.indexOf("{")+1);return a}
if(typeof getParams != "function"){var getParams=a=>{var params=a.slice(a.indexOf("(")+1);params=params.substr(0,params.indexOf(")")).split(",");return params}}


function afterRoundStart() {
    window.soundAlreadyPlayed = false;
}

var placeBlockFunc = Game['prototype']["startReadyGo"].toString()
placeBlockFunc =  trim(placeBlockFunc) + trim(afterRoundStart.toString())
Game['prototype']["startReadyGo"] = new Function(placeBlockFunc);



function afterPlaceBlock() {

if(0<threshold.value&&this['clock']>5){
	if(this['getPPS']()<+threshold.value&&0!=this['getPPS']()){
		if(document.getElementsByName("group")[0].checked&&+localStorage.SE){
			var a=new Audio("https://jstris.jezevec10.com/res/se0/fault.wav");
			if(vol=document.getElementById("vol-control").value)
				a.volume=vol/100;
			if(!soundAlreadyPlayed) {
				a.play()
				soundAlreadyPlayed = true;
			}
		}
		else {
            this.GameOver();
            this['startPractice'](1)
		}
	}
};

};



var placeBlockFunc = Game['prototype']["placeBlock"].toString()
var params2 = getParams(placeBlockFunc)
placeBlockFunc =  trim(placeBlockFunc) + trim(afterPlaceBlock.toString())
Game['prototype']["placeBlock"] = new Function(...params2, placeBlockFunc);


    });
})();