Automates removing ad warning, automatically starts the server, confirms queue, and automatically extends the server time when the countdown timer reaches 0:30.
当前为
// ==UserScript==
// @name Aternos Ultimate Script
// @namespace Mite's Scripts
// @version 1.0.0
// @description Automates removing ad warning, automatically starts the server, confirms queue, and automatically extends the server time when the countdown timer reaches 0:30.
// @author Mite
// @match https://aternos.org/*
// @icon https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Userbox_creeper.svg/567px-Userbox_creeper.svg.png
// @grant none
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
const extendButtonObserver = new IntersectionObserver(handleIntersection, {
root: null,
rootMargin: '0px',
threshold: 0.1
});
function handleIntersection(entries, observer) {
entries.forEach(entry => {
if (entry.isIntersecting) {
const extendButton = entry.target;
if (extendButton.textContent.trim().toLowerCase() !== "stop") {
extendButton.click();
}
observer.unobserve(extendButton);
}
});
}
function checkButtonVisibility() {
const extendButton = document.querySelector('.btn.btn-tiny.btn-success.server-extend-end');
if (extendButton) {
extendButtonObserver.observe(extendButton);
} else {
console.error('[Aternos Extend Server Time] Button not found.');
}
}
function skipAntiAdblock() {
try {
const antiAdblockButtons = document.querySelectorAll(".btn.btn-white");
for (const button of antiAdblockButtons) {
if (button.textContent.toLowerCase().includes("continue with adblocker anyway")) {
button.click();
}
}
} catch (e) {
console.error(`[Aternos Auto-Skip Anti-Adblock] There was an error: `, e);
}
}
function startServer() {
try {
const startButton = document.querySelector("#start");
if (startButton) {
startButton.click();
} else {
console.error("[Aternos Auto-Start] 'Start' button not found.");
}
} catch (e) {
console.error("[Aternos Auto-Start] There was an error: ", e);
}
}
// Function to check the timer and click extend button at 0:30
function checkTimerAndExtend() {
const timerElement = document.querySelector('.server-end-countdown');
if (timerElement) {
const timerValue = timerElement.textContent.trim();
if (timerValue === '0:30') {
const extendButton = document.querySelector('.btn.btn-tiny.btn-success.server-extend-end');
if (extendButton && extendButton.textContent.trim().toLowerCase() !== "stop") {
extendButton.click();
}
}
}
}
// Function to check for white screen and refresh the page if detected
function checkForWhiteScreen() {
const whiteScreenElement = document.querySelector('.white-screen-element');
if (whiteScreenElement) {
console.error('[Aternos White Screen] White screen detected. Refreshing page...');
window.location.reload();
}
}
// Set up intervals to check continuously
const checkInterval = 1000; // 1 second
setInterval(checkButtonVisibility, checkInterval);
setInterval(skipAntiAdblock, checkInterval);
setInterval(startServer, checkInterval);
setInterval(checkTimerAndExtend, checkInterval);
setInterval(checkForWhiteScreen, checkInterval);
})();