// ==UserScript== // @name KİNG WHOWHERE V2 // @namespace http://tampermonkey.net/ // @version 1.0 // @description Garti.io da olan otaqları rahatlıqla izləmənizi təmin edər // @author KİNG // @match https://gartic.io/?king2 // @icon data:image/gif;https://lh3.googleusercontent.com/a/ACg8ocI2MjKyE-4hqdU3u44cGzhdfkAW8I7JhUUAr1U0O6JFAB8Pqg4r=s300 // @grant none // @downloadURL https://update.greasyfork.icu/scripts/510678/K%C4%B0NG%20WHOWHERE%20V2.user.js // @updateURL https://update.greasyfork.icu/scripts/510678/K%C4%B0NG%20WHOWHERE%20V2.meta.js // ==/UserScript== if (window.location.href.indexOf("?king2") !== -1) { let leftContent = document.createElement("div"); leftContent.setAttribute("style", "position:fixed; top:0; left:0; width:30%; height:100vh; background:#111; border-right:5px solid silver; padding:10px; box-sizing:border-box; overflow-y:auto; color:#f1f1f1; z-index:9999;"); leftContent.classList.add("leftcontent"); let rightContent = document.createElement("div"); rightContent.setAttribute("style", "position:fixed; top:0; left:30%; width:70%; height:100vh; background:#111; padding:10px; box-sizing:border-box; z-index:9999;"); rightContent.classList.add("rightcontent"); let header = `
Developer by King
`; let iframeBorderStyle = "border:5px solid gold;"; let headerIframe = `
WhoWhere by King
`; let themeSelect = ` `; let searchInput = ""; let roomList = "
"; leftContent.innerHTML = themeSelect + searchInput + roomList; document.body.appendChild(leftContent); document.body.appendChild(rightContent); function _(x) { return document.querySelector(x); } function _a(x) { return document.querySelectorAll(x); } window.filterRooms = (rooms, search) => { return rooms.filter(room => room.code.toLowerCase().includes(search.toLowerCase())); } window.refreshrooms = (search = "") => { const themeValue = _(".themeselect").value; fetch("https://gartic.io/req/list?search=" + search + "&language[]=23" + themeValue).then(response => response.json()).then(data => { let roomdatas = window.filterRooms(data, search); let favorites = JSON.parse(localStorage.getItem('favorites')) || []; let favoriteRooms = roomdatas.filter(room => favorites.includes(room.code)); let otherRooms = roomdatas.filter(room => !favorites.includes(room.code)); _(".rooms").innerHTML = ""; const createRoomElement = (room) => `
#${room.code.slice(-3)} ${room.quant}/${room.max}
`; _(".rooms").innerHTML += favoriteRooms.map(createRoomElement).join(''); _(".rooms").innerHTML += otherRooms.map(createRoomElement).join(''); }); } window.openInIframe = (url, roomCode) => { _(".rightcontent").innerHTML = `${headerIframe}`; document.querySelectorAll('.room .watching-indicator').forEach(el => el.remove()); const roomElement = document.querySelector(`.room[data-code="${roomCode}"]`); if (roomElement) { roomElement.insertAdjacentHTML('beforeend', '
Otaq İzlənilir
'); } } window.openRoom = (roomCode, event) => { event.stopPropagation(); window.open(`https://gartic.io/${roomCode}`, '_blank'); } window.toggleFavorite = (roomCode, event) => { event.stopPropagation(); let favorites = JSON.parse(localStorage.getItem('favorites')) || []; if (favorites.includes(roomCode)) { favorites = favorites.filter(code => code !== roomCode); _(`#favorite-${roomCode}`).checked = false; } else { favorites.push(roomCode); _(`#favorite-${roomCode}`).checked = true; } localStorage.setItem('favorites', JSON.stringify(favorites)); window.refreshrooms(); } window.addEventListener('load', () => { window.refreshrooms(); }); }