继续操作前请注册或者登录。
Ajoute un sélecteur de langue à l'interface du jeu Infinity Craft sur https://neal.fun/infinite-craft/ — le jeu infini.
// ==UserScript== // @name Infinity Craft (no seu idioma) // @namespace linkme.bio/jhonpergon/?userscript=infinite_craft // @match https://neal.fun/infinite-craft/* // @version 1.0 // @author Jhon Pérgon // @name:pt Infinity Craft (no seu idioma) // @name:pt-BR Infinity Craft (em português) // @name:pt-PT Infinity Craft (em português) // @name:es Infinity Craft (en español) // @name:en Infinity Craft (in English) // @name:en-US Infinity Craft (in American English) // @name:fr Infinity Craft (en français) // @name:ru Infinity Craft (на русском) // @name:ja Infinity Craft (日本語) // @name:ko Infinity Craft (한국어) // @name:zh-TW Infinity Craft (繁體中文) // @name:zh-CN Infinity Craft (简体中文) // @name:id Infinity Craft (dalam bahasa Indonesia) // @name:ug Infinity Craft (بىلىمىي ۇيغۇرچە) // @name:ar Infinity Craft (باللغة العربية) // @name:he Infinity Craft (בעברית) // @name:hi Infinity Craft (हिन्दी में) // @name:th Infinity Craft (เป็นภาษาไทย) // @name:bg Infinity Craft (на български) // @name:ro Infinity Craft (în limba română) // @name:fi Infinity Craft (suomeksi) // @name:it Infinity Craft (in italiano) // @name:el Infinity Craft (στα ελληνικά) // @name:eo Infinity Craft (en Esperanto) // @name:hu Infinity Craft (magyarul) // @name:nb Infinity Craft (på norsk bokmål) // @name:sk Infinity Craft (v slovenčine) // @name:sv Infinity Craft (på svenska) // @name:sr Infinity Craft (на српском) // @name:pl Infinity Craft (po polsku) // @name:nl Infinity Craft (in het Nederlands) // @name:de Infinity Craft (auf Deutsch) // @name:da Infinity Craft (på dansk) // @name:cs Infinity Craft (v češtině) // @name:uk Infinity Craft (українською мовою) // @name:tr Infinity Craft (Türkçe) // @name:vi Infinity Craft (bằng tiếng Việt) // @name:fr-CA Infinity Craft (en français canadien) // @description Adiciona um seletor de idiomas à interface do jogo Infinity Craft em https://neal.fun/infinite-craft/ — o jogo infinito. // @description Adiciona um seletor de idiomas à interface do jogo Infinity Craft em https://neal.fun/infinite-craft/ — o jogo infinito. // @description:pt-BR Adiciona um seletor de idiomas à interface do jogo Infinity Craft em https://neal.fun/infinite-craft/ — o jogo infinito. // @description:pt-PT Adiciona um seletor de idiomas à interface do jogo Infinity Craft em https://neal.fun/infinite-craft/ — o jogo infinito. // @description:es Agrega un selector de idiomas a la interfaz del juego Infinity Craft en https://neal.fun/infinite-craft/ — el juego infinito. // @description:en Adds a language selector to the interface of the game Infinity Craft at https://neal.fun/infinite-craft/ — the infinite game. // @description:en-US Adds a language selector to the interface of the game Infinity Craft at https://neal.fun/infinite-craft/ — the infinite game. // @description:fr Ajoute un sélecteur de langue à l'interface du jeu Infinity Craft sur https://neal.fun/infinite-craft/ — le jeu infini. // @description:ru Добавляет селектор языка в интерфейс игры Infinity Craft на https://neal.fun/infinite-craft/ — бесконечная игра. // @description:ja Infinity Craft のゲームインターフェースに言語セレクタを追加します。https://neal.fun/infinite-craft/ — 無限のゲーム。 // @description:ko https://neal.fun/infinite-craft/에 언어 선택기를 추가합니다. — 무한한 게임. // @description:zh-TW 在 https://neal.fun/infinite-craft/ 的界面中添加語言選擇器 — 無限遊戲。 // @description:zh-CN 在 https://neal.fun/infinite-craft/ 的界面中添加语言选择器 — 无限游戏。 // @description:id Menambahkan pemilih bahasa ke antarmuka permainan Infinity Craft di https://neal.fun/infinite-craft/ — permainan tak terbatas. // @description:ug https://neal.fun/infinite-craft/دىكى ئارايىشقۇچ تىل تاللاشنى قوشۇدۇ — ئەسسىز ياخشى سەۋمەلىك. // @description:ar يضيف محدد اللغة إلى واجهة لعبة Infinity Craft على https://neal.fun/infinite-craft/ — اللعبة اللانهائية. // @description:he מוסיף בורר שפה לממשק המשחק של Infinity Craft ב- https://neal.fun/infinite-craft/ — המשחק האין-סופי. // @description:hi https://neal.fun/infinite-craft/ पर खेल Infinity Craft के इंटरफ़ेस में भाषा चयनकर्ता जोड़ता है — अनंत खेल। // @description:th เพิ่มเครื่องเลือกภาษาในอินเตอร์เฟซของเกม Infinity Craft ที่ https://neal.fun/infinite-craft/ — เกมอนันต์ // @description:bg Добавя селектор на език към интерфейса на играта Infinity Craft в https://neal.fun/infinite-craft/ — безкрайната игра. // @description:ro Adaugă un selector de limbă la interfața jocului Infinity Craft la https://neal.fun/infinite-craft/ — jocul infinit. // @description:fi Lisää kielen valitsin Infinity Craft -pelin käyttöliittymään osoitteessa https://neal.fun/infinite-craft/ — loputon peli. // @description:it Aggiunge un selettore di lingua all'interfaccia del gioco Infinity Craft su https://neal.fun/infinite-craft/ — il gioco infinito. // @description:el Προσθέτει έναν επιλογέα γλώσσας στο περιβάλλον του παιχνιδιού Infinity Craft στο https://neal.fun/infinite-craft/ — το άπειρο παιχνίδι. // @description:eo Aldonas lingvon elektilon al la interfaco de la ludo Infinity Craft ĉe https://neal.fun/infinite-craft/ — la senfina ludo. // @description:hu Nyelvválasztó hozzáadása a Infinity Craft játék felületéhez a https://neal.fun/infinite-craft/ oldalon — a végtelen játék. // @description:nb Legger til et språkvelger i grensesnittet til spillet Infinity Craft på https://neal.fun/infinite-craft/ — det uendelige spillet. // @description:sk Pridáva jazykový selektor do rozhrania hry Infinity Craft na https://neal.fun/infinite-craft/ — nekonečná hra. // @description:sv Lägger till en språkväljare i gränssnittet för spelet Infinity Craft på https://neal.fun/infinite-craft/ — det oändliga spelet. // @description:sr Додаје изборник језика на интерфејс игре Infinity Craft на https://neal.fun/infinite-craft/ — бесконачна игра. // @description:pl Dodaje selektor języka do interfejsu gry Infinity Craft na https://neal.fun/infinite-craft/ — nieskończona gra. // @description:nl Voegt een taalselector toe aan de interface van het spel Infinity Craft op https://neal.fun/infinite-craft/ — het oneindige spel. // @description:de Fügt dem Interface des Spiels Infinity Craft auf https://neal.fun/infinite-craft/ einen Sprachauswahl hinzu — das unendliche Spiel. // @description:da Tilføjer en sprogvælger til grænsefladen af spillet Infinity Craft på https://neal.fun/infinite-craft/ — det uendelige spil. // @description:cs Přidává jazykový selektor do rozhraní hry Infinity Craft na https://neal.fun/infinite-craft/ — nekonečná hra. // @description:uk Додає селектор мови до інтерфейсу гри Infinity Craft на https://neal.fun/infinite-craft/ — нескінченна гра. // @description:tr Infinity Craft oyununun https://neal.fun/infinite-craft/ arayüzüne dil seçici ekler — sonsuz oyun. // @description:vi Thêm một trình chọn ngôn ngữ vào giao diện của trò chơi Infinity Craft tại https://neal.fun/infinite-craft/ — trò chơi vô tận. // @description:fr-CA Ajoute un sélecteur de langue à l'interface du jeu Infinity Craft sur https://neal.fun/infinite-craft/ — le jeu infini. // @icon https://static.fanbyte.com/uploads/2024/02/Infinite%20Craft%20Inverted-360x360.jpg // @license MIT // @grant none // @compatible chrome // @compatible firefox // @compatible opera // @compatible edge // @compatible safari // ==/UserScript== (function() { let getLangs = "en|pt"; // de inglês para português (padrão) // Adiciona o seletor de idiomas ao canto superior esquerdo var languageSelector = document.createElement('select'); languageSelector.style.position = 'fixed'; languageSelector.style.top = '10px'; languageSelector.style.left = '140px'; languageSelector.style.padding = '5px 2px'; languageSelector.style.fontSize = '1rem'; languageSelector.style.background = 'transparent'; languageSelector.style.border = 'solid 2px #6a8491'; languageSelector.style.zIndex = '22'; languageSelector.style.borderRadius = '4px'; languageSelector.style.color = '#57788c'; // Adiciona as opções de idioma var languages = [ { name: 'Português', code: 'pt' }, { name: 'Español', code: 'es' }, { name: 'Русский', code: 'ru' }, { name: 'Français', code: 'fr' }, { name: '日本語', code: 'ja' }, { name: '한국어', code: 'ko' }, { name: '中文 (##)', code: 'zh-TW' }, { name: '中文 (简体)', code: 'zh-CN' }, { name: 'Bahasa Indonesia', code: 'id' }, { name: 'ئۇيغۇرچە', code: 'ug' }, { name: 'العربية', code: 'ar' }, { name: 'עברית', code: 'he' }, { name: 'हिन्दी', code: 'hi' }, { name: 'ไทย', code: 'th' }, { name: 'български', code: 'bg' }, { name: 'Română', code: 'ro' }, { name: 'Suomi', code: 'fi' }, { name: 'Italiano', code: 'it' }, { name: 'Ελληνικά', code: 'el' }, { name: 'Esperanto', code: 'eo' }, { name: 'Magyar', code: 'hu' }, { name: 'Norsk bokmål', code: 'nb' }, { name: 'Slovenčina', code: 'sk' }, { name: 'Svenska', code: 'sv' }, { name: 'Српски', code: 'sr' }, { name: 'Polski', code: 'pl' }, { name: 'Nederlands', code: 'nl' }, { name: 'Deutsch', code: 'de' }, { name: 'Dansk', code: 'da' }, { name: 'Čeština', code: 'cs' }, { name: 'Українська', code: 'uk' }, { name: 'Türkçe', code: 'tr' }, { name: 'Tiếng Việt', code: 'vi' } ]; for (var i = 0; i < languages.length; i++) { var option = document.createElement('option'); option.textContent = languages[i].name; option.value = languages[i].code; languageSelector.appendChild(option); } document.body.appendChild(languageSelector); // Função para atualizar a variável de idioma quando uma nova opção é selecionada languageSelector.addEventListener('change', function() { var selectedLanguage = languageSelector.value; localStorage.setItem('lang', selectedLanguage); // Armazena o idioma selecionado localmente location.reload(); // Recarrega a página }); // Define o idioma inicialmente selecionado var initialLang = localStorage.getItem('lang'); if (initialLang) { languageSelector.value = initialLang; getLangs = `en|${initialLang}` } function addTranslate() { document.querySelectorAll('.item').forEach(async (item, index, array) => { const texto = getTextContent(item); // Use a função getTextContent para obter apenas o texto if (getLangs !== "" && !item.dataset.translated) { // Verifica se o texto ainda não foi traduzido let textoEnviado = texto; let apiURL = "https://api.mymemory.translated.net/get"; let params = { q: textoEnviado, langpair: getLangs }; let queryString = Object.keys(params) .map(key => key + '=' + encodeURIComponent(params[key])) .join('&'); let requestUrl = apiURL + '?' + queryString; try { const response = await fetch(requestUrl); const data = await response.json(); if (data && data.responseData && data.responseData.translatedText) { setTextContent(item, data.responseData.translatedText); // Use a função setTextContent para definir apenas o texto item.dataset.translated = true; // Define o atributo de dados para indicar que o texto foi traduzido } else { setTextContent(item, "Não foi possível traduzir o texto."); } } catch (error) { if (error) { setTextContent(item, error); } else { setTextContent(item, "[ERRO: Sem conexão com a internet]."); } } } // Aguarda um pequeno intervalo antes de passar para o próximo item, exceto para o último item if (index !== array.length - 1) { await new Promise(resolve => setTimeout(resolve, 2000)); // Aguarda 2 segundos antes de passar para o próximo item } }); } setTimeout(function() { setInterval(addTranslate, 1500); }, 1500); // Função para obter apenas o texto, excluindo elementos filhos function getTextContent(element) { return Array.from(element.childNodes) .filter(node => node.nodeType === Node.TEXT_NODE) .map(node => node.textContent) .join(''); } // Função para definir apenas o texto, preservando elementos filhos function setTextContent(element, text) { Array.from(element.childNodes) .filter(node => node.nodeType === Node.TEXT_NODE) .forEach(node => { node.textContent = text; }); } })();