您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Expedition, dungeon, circus turma on colddown
当前为
// ==UserScript== // @name Gladiatus Battle Bot // @namespace http://tampermonkey.net/ // @version 0.2 // @description Expedition, dungeon, circus turma on colddown // @author You // @match https://s*.gladiatus.gameforge.com/* // @grant none // @run-at document-start // ==/UserScript== (function () { 'use strict'; const ENEMY_NUMBER = 2; const EXPEDITION_NUMBER = 6; const ENABLE_EXPEDITIONS = true; const HP_THRESHOLD = 15; const ENABLE_SMELTERY = false; const ENABLE_TURMA = true; const ENABLE_DUNGEON = true; const TURMA_ENEMY = 5; const ENABLE_EVENT = false; const EVENT_ENEMY = 3; setInterval(main, 3000); createGetResourcesToStore(); function main() { console.log('Run Expedition Script'); const d = document; var query = new URLSearchParams(window.location.search); // VIEW const mod = query.get('mod'); const submod = query.get('submod'); const isDashboard = mod === 'overview'; const isExpeditionView = mod === 'location'; const isDungeonView = mod === 'dungeon'; const isReportsView = mod === 'reports'; const isArenaView = mod === 'arena'; const isWorkView = mod === 'work'; const isSmelteryView = mod === 'forge' && submod === 'smeltery'; const isTurmaView = mod === 'arena' && submod === 'serverArena'; const isEventView = mod === 'location' && submod === 'serverQuest'; // STATUS const hp = parseInt(d.getElementById('header_values_hp_percent').innerText); const expeditionReady = d.querySelectorAll('#cooldown_bar_expedition .cooldown_bar_fill_ready')[0]; const dungeonReady = d.querySelectorAll('#cooldown_bar_dungeon .cooldown_bar_fill_ready')[0]; const turmaReady = d.querySelectorAll('#cooldown_bar_ct .cooldown_bar_fill_ready')[0]; const eventReady = findEventReady(); // expedition battle if (hp > HP_THRESHOLD && expeditionReady) { sendRequest( 'get', 'ajax.php', `mod=location&submod=attack&location=${EXPEDITION_NUMBER}&stage=${ENEMY_NUMBER}&premium=0`, null); } // dungeon battle if (ENABLE_EXPEDITIONS && isDungeonView && dungeonReady) { const enemies = d.getElementById('content').getElementsByTagName('img'); // start dungeon if (enemies.length === 0) { const dungeonBtns = d.getElementById('content').getElementsByTagName('input'); if(!dungeonBtns[1] || dungeonBtns[1].disabled) { dungeonBtns[0].click(); } else { dungeonBtns[1].click(); } } //dungeon battle else { for (let i = 0; i < enemies.length; i++) { if (enemies[i].onclick) { enemies[i].click(); break; } } } } // circus turma battle if (isTurmaView && turmaReady) { const attackButton = document.getElementById('own3').getElementsByClassName('attack')[TURMA_ENEMY - 1]; attackButton.click(); } // event battle if (ENABLE_EVENT && hp > HP_THRESHOLD && isEventView && eventReady) { const attackBtn = document.getElementsByClassName('expedition_button')[EVENT_ENEMY - 1]; if (!attackBtn.disabled) { attackBtn.click(); } } // navigate to dungeon if (ENABLE_DUNGEON && dungeonReady && !isDungeonView) { const goToLink = d.querySelectorAll('#cooldown_bar_dungeon .cooldown_bar_link')[0]; goToLink.click(); } // navigate to turma if (ENABLE_TURMA && turmaReady && !isTurmaView) { const battleLinkElem = d.querySelectorAll('#cooldown_bar_ct .cooldown_bar_link')[0]; battleLinkElem.click(); } // navigate to event if (ENABLE_EVENT && eventReady && !isEventView) { const banner = document.getElementById('banner_event_link'); banner.click(); } //Smeltery if (!isSmelteryView && ENABLE_SMELTERY) { d.getElementById('submenu1').getElementsByTagName('a')[12].click(); } if (isSmelteryView && ENABLE_SMELTERY) { const forges = d.getElementsByClassName('forge_finished-succeeded'); for (let i = 0; i < forges.length; i++) { if (!forges[i].hasClass('tabActive')) { forges[i].click(); } setTimeout(function () { const elem = d.getElementById('forge_lootbox'); elem && elem.click(); }, 500); } } } function createGetResourcesToStore() { const intervalId = setInterval(function () { const gcaBar = document.getElementById('gca_shortcuts_bar'); if (!gcaBar) { return } const element = document.createElement('div'); element.className = 'icon-out'; const iconElement = document.createElement('a'); iconElement.className = 'icon box-icon'; iconElement.setAttribute('title', 'Store packages'); element.appendChild(iconElement); element.addEventListener('click', function () { var content = document.getElementById('content'); var link = 'ajax.php?mod=forge&submod=storageIn'; var params = 'inventory=1&packages=1&sell=1'; sendAjax(content, link, params, function () { gca_notifications.success('Packages were stored'); }); }); gcaBar.appendChild(element); clearInterval(intervalId); }, 100); } function findEventReady() { const tries = document.querySelectorAll('#ServerQuestTime span')[0] || {}; return parseInt(tries.innerHTML) > 0; } } )();