Greasy Fork is available in English.
Kiosk 자동 국룰 입력
当前为
// ==UserScript==
// @name Kiosk 자동 국룰/다운
// @namespace http://tampermonkey.net/
// @version 1.2
// @description Kiosk 자동 국룰 입력
// @author 김머시기
// @match https://kiosk.ac/c/*
// @match https://arca.live/b/simya*
// @icon https://www.google.com/s2/favicons?sz=64&domain=kioskloud.ac
// @grant GM.setValue
// @grant GM.getValue
// @license MIT
// @run-at document-end
// ==/UserScript==
'use strict';
let rp;
const rpw = atob("c21wZW9wbGU=");
async function m(){
rp = await GM.getValue("rp")
if(rp != rpw) {
const chk = prompt("국룰 확인");
if(chk?.toLowerCase() == rpw) {
GM.setValue("rp", rpw);
} else {
GM.setValue("rp", false);
alert("국룰이 일치하지 않습니다.");
}
}
}
function pw() {
document.querySelector('.input.shadow-xl.flex-grow').value = rpw;
document.querySelector('.btn.btn-ghost.w-full.mt-2.rounded-md').click();
}
function pw1() {
document.querySelector('.input.shadow-xl.flex-grow').value = "#"+rpw+"#";
document.querySelector('.btn.btn-ghost.w-full.mt-2.rounded-md').click();
}
function dbtn() {
let downButton = document.querySelector('.p-2 li:last-child button');
downButton.click();
}
m();
async function auto() {
if(rp==rpw){
await pw();
await setTimeout(pw1,800);
await setTimeout(dbtn,2500);
}
}
function doDecode() {
const article = document.querySelector("body div.article-body > div.fr-view.article-content");
function dec(reg) {
try {
while (reg.test(article.innerHTML)) {
let decoded = reg.exec(article.innerHTML)[0];
while (decoded.match(/aHR0c[0-9A-Za-z+/-]{8,}[=]{0,2}/) == null) {
decoded = atob(decoded);
}
decoded = atob(decoded); console.log(decoded);
article.innerHTML = article.innerHTML.replace(reg, `<a href=${decoded} target='_blank' rel='noreferrer'>${decoded}</a>`);
}
} catch(i) {
console.log(i,article);
}
}
dec(/aHR0c[0-9A-Za-z+/-]{20,}[=]{0,2}/);
dec(/YUhSMGN[0-9A-Za-z+/-]{80,}[=]{0,2}/);
dec(/[0-9A-Za-z+/-]{30,}[=]{1,2}/);
dec(/[0-9A-Za-z+/-]{200,}[=]{0,2}/);
}
const currentHost = document.URL.split("/")[2];
if(currentHost === "arca.live") {
doDecode();
} else {
setTimeout(auto, 100);
}