您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Predicts cheese time/block count
// ==UserScript== // @name Cheese Pace Script // @namespace http://tampermonkey.net/ // @version 0.22 // @description Predicts cheese time/block count // @author Oki, meppydc // @match https://*.jstris.jezevec10.com/* // @grant none // ==/UserScript== /************************** Cheese Pace Script **************************/ (function() { window.addEventListener('load', function(){ //var url = window.location.href //if(~url.indexOf("play=3")){ //console.log("cheese mode") var rect = holdCanvas.getBoundingClientRect(); var p = document.createElement("div"); p.id = "cheese_pace" p.style = ("color:#999;width:150px;position:absolute;top:"+(rect.top+400)+"px;left:"+(rect.left-50)+"px") p.style.display = "none" p.innerHTML = ` <table style='width:100%;height:100%;table-layout:fixed;'> <tr> <th style='text-align:center' colspan="2">Pace:</th> </tr> <tr> <td>Time:</td> <td id='cheesePaceTime'>0</td> </tr> <tr> <td># </td> <td id='cheesePacePieces'>0</td> </tr> </table> ` document.body.appendChild(p); if(typeof trim != "function"){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}} var queueBoxFunc = Game['prototype']['updateQueueBox'].toString() window.formatTime = function(seconds) { m = Math.floor(seconds / 60) s = Math.floor(seconds % 60) ms = Math.floor((seconds % 1)*100) return (m?(m+":"):'')+("0"+s).slice(-2)+"."+("0"+ms).slice(-2) } function paces() { totalLines = this["cheeseModes"][this["sprintMode"]] linesLeft = this['lrem'].innerHTML linesCleared = totalLines - linesLeft //console.log(totalLines,linesLeft,linesCleared) timePace = ((totalLines/linesCleared) * this["clock"]) piecePace = ((linesLeft/linesCleared)*this["placedBlocks"] + this["placedBlocks"]) cheesePaceTime.innerHTML= (timePace*0+1)?formatTime(timePace):'0'; cheesePacePieces.innerHTML= (piecePace*0+1)?Math.floor(piecePace):'0'; } queueBoxFunc = trim(paces.toString()) + trim(queueBoxFunc); Game['prototype']["updateQueueBox"] = new Function(queueBoxFunc); function afterReadyGoFunction() { //console.log(this['pmode']) if (this['pmode'] == 3) { cheese_pace.style.display = "block" } else { cheese_pace.style.display = "none" } } var readyGoFunc2 = Game['prototype']['startPractice'].toString() var params4 = getParams(readyGoFunc2) readyGoFunc2 = trim(readyGoFunc2) + trim(afterReadyGoFunction.toString()) Game['prototype']['startPractice'] = new Function(...params4, readyGoFunc2); //} }); })();