Adds a boss timer to EvoWorld.io
// ==UserScript==
// @name EvoWorld.io Boss Timer
// @namespace evoworld_boss_timer
// @version 0.1
// @description Adds a boss timer to EvoWorld.io
// @author @LCDAngel99
// @match https://evoworld.io/
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
// Create a container for the boss status and timer
let bossContainer = document.createElement('div');
bossContainer.style.position = 'absolute';
bossContainer.style.top = '50px'; // Adjust the position as needed
bossContainer.style.right = '10px'; // Adjust the position to align with the leaderboard
bossContainer.style.zIndex = '9999';
bossContainer.style.display = 'flex';
bossContainer.style.alignItems = 'center';
// Add the picture of the demonic angel
let bossImage = document.createElement('img');
bossImage.src = 'https://cdn1.na.evoworld.io/sprites/bosses/boss1/flying/1.png';
bossImage.style.width = '50px'; // Adjust size as needed
bossImage.style.marginRight = '10px'; // Adjust margin as needed
bossContainer.appendChild(bossImage);
// Add the boss status text
let bossStatusText = document.createElement('div');
bossStatusText.style.fontSize = '16px';
bossStatusText.style.color = '#000000'; // Adjust color as needed
bossContainer.appendChild(bossStatusText);
// Add the boss timer
let bossTimerText = document.createElement('div');
bossTimerText.style.fontSize = '16px';
bossTimerText.style.color = '#ffffff'; // Adjust color as needed
bossContainer.appendChild(bossTimerText);
// Function to update the boss status and timer
function updateBossStatusAndTimer() {
// Check if the boss is alive on the current server
let bossIndicator = document.querySelector('.bC'); // Assuming this element indicates the boss's presence
if (bossIndicator) {
bossStatusText.innerText = "THE BOSS IS ALIVE";
bossTimerText.innerText = "";
} else {
// Calculate and display the boss timer
let currentTime = new Date();
let nextBossTime = new Date(currentTime);
nextBossTime.setHours(currentTime.getHours() + 1);
nextBossTime.setMinutes(0);
nextBossTime.setSeconds(0);
let timeDifference = nextBossTime - currentTime;
let minutes = Math.floor((timeDifference % (1000 * 60 * 60)) / (1000 * 60));
let seconds = Math.floor((timeDifference % (1000 * 60)) / 1000);
// Format the time nicely
let formattedTime = (minutes < 10 ? '0' : '') + minutes + ':' +
(seconds < 10 ? '0' : '') + seconds;
bossStatusText.innerText = "";
bossTimerText.innerText = 'Boss Timer: ' + formattedTime;
}
}
// Call updateBossStatusAndTimer function every second
setInterval(updateBossStatusAndTimer, 1000);
// Append the container to the body
document.body.appendChild(bossContainer);
})();