// ==UserScript== // @name gartic.io chat sınırsız kick profil fotoğrafı açıcı AFK (gifler tarayıcıda görünürler) // @namespace anomaly // @version 0.4 // @description gartic.io chati yeniden tasarlamayı denedim hatası falan varsa discord: orochi.iori // @author anomaly // @match *://gartic.io/* // @run-at document-start // @grant unsafeWindow // @grant GM_addStyle // @downloadURL none // ==/UserScript== const win = typeof unsafeWindow !== 'undefined' ? unsafeWindow : window; win.naoya = []; let heartbeatinterval = null; win.toji = null; win.mallarxd = new Set(); win.ignoredusers = new Set(); let naoyaid = null; let naoyaindex = null; let projectioncomplete = !1; let lastsentmessage = ""; let messagequeue = []; let isprocessingqueue = !1; const invisiblechar = "⁣"; const bypassandsend = (msg) => { if (!win.mkyws || !naoyaid) return; const processword = (text) => text.split('').join(invisiblechar + invisiblechar); let words = msg.split(' '); let chunks = []; let currentchunk = ""; words.forEach((word) => { let processedword = processword(word); let potentialchunk = currentchunk === "" ? processedword : currentchunk + " " + processedword; if (potentialchunk.length <= 100) { currentchunk = potentialchunk } else { if (currentchunk !== "") chunks.push(currentchunk); currentchunk = processedword } }); if (currentchunk !== "") { chunks.push(currentchunk) } chunks.forEach((chunk, index) => { setTimeout(() => { if (win.mkyws && win.mkyws.readyState === WebSocket.OPEN) { win.mkyws.send(`42[11,"${naoyaid}","${chunk}"]`) } }, index * 800) }) }; const stylee = document.createElement('style'); stylee.textContent = ` #chat .scrollBar,#chat .scrollTrack,#chat .history>.scrollBar,#chat .history>.scrollTrack{display:none!important;pointer-events:none!important;opacity:0!important}#chat .history .scroll{overflow-y:scroll!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;height:100%!important;scrollbar-width:thin!important;scrollbar-color:#400 #000000!important;pointer-events:auto!important;scroll-behavior:auto!important;-webkit-overflow-scrolling:touch!important}#chat .history .scroll::-webkit-scrollbar{width:6px}#chat .history .scroll::-webkit-scrollbar-track{background:#000}#chat .history .scroll::-webkit-scrollbar-thumb{background:#400;border-radius:10px;border:1px solid red}#chat .scrollElements{display:flex!important;flex-direction:column!important;gap:2px;padding:10px 0!important;min-height:min-content;pointer-events:auto!important}#custom-chat-wrapper{width:100%;padding:0;background:#fff0} #customgarticinput{width:100%;height:38px;background:#ffffff!important;color:#000000!important;border:2px solid #b7d1da!important;border-radius:8px;padding:0 12px;font-family:'Orbitron',sans-serif;font-size:15px;font-weight:600;outline:none;box-sizing:border-box}.naoyamesaj-container{display:flex;align-items:flex-end;max-width:90%;width:fit-content;margin:1px 10px;animation:fadeIn 0.15s ease;position:relative}.naoyamesaj-container .m-avatar{width:32px;height:32px;border-radius:50%;background-size:cover;background-position:center;border:1px solid #ddd;flex-shrink:0}.naoyamesaj-container,.naoyamesaj-nick{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.naoyamesaj-bubble{background:#fff;color:#333;padding:8px 14px;border-radius:15px;font-size:16px!important;box-shadow:0 1px 3px rgb(0 0 0 / .2);word-break:break-word;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important}.naoyamesaj-nick{font-size:13px!important;font-weight:900;color:#fff;text-transform:none!important;margin:2px 5px;text-shadow:1px 1px 2px #000}.naoyamesaj-container.my-message{align-self:flex-end;flex-direction:row-reverse}.naoyamesaj-container.my-message .naoyamesaj-bubble{background:#007bff;color:#fff}.naoyamesaj-container.other-message{align-self:flex-start} @media screen and (min-width:769px){.naoyamesaj-container{display:flex!important;flex-direction:row!important;align-items:baseline!important;justify-content:flex-start!important;max-width:100%!important;width:100%!important;margin:0!important;padding:2px 8px!important;box-sizing:border-box!important;word-break:break-word!important}.naoyamesaj-container .m-avatar{display:none!important}.naoyamesaj-content{display:inline!important;width:100%!important;word-break:break-word!important}.naoyamesaj-bubble{display:inline!important;background:transparent!important;box-shadow:none!important;padding:0!important;color:#b1b3b9!important;font-size:17px!important;border:none!important;font-family:sans-serif;word-break:break-word!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important}.naoyamesaj-nick{display:inline!important;font-size:17px!important;color:#8e9297!important;margin:0!important;text-transform:none!important;font-weight:bold!important;text-shadow:none!important}.naoyamesaj-nick::after{content:"";color:#b1b3b9;margin-right:4px;font-weight:400}}@media screen and (max-width:768px){#__next>div.nextCenter>div:nth-child(3){display:none!important}}@media screen and (max-width:768px){#chat .history .scroll{display:block!important;overflow-y:auto!important;-webkit-overflow-scrolling:auto!important}}@media screen and (min-width:1025px){#chat .scrollBar,#chat .scrollTrack,#chat .history>.scrollBar,#chat .history>.scrollTrack,#chat .history .scroll{overflow-y:scroll!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;height:100%!important;scrollbar-width:thin!important;scrollbar-color:#400 #000000!important;pointer-events:auto!important;scroll-behavior:auto!important;-webkit-overflow-scrolling:touch!important}#interaction{display:flex!important;flex-direction:row!important;gap:0!important;width:100%!important}#answer{flex:1!important;width:50%!important;min-width:0!important;max-width:none!important}#chat{display:flex!important;flex-direction:column!important;flex:1!important;width:50%!important;min-width:0!important;max-width:none!important;visibility:visible!important}#chat .history{background:transparent!important;border:none!important}}#interaction>div.actionsMobile>button.chat{position:relative!important}.chat-badge{position:absolute;top:-4px;left:-4px;background:red;color:#fff;font-size:11px;font-weight:700;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1;z-index:100;pointer-events:none;font-family:sans-serif;box-shadow:0 1px 4px rgb(0 0 0 / .4)}#chat.active~#interaction button.chat .chat-badge{display:none!important}.naoyamesaj-nick{cursor:pointer}.naoyamesaj-container{cursor:default}@keyframes fadeIn{from{opacity:0}to{opacity:1}}`; document.head.appendChild(stylee); let userscrolling = !1; let scrolltimeout = null; const forcescroll = (force = !1) => { const chatbox = document.querySelector('#chat .history .scroll') || document.querySelector('#chat .scroll') || document.querySelector('#chat .history') || document.querySelector("#chat > div.history > div > div.scrollElements"); if (!chatbox) return; chatbox.scrollTop = chatbox.scrollHeight; requestAnimationFrame(() => { chatbox.scrollTop = chatbox.scrollHeight; setTimeout(() => { chatbox.scrollTop = chatbox.scrollHeight }, 50) }) }; let unreadcount = 0; const updatebadge = () => { const chatbutton = document.querySelector('#interaction > div.actionsMobile > button.chat'); const chatbox = document.querySelector('#chat'); if (!chatbutton) return; if ((chatbox && chatbox.classList.contains('active')) || unreadcount === 0) { unreadcount = 0; const existingbadge = chatbutton.querySelector('.chat-badge'); if (existingbadge) existingbadge.remove(); return } let badge = chatbutton.querySelector('.chat-badge'); if (!badge) { badge = document.createElement('span'); badge.className = 'chat-badge'; chatbutton.appendChild(badge) } badge.textContent = unreadcount > 9 ? '9+' : unreadcount }; const enablewheelfix = () => { const chatbox = document.querySelector('#chat .history .scroll'); if (!chatbox || chatbox.getAttribute('data-wheelhooked') === "true") return; chatbox.setAttribute('data-wheelhooked', "true"); const bazszszsllattt = () => { userscrolling = !0; clearTimeout(scrolltimeout) }; const durrrrddrrrrr = () => { clearTimeout(scrolltimeout); scrolltimeout = setTimeout(() => { const wtfbud = document.querySelector('#chat .history .scroll'); if (wtfbud) { const ohmannn = wtfbud.scrollHeight - wtfbud.scrollTop - wtfbud.clientHeight < 30; if (ohmannn) { userscrolling = !1 } } }, 1500) }; chatbox.addEventListener('wheel', (e) => { bazszszsllattt(); chatbox.scrollTop += e.deltaY; durrrrddrrrrr() }, { passive: !1 }); chatbox.addEventListener('touchstart', bazszszsllattt, { passive: !0 }); chatbox.addEventListener('touchmove', bazszszsllattt, { passive: !0 }); chatbox.addEventListener('touchend', durrrrddrrrrr, { passive: !0 }) }; const kurapika = (url) => { if (projectioncomplete || !url) return !1; const kimkimegiriyoollmmm = document.querySelector('#screens > header > div > div.userLogged > div.infos > a'); const benseninanonim = document.querySelector('#screens > div > div.content.home > div.anonymus > div.form > a'); if (!kimkimegiriyoollmmm && !benseninanonim) return !1; if (url.includes('googleusercontent.com')) { const clean = url.split('=')[0] + '=s512'; win.toji = clean; projectioncomplete = !0; heavenrestriction(clean); return !0 } return !1 }; const originalimage = win.Image; win.Image = function(...args) { const img = new originalimage(...args); const desc = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, 'src'); Object.defineProperty(img, 'src', { set(value) { if (!projectioncomplete) kurapika(value); return desc.set.call(this, value) }, get() { return desc.get.call(this) } }); return img }; const speedoflight = () => { if (projectioncomplete) return; const entries = performance.getEntriesByType('resource'); for (const entry of entries) { if (kurapika(entry.name)) break } }; const heavenrestriction = (src) => { if (!src) return; const targets = ['#screens > div > div.content.home > div.anonymus > div.form > div.avatar', '#screens > header > div > div.userLogged > div:nth-child(2) > div', ]; targets.forEach(selector => { const container = document.querySelector(selector); if (container) { let myimg = container.querySelector('.google-avatar-inject'); if (!myimg) { myimg = document.createElement('img'); myimg.className = 'google-avatar-inject'; container.appendChild(myimg) } const canvas = container.querySelector('canvas'); if (canvas) canvas.style.display = 'none'; if (myimg.src !== src) { Object.assign(myimg.style, { width: '100%', height: '100%', borderRadius: '50%', objectFit: 'cover', position: 'absolute', top: '0', left: '0', zIndex: '25' }); myimg.src = src } } }) }; const addmessagetoui = (senderid, nick, msg) => { const scrollelements = document.querySelector('#chat .history .scroll .scrollElements'); if (!scrollelements) return; const user = win.naoya.find(u => u.id == senderid); let photourl = ""; if (user) { photourl = user.foto ? user.foto.split('=')[0] : (user.avatar !== undefined ? `https://gartic.io/static/images/avatar/svg/${user.avatar}.svg` : "") } if (!photourl && senderid == naoyaindex && win.toji) photourl = win.toji; const container = document.createElement('div'); container.className = 'naoyamesaj-container'; container.classList.add(senderid == naoyaindex ? 'my-message' : 'other-message'); container.innerHTML = `
${nick}
${msg}
`; const profilepopupackardesimxd = () => { const uselmnts = document.querySelectorAll('#users .scrollElements .user:not(.empty)'); for (const mhmhmhmh of uselmnts) { const plyrnckelmnt = mhmhmhmh.querySelector('.infosPlayer .nick'); if (plyrnckelmnt && plyrnckelmnt.textContent.trim() === nick) { mhmhmhmh.click(); break } } }; container.querySelector('.m-avatar').addEventListener('click', profilepopupackardesimxd); container.querySelector('.naoyamesaj-nick').addEventListener('click', profilepopupackardesimxd); scrollelements.appendChild(container); requestAnimationFrame(() => { forcescroll(!0); setTimeout(() => forcescroll(!0), 30) }) }; setInterval(() => { const scrollelements = document.querySelector('#chat .history .scroll .scrollElements'); if (!scrollelements) return; const messages = scrollelements.querySelectorAll('.naoyamesaj-container'); if (messages.length > 50) { const excess = messages.length - 50; for (let i = 0; i < excess; i++) { messages[i].remove(); } } }, 30000); let lastvotetime = 0; let sfistiyoruz = !1; const domainexpansion = () => { if (win.toji) heavenrestriction(win.toji); document.querySelectorAll('.positions .avatar:not([datapr])').forEach(av => { const parentPos = av.closest('.first, .second, .third'); const nk = parentPos?.querySelector('span'); if (nk) { const user = win.naoya.find(e => e.nick === nk.textContent.trim()); if (user?.foto) { let src = user.foto.split('=')[0]; let ly = av.querySelector('.cpl') || document.createElement('div'); ly.className = 'cpl'; if (!ly.parentElement) av.appendChild(ly); Object.assign(ly.style, { position: 'absolute', top: '0', left: '0', width: '100%', height: '100%', backgroundImage: `url("${src}")`, backgroundSize: 'cover', borderRadius: '50%', zIndex: '5' }); av.setAttribute('datapr', '1'); const innerDiv = av.querySelector('.av'); if (innerDiv) innerDiv.style.opacity = '0' } } }); document.querySelectorAll('.avatar:not([datapr])').forEach(av => { const cv = av.querySelector('canvas'); const pr = av.closest('.user, #notification, .contentPopup, .profile'); const nk = pr?.querySelector('.nick, strong, .kangwoobaba'); if (cv && nk) { const user = win.naoya.find(e => e.nick === nk.textContent); let src = user?.foto ? user.foto.split('=')[0] : (av.closest('.anonymus') ? win.toji : ""); if (src) { let ly = av.querySelector('.cpl') || document.createElement('div'); ly.className = 'cpl'; if (!ly.parentElement) av.appendChild(ly); Object.assign(ly.style, { position: 'absolute', top: '0', left: '0', width: '100%', height: '100%', backgroundImage: `url("${src}")`, backgroundSize: 'cover', borderRadius: '50%', zIndex: '1' }); cv.style.opacity = '0'; av.setAttribute('datapr', '1') } } }); document.querySelectorAll('.profile').forEach(p => { const btncontainer = p.querySelector('.buttons'); const nickel = p.querySelector('.nick'); if (btncontainer && nickel) { const sgknkya = p.querySelector('button.ic-ignore.btYellowBig'); const gerigelknkya = p.querySelector('button.icEye.btYellowBig'); if (sgknkya && !sgknkya.getAttribute('data-hooked')) { sgknkya.setAttribute('data-hooked', 'true'); sgknkya.onclick = () => { const user = win.naoya.find(e => e.nick === nickel.textContent); if (user) win.ignoredusers.add(user.id); }; } if (gerigelknkya && !gerigelknkya.getAttribute('data-hooked')) { gerigelknkya.setAttribute('data-hooked', 'true'); gerigelknkya.onclick = () => { const user = win.naoya.find(e => e.nick === nickel.textContent); if (user) win.ignoredusers.delete(user.id); }; } if (!p.querySelector('#profilbutonu')) { const btn = document.createElement('button'); btn.id = "profilbutonu"; btn.className = "btn"; btn.innerHTML = "profil fotoğrafını aç"; btn.style.cssText = `background-image: url('https://media.tenor.com/621QoumJ1iMAAAAM/jujutsukaisen-jujutsu-kaisen.gif'); background-size: cover; color: white; border: 2px solid black; padding: 10px; width: 100%; cursor: pointer; margin-top: 5px; border-radius: 4px;`; btn.onclick = () => { const u = win.naoya.find(e => e.nick === nickel.textContent); const url = u?.foto ? u.foto.split('=')[0] : (u?.avatar !== undefined ? `https://gartic.io/static/images/avatar/svg/${u.avatar}.svg` : win.toji); if (url) window.open(url, '_blank'); }; btncontainer.appendChild(btn) } const eylaaaa = p.querySelector('.ic-votekick'); if (eylaaaa && !eylaaaa.getAttribute('data-hooked')) { eylaaaa.setAttribute('data-hooked', 'true'); const user = win.naoya.find(e => e.nick === nickel.textContent); if (user) { if (win.mallarxd && win.mallarxd.has(user.id)) { eylaaaa.innerHTML = "oyu çek we love anomaly <3" } eylaaaa.addEventListener('click', (e) => { e.preventDefault(); e.stopImmediatePropagation(); if (!win.mkyws || !naoyaid) return; if (sfistiyoruz) return; const now = Date.now(); const bro_wut = now - lastvotetime; const neeediyyyonolmmmm = 500 - bro_wut; const helelelele = () => { sfistiyoruz = !1; lastvotetime = Date.now(); const oylanmis = win.mallarxd.has(user.id); const oyturu = !oylanmis; win.mkyws.send(`42[45,"${naoyaid}",${JSON.stringify([user.id, oyturu])}]`); if (oyturu) { win.mallarxd.add(user.id); eylaaaa.innerHTML = "oyu çek we love anomaly <3" } else { win.mallarxd.delete(user.id); eylaaaa.innerHTML = "oyla we love anomaly <3" } }; if (neeediyyyonolmmmm <= 0) { helelelele() } else { sfistiyoruz = !0; eylaaaa.innerHTML = "we love anomaly <3"; setTimeout(helelelele, neeediyyyonolmmmm) } }, !0) } } } }) }; const handlesocketdata = (data) => { if (typeof data !== "string" || !data.startsWith("42")) return; try { const roblox = JSON.parse(data.slice(2)); const swordfight = Array.isArray(roblox) ? roblox[0] : roblox; if (swordfight === "6") { win.mallarxd.clear(); win.CACHE_DATA.timeExit = 0; } if (swordfight === "5") { naoyaid = roblox[2]; naoyaindex = roblox[1]; if (heartbeatinterval) clearInterval(heartbeatinterval); heartbeatinterval = setInterval(() => { if (win.mkyws && win.mkyws.readyState === WebSocket.OPEN) { win.mkyws.send('2'); win.mkyws.send(`42[42,${naoyaid}]`) } }, 25000); if (Array.isArray(roblox[5])) { roblox[5].forEach(u => { win.naoya.push({ nick: u.nick, id: u.id, foto: u.foto || null, avatar: u.avatar }) }) } } else if (swordfight === "11") { if (win.ignoredusers.has(roblox[1])) return; const user = win.naoya.find(u => u.id == roblox[1]); if (roblox[2]) { addmessagetoui(roblox[1], user ? user.nick : "Unknown", roblox[2]); forcescroll(!0); const chatbox = document.querySelector('#chat'); if (!chatbox || !chatbox.classList.contains('active')) { unreadcount++; updatebadge() } } } else if (swordfight === "23") { win.naoya.push({ nick: roblox[1].nick, id: roblox[1].id, foto: roblox[1].foto || null, avatar: roblox[1].avatar }); requestAnimationFrame(forcescroll) } else if (swordfight === "24") { win.ignoredusers.delete(roblox[1]); win.mallarxd.delete(roblox[1]); win.naoya = win.naoya.filter(p => p.id !== roblox[1]); requestAnimationFrame(forcescroll) } else if (swordfight === "45") { requestAnimationFrame(forcescroll) } else if (swordfight === "40" && roblox[1] === 1|| roblox[1]===2) { if (lastsentmessage) { bypassandsend(lastsentmessage); lastsentmessage = "" } } } catch (e) {} }; const setupcustomchat = () => { const chatcontainer = document.querySelector('#chat'); if (!chatcontainer) return; const originalform = chatcontainer.querySelector('form'); const existingInput = document.getElementById('customgarticinput'); const existingWrapper = document.getElementById('custom-chat-wrapper'); if (!naoyaid) { if (existingWrapper) existingWrapper.remove(); if (originalform) originalform.style.display = ''; return } if (!existingInput) { if (originalform) originalform.style.display = 'none'; const wrapper = document.createElement('div'); wrapper.id = 'custom-chat-wrapper'; const mychat = document.createElement('input'); mychat.id = 'customgarticinput'; mychat.placeholder = 'anomaly <3'; mychat.autocomplete = 'off'; mychat.maxLength = 100; mychat.addEventListener('input', () => { if (mychat.value.length > 100) { mychat.value = mychat.value.slice(0, 100) } }); wrapper.appendChild(mychat); chatcontainer.appendChild(wrapper); mychat.addEventListener('keydown', (e) => { if (e.key === 'Enter') { const val = mychat.value.trim().slice(0, 100); if (val !== "" && win.mkyws && naoyaid) { lastsentmessage = val; win.mkyws.send(`42[11,"${naoyaid}","${val}"]`); mychat.value = "" } e.preventDefault() } }) } }; const originalsend = win.WebSocket.prototype.send; win.WebSocket.prototype.send = function(...args) { if (!this._naoyahooked && this.url && (this.url.includes('gartic.io/socket.io') || this.url.includes('server'))) { this._naoyahooked = !0; win.mkyws = this; this.addEventListener('message', (event) => handlesocketdata(event.data)); this.addEventListener('close', () => { if (heartbeatinterval) { clearInterval(heartbeatinterval); heartbeatinterval = null } win.naoya = []; win.mallarxd.clear(); win.ignoredusers.clear(); naoyaid = null; naoyaindex = null; projectioncomplete = !1; lastsentmessage = ""; document.querySelectorAll('[datapr]').forEach(el => el.removeAttribute('datapr')); document.querySelectorAll('.cpl').forEach(el => el.remove()); document.querySelectorAll('.google-avatar-inject').forEach(el => el.remove()); const scrollelements = document.querySelector('#chat .history .scroll .scrollElements'); if (scrollelements) scrollelements.innerHTML = ""; if (win.mkyws === this) { win.mkyws = null } }) } return originalsend.apply(this, args) }; const addclicklistenerforbadge = () => { const chatbutton = document.querySelector('#interaction > div.actionsMobile > button.chat'); if (chatbutton && !chatbutton.getAttribute('data-badgehooked')) { chatbutton.setAttribute('data-badgehooked', 'true'); chatbutton.addEventListener('click', () => { unreadcount = 0; const badge = chatbutton.querySelector('.chat-badge'); if (badge) badge.remove(); }) } }; const teto = window.fetch; window.fetch = function(...args) { if (typeof args[0] === 'string' && args[0].includes('/req/lang')) { setTimeout(() => { window.location.reload() }, 1000) } return teto.apply(this, args) }; const cum = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, ...args) { if (typeof url === 'string' && url.includes('/req/lang')) { setTimeout(() => { window.location.reload() }, 1000) } return cum.apply(this, [method, url, ...args]) }; let wqeweqeqw = null; function nextialxd() { try { const qweqweqweqeqw = document.getElementById('__NEXT_DATA__'); if (qweqweqweqeqw && qweqweqweqeqw.innerText.trim() !== "") { const blablablablablabla = JSON.parse(qweqweqweqeqw.innerText); const extracted = blablablablablabla.props?.pageProps?.data?.lang?.room?.inactive || blablablablablabla.props?.data?.lang?.room?.inactive; if (extracted) { wqeweqeqw = extracted; return !0 } } } catch (e) {} return !1 } nextialxd(); const observer = new MutationObserver(() => { if (!wqeweqeqw) { nextialxd() } if (!projectioncomplete) speedoflight(); setupcustomchat(); domainexpansion(); enablewheelfix(); addclicklistenerforbadge(); const chatbox = document.querySelector('#chat'); if (chatbox && chatbox.classList.contains('active')) { if (unreadcount > 0) { unreadcount = 0; updatebadge() } const chatbutton = document.querySelector('#interaction > div.actionsMobile > button.chat'); if (chatbutton) { const badge = chatbutton.querySelector('.chat-badge'); if (badge) badge.remove(); } } if (wqeweqeqw) { const popup = document.querySelector('#popUp[style*="display: block"]'); if (popup) { const sdgdsdgs = popup.querySelector('.title h3, h3')?.innerText?.trim(); if (sdgdsdgs === wqeweqeqw) { const tmm = popup.querySelector('.buttons button, button.btBlue, .ok'); if (tmm) { tmm.click() } } } } }); observer.observe(document.documentElement, { childList: !0, subtree: !0 }); new MutationObserver(() => { enablewheelfix() }).observe(document.body, { childList: !0, subtree: !0 }); enablewheelfix(); const style = ` #screenRoom .ctt #interaction #answer .scroll:after, #screenRoom .ctt #interaction #answer .scroll:before, #screenRoom .ctt #interaction #chat .scroll:after, #screenRoom .ctt #interaction #chat .scroll:before{ content: none !important; display: none !important; visibility: hidden !important; opacity: 0 !important; } `; if (typeof GM_addStyle !== 'undefined') { GM_addStyle(style) } else { const stylenode = document.createElement('style'); stylenode.textContent = style; document.head.appendChild(stylenode) }