Изменил дизайн кнопки и добавил анимацию. // ==UserScript== // @name Кнопка "Бабло" на zelenka.guru // @namespace http://tampermonkey.net/ // @description Добавляет кнопку "Бабло" на ЛОЛЗ // @author stealyourbrain // @match https://zelenka.guru/* // ==/UserScript== (function() { 'use strict'; // Создание кнопки const moneyButton = document.createElement('a'); moneyButton.textContent = '$Бабло$'; moneyButton.href = 'https://zelenka.guru/forums/contests/'; moneyButton.classList.add('money-button'); // Стили для кнопки moneyButton.style.position = 'fixed'; moneyButton.style.left = '165px'; moneyButton.style.top = '440px'; moneyButton.style.backgroundColor = '#4CAF50'; moneyButton.style.color = 'white'; moneyButton.style.padding = '10px 20px'; moneyButton.style.border = 'none'; moneyButton.style.borderRadius = '15px'; moneyButton.style.cursor = 'pointer'; moneyButton.style.transition = 'background-color 0.3s, transform 0.3s'; // Добавлена анимация transform moneyButton.style.textDecoration = 'none'; // Анимация при наведении moneyButton.onmouseover = function() { this.style.backgroundColor = '#45a049'; this.style.transform = 'scale(1.05)'; }; moneyButton.onmouseout = function() { this.style.backgroundColor = '#4CAF50'; this.style.transform = 'scale(1)'; }; // Анимация движения при нажатии moneyButton.onmousedown = function() { this.style.transform = 'scale(1.05) translate(10px, 10px)'; // Смещение на 10 пикселей вправо и вниз }; moneyButton.onmouseup = function() { this.style.transform = 'scale(1.05)'; // Возвращение в исходное положение }; // Добавление кнопки на страницу document.body.appendChild(moneyButton); })(); JS // ==UserScript== // @name Кнопка "Бабло" на zelenka.guru // @namespace http://tampermonkey.net/ // @description Добавляет кнопку "Бабло" на ЛОЛЗ // @author stealyourbrain // @match https://zelenka.guru/* // ==/UserScript== (function() { 'use strict'; // Создание кнопки const moneyButton = document.createElement('a'); moneyButton.textContent = '$Бабло$'; moneyButton.href = 'https://zelenka.guru/forums/contests/'; moneyButton.classList.add('money-button'); // Стили для кнопки moneyButton.style.position = 'fixed'; moneyButton.style.left = '165px'; moneyButton.style.top = '440px'; moneyButton.style.backgroundColor = '#4CAF50'; moneyButton.style.color = 'white'; moneyButton.style.padding = '10px 20px'; moneyButton.style.border = 'none'; moneyButton.style.borderRadius = '15px'; moneyButton.style.cursor = 'pointer'; moneyButton.style.transition = 'background-color 0.3s, transform 0.3s'; // Добавлена анимация transform moneyButton.style.textDecoration = 'none'; // Анимация при наведении moneyButton.onmouseover = function() { this.style.backgroundColor = '#45a049'; this.style.transform = 'scale(1.05)'; }; moneyButton.onmouseout = function() { this.style.backgroundColor = '#4CAF50'; this.style.transform = 'scale(1)'; }; // Анимация движения при нажатии moneyButton.onmousedown = function() { this.style.transform = 'scale(1.05) translate(10px, 10px)'; // Смещение на 10 пикселей вправо и вниз }; moneyButton.onmouseup = function() { this.style.transform = 'scale(1.05)'; // Возвращение в исходное положение }; // Добавление кнопки на страницу document.body.appendChild(moneyButton); })();
Скрывает вопросы на которые вы уже ответили. В разделе "Тематические вопросы" Ставим расширение Tampermonkey (кликабельно) Удаляем стандартный текст, вставляем мой. // ==UserScript== // @name Скрывает вопросы на которые уже был ответ. // @author stealyourbrain // @match https://zelenka.guru/forums/585/* // ==/UserScript== (function() { 'use strict'; let hideThreadsEnabled = true; function toggleHideThreads() { hideThreadsEnabled = !hideThreadsEnabled; if (hideThreadsEnabled) { hideThreads(); } else { showAllThreads(); } } function hideThreads() { const icons = document.querySelectorAll('i.fa.fa-bullseye.mainc.Tooltip[data-placement="left"]:not(.processed)'); icons.forEach(icon => { const messageCell = icon.closest('.discussionListItem'); if (messageCell) { messageCell.style.display = 'none'; icon.classList.add('processed'); } }); } function showAllThreads() { const hiddenThreads = document.querySelectorAll('.discussionListItem[style="display: none;"]'); hiddenThreads.forEach(thread => { thread.style.display = ''; }); } const discussionListOptions = document.querySelector('.DiscussionListOptions'); if (discussionListOptions) { const toggleContainer = document.createElement('div'); toggleContainer.style.backgroundColor = '#2D2D2D'; toggleContainer.style.borderRadius = '8px'; toggleContainer.style.boxShadow = '0px 2px 5px rgba(0, 0, 0, 0.1)'; toggleContainer.style.padding = '8px'; toggleContainer.style.display = 'flex'; toggleContainer.style.alignItems = 'center'; const toggleLabel = document.createElement('label'); toggleLabel.textContent = 'Скрыть темы: '; toggleLabel.style.margin = '0'; toggleLabel.style.color = '#fff'; toggleLabel.style.fontWeight = 'bold'; const toggleInput = document.createElement('input'); toggleInput.type = 'checkbox'; toggleInput.checked = hideThreadsEnabled; toggleInput.style.margin = '0'; toggleInput.style.marginRight = '5px'; toggleInput.style.cursor = 'pointer'; toggleInput.style.border = 'none'; toggleInput.addEventListener('change', toggleHideThreads); toggleLabel.appendChild(toggleInput); toggleContainer.appendChild(toggleLabel); discussionListOptions.appendChild(toggleContainer); } const observer = new MutationObserver(hideThreads); observer.observe(document.body, { childList: true, subtree: true }); if (hideThreadsEnabled) { hideThreads(); } })(); JS // ==UserScript== // @name Скрывает вопросы на которые уже был ответ. // @author stealyourbrain // @match https://zelenka.guru/forums/585/* // ==/UserScript== (function() { 'use strict'; let hideThreadsEnabled = true; function toggleHideThreads() { hideThreadsEnabled = !hideThreadsEnabled; if (hideThreadsEnabled) { hideThreads(); } else { showAllThreads(); } } function hideThreads() { const icons = document.querySelectorAll('i.fa.fa-bullseye.mainc.Tooltip[data-placement="left"]:not(.processed)'); icons.forEach(icon => { const messageCell = icon.closest('.discussionListItem'); if (messageCell) { messageCell.style.display = 'none'; icon.classList.add('processed'); } }); } function showAllThreads() { const hiddenThreads = document.querySelectorAll('.discussionListItem[style="display: none;"]'); hiddenThreads.forEach(thread => { thread.style.display = ''; }); } const discussionListOptions = document.querySelector('.DiscussionListOptions'); if (discussionListOptions) { const toggleContainer = document.createElement('div'); toggleContainer.style.backgroundColor = '#2D2D2D'; toggleContainer.style.borderRadius = '8px'; toggleContainer.style.boxShadow = '0px 2px 5px rgba(0, 0, 0, 0.1)'; toggleContainer.style.padding = '8px'; toggleContainer.style.display = 'flex'; toggleContainer.style.alignItems = 'center'; const toggleLabel = document.createElement('label'); toggleLabel.textContent = 'Скрыть темы: '; toggleLabel.style.margin = '0'; toggleLabel.style.color = '#fff'; toggleLabel.style.fontWeight = 'bold'; const toggleInput = document.createElement('input'); toggleInput.type = 'checkbox'; toggleInput.checked = hideThreadsEnabled; toggleInput.style.margin = '0'; toggleInput.style.marginRight = '5px'; toggleInput.style.cursor = 'pointer'; toggleInput.style.border = 'none'; toggleInput.addEventListener('change', toggleHideThreads); toggleLabel.appendChild(toggleInput); toggleContainer.appendChild(toggleLabel); discussionListOptions.appendChild(toggleContainer); } const observer = new MutationObserver(hideThreads); observer.observe(document.body, { childList: true, subtree: true }); if (hideThreadsEnabled) { hideThreads(); } })();
ну набивать сообщения это одно, а другое это давать нормальные ответы. Как в темат вопросы не зайду, кто-то да напишет: "хз"
Добавляет снег на форум, а также маркет Ставим расширение Tampermonkey (кликабельно) Удаляем стандартный текст, вставляем мой. // ==UserScript== // @name Снег на Форум + Маркет // 2023 -2024 // @author stealyourbrain // @match https://zelenka.guru/* // @match https://lzt.market/* // ==/UserScript== const animeScript = document.createElement('script'); animeScript.src = 'https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.1/anime.min.js'; document.head.appendChild(animeScript); animeScript.onload = function () { (function () { 'use strict'; const snowflakes = []; function createSnowflake() { const snowflake = document.createElement('div'); snowflake.innerHTML = '❄'; snowflake.style.position = 'fixed'; snowflake.style.color = '#fff'; snowflake.style.pointerEvents = 'none'; snowflake.style.fontSize = Math.random() * 20 + 'px'; snowflake.style.top = '-50px'; snowflake.style.left = Math.random() * window.innerWidth + 'px'; document.body.appendChild(snowflake); snowflakes.push(snowflake); anime({ targets: snowflake, translateY: '100vh', translateX: Math.random() * 200 - 100, rotate: Math.random() * 360, duration: 2000 + Math.random() * 3000, easing: 'linear', complete: function () { document.body.removeChild(snowflake); snowflakes.splice(snowflakes.indexOf(snowflake), 1); createSnowflake(); } }); } function createSnowfall() { for (let i = 0; i < 30; i++) { createSnowflake(); } } createSnowfall(); })(); }; JS // ==UserScript== // @name Снег на Форум + Маркет // 2023 -2024 // @author stealyourbrain // @match https://zelenka.guru/* // @match https://lzt.market/* // ==/UserScript== const animeScript = document.createElement('script'); animeScript.src = 'https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.1/anime.min.js'; document.head.appendChild(animeScript); animeScript.onload = function () { (function () { 'use strict'; const snowflakes = []; function createSnowflake() { const snowflake = document.createElement('div'); snowflake.innerHTML = '❄'; snowflake.style.position = 'fixed'; snowflake.style.color = '#fff'; snowflake.style.pointerEvents = 'none'; snowflake.style.fontSize = Math.random() * 20 + 'px'; snowflake.style.top = '-50px'; snowflake.style.left = Math.random() * window.innerWidth + 'px'; document.body.appendChild(snowflake); snowflakes.push(snowflake); anime({ targets: snowflake, translateY: '100vh', translateX: Math.random() * 200 - 100, rotate: Math.random() * 360, duration: 2000 + Math.random() * 3000, easing: 'linear', complete: function () { document.body.removeChild(snowflake); snowflakes.splice(snowflakes.indexOf(snowflake), 1); createSnowflake(); } }); } function createSnowfall() { for (let i = 0; i < 30; i++) { createSnowflake(); } } createSnowfall(); })(); };