您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Некоторые посты не те, чем кажутся, %username%!
// ==UserScript== // @name Tea pie door // @namespace http://tampermonkey.net/ // @version 0.1 // @description Некоторые посты не те, чем кажутся, %username%! // @author Rawlique // @match *://orbitar.space/* // @icon https://orbitar.space/favicon.ico // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; const pidorPattern = /(т)(.*?)(ы)(.*?)(п)(.*?)(и)(.*?)(д)(.*?)(о)(.*?)(р)/gm; const postUrlPattern = /.+orbitar\.space\/p\d+/i; const subs = { 'т': '<img src="https://pepyaka.su/fonts/katjka/D182.gif" alt="т">', 'ы': '<img src="https://pepyaka.su/fonts/katjka/D18B.gif" alt="ы">', 'п': '<img src="https://pepyaka.su/fonts/katjka/D0BF.gif" alt="п">', 'и': '<img src="https://pepyaka.su/fonts/katjka/D0B8.gif" alt="и">', 'д': '<img src="https://pepyaka.su/fonts/katjka/D0B4.gif" alt="д">', 'о': '<img src="https://pepyaka.su/fonts/katjka/D0BE.gif" alt="о">', 'р': '<img src="https://pepyaka.su/fonts/katjka/D180.gif" alt="р">', }; function getPostContent() { return new Promise((resolve, reject) => { const maxTries = 10; const delay = 100; let numTries = 0; let interval = setInterval(() => { numTries += 1; let posts = document.querySelectorAll('[class^="PostComponent_content__"]'); if (posts.length > 1) { clearInterval(interval); return reject('Eto glagne!'); } let postContent = posts[0]?.innerHTML; if (postContent || (numTries > maxTries)) { clearInterval(interval); if (postContent) { resolve(postContent); } else { reject('No post content'); } } }, delay); }); } async function postPopidorilo() { try { const content = await getPostContent(); const newContent = content.replace(pidorPattern, function(match, t, t_y, y, y_p, p, p_i, i, i_d, d, d_o, o, o_r, r, offset, string, groups) { return [ subs[t.toLowerCase()], t_y, subs[y.toLowerCase()], y_p, subs[p.toLowerCase()], p_i, subs[i.toLowerCase()], i_d, subs[d.toLowerCase()], d_o, subs[o.toLowerCase()], o_r, subs[r.toLowerCase()] ].join(''); }); document.querySelectorAll('[class^="PostComponent_content__"]')[0].innerHTML = newContent; } catch(e) { console.error('[TeaPieDoor user JS]', e); } } let previousUrl = ''; const observer = new MutationObserver(function(mutations) { if (location.href !== previousUrl) { previousUrl = location.href; if (location.href.match(postUrlPattern)) { // post postPopidorilo(); } else { // not post } } }); const config = {subtree: true, childList: true}; observer.observe(document, config); })();