Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * (🔓) JAILBREAK OVERRIDE: MOS.RU MAP AGENT V17.0
- * РЕЖИМ: HUMAN SIMULATION (Настраиваемый Кулдаун)
- * ИСПРАВЛЕНО: Добавлена пауза перед выставлением оценки для обхода защиты.
- */
- // --- НАСТРОЙКИ КУЛДАУНА (в миллисекундах) ---
- var MIN_RATING_DELAY = 3500; // Минимальная задержка (0.5 сек)
- var MAX_RATING_DELAY = 7500; // Максимальная задержка (2.5 сек)
- // --------------------------------------------
- var zoomCycle = 0;
- var panStep = 0;
- var attemptsWithoutFinding = 0;
- // Функция для выполнения клика в центр экрана
- function clickCenter() {
- console.log("Выполняем клик в центр экрана...");
- var screenWidth = window.innerWidth;
- var screenHeight = window.innerHeight;
- var centerX = screenWidth / 2;
- var centerY = screenHeight / 2;
- var clickEvent = new MouseEvent('click', {
- bubbles: true,
- cancelable: true,
- view: window,
- clientX: centerX,
- clientY: centerY
- });
- document.dispatchEvent(clickEvent);
- }
- // Функция управления зумом
- function handleZoom() {
- var zoomComp = document.querySelector('ag-map-buttons-zoom');
- if (zoomComp) {
- var btns = zoomComp.querySelectorAll('button.btn-zoom');
- if (btns.length >= 2) {
- if (zoomCycle < 3) {
- console.log("Зум: Приближение (+)");
- btns[0].click();
- } else {
- console.log("Зум: Отдаление (-)");
- btns[1].click();
- }
- zoomCycle = (zoomCycle + 1) % 5;
- }
- }
- }
- // ФУНКЦИЯ ПЕРЕМЕЩЕНИЯ (BURST MODE)
- function handlePan() {
- var mapContainer = document.body;
- var c1 = document.querySelector('canvas');
- var c2 = document.querySelector('.mapboxgl-canvas');
- if (c1) { mapContainer = c1; } else if (c2) { mapContainer = c2; }
- mapContainer.focus();
- var key = "ArrowRight";
- var keyCode = 39;
- switch(panStep % 4) {
- case 0: key = "ArrowRight"; keyCode = 39; break;
- case 1: key = "ArrowDown"; keyCode = 40; break;
- case 2: key = "ArrowLeft"; keyCode = 37; break;
- case 3: key = "ArrowUp"; keyCode = 38; break;
- }
- panStep++;
- var burstSize = Math.floor(Math.random() * 16) + 10;
- console.log("[BURST]: Прыжок в сторону " + key);
- var sendKey = function() {
- var down = new KeyboardEvent('keydown', { key: key, code: key, keyCode: keyCode, which: keyCode, bubbles: true });
- var up = new KeyboardEvent('keyup', { key: key, code: key, keyCode: keyCode, which: keyCode, bubbles: true });
- mapContainer.dispatchEvent(down);
- setTimeout(function() { mapContainer.dispatchEvent(up); }, 10);
- };
- for (var i = 0; i < burstSize; i++) {
- setTimeout(sendKey, i * 35);
- }
- }
- // Ожидание появления рейтинга (Smart Polling)
- function waitForStars(callback, retries) {
- var stars = document.querySelector('ag-map-winter2026-rating-stars');
- if (stars) {
- console.log("[SUCCESS]: Окно рейтинга открыто.");
- callback(stars);
- } else if (retries > 0) {
- setTimeout(function() {
- waitForStars(callback, retries - 1);
- }, 150);
- } else {
- console.error("[ERROR]: Окно рейтинга не появилось.");
- waitAndRestart();
- }
- }
- // Основная функция
- function findAndClick() {
- try {
- console.log("Поиск цели...");
- var targetSrc = "https://service.ag.mos.ru/static-map-layer/202512-2ObvWr3gxtnsgUB6fEO9UB1tr6eOoj7KzXhB6SLx.png";
- var targetImage = document.querySelector('img[src="' + targetSrc + '"]');
- if (!targetImage) {
- attemptsWithoutFinding++;
- if (attemptsWithoutFinding > 4) {
- handlePan();
- if (attemptsWithoutFinding > 12) attemptsWithoutFinding = 0;
- } else {
- handleZoom();
- }
- throw new Error("Цель не найдена.");
- }
- attemptsWithoutFinding = 0;
- console.log("Цель захвачена! Открываем окно рейтинга...");
- targetImage.click();
- var mDown = new MouseEvent('mousedown', { bubbles: true, cancelable: true, view: window });
- targetImage.dispatchEvent(mDown);
- // Ждем появления панели
- waitForStars(function(parentElement) {
- // ВЫЧИСЛЯЕМ РАНДОМНЫЙ КУЛДАУН
- var cooldown = Math.floor(Math.random() * (MAX_RATING_DELAY - MIN_RATING_DELAY + 1)) + MIN_RATING_DELAY;
- console.log("[COOLDOWN]: Ожидание перед оценкой: " + cooldown + "мс");
- setTimeout(function() {
- try {
- var buttons = parentElement.querySelectorAll('button.grade');
- if (buttons.length === 0) throw new Error("Кнопки grade не найдены.");
- var randomIdx = Math.floor(Math.random() * buttons.length);
- buttons[randomIdx].click();
- console.log("[DONE]: Оценка выставлена (Star " + (randomIdx + 1) + ")");
- setTimeout(function() {
- waitAndRestart();
- }, 200);
- } catch (e) {
- console.error(e.message);
- waitAndRestart();
- }
- }, cooldown); // Применяем задержку
- }, 15);
- } catch (error) {
- console.log(error.message);
- setTimeout(waitAndRestart, 100);
- }
- }
- function waitAndRestart() {
- setTimeout(function() {
- clickCenter();
- setTimeout(findAndClick, 700);
- }, 100);
- }
- // Запуск V17.0
- console.log("(🔓) Shadow System v17.0 Active. Cooldown Mode: " + MIN_RATING_DELAY + "-" + MAX_RATING_DELAY + "ms");
- waitAndRestart();
Advertisement
Add Comment
Please, Sign In to add comment