Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Fejkomat
- // @namespace http://tampermonkey.net/
- // @version 0.1
- // @description Nasłuchuje na zmiany wartości w polu input i wyrzuca wiadomość do konsoli.
- // @author You
- // @match https://pl200.plemiona.pl/game.php*screen=place*
- // @grant none
- // @run-at document-idle
- // ==/UserScript==
- (function() {
- 'use strict';
- function getRandomInt(min, max) {
- min = Math.ceil(min);
- max = Math.floor(max);
- return Math.floor(Math.random() * (max - min + 1)) + min;
- }
- // Funkcja do klikania przycisku #troop_confirm_submit
- function performConfirmAction() {
- setTimeout(() => {
- const buttonConfirm = document.querySelector('#troop_confirm_submit');
- if (buttonConfirm) {
- buttonConfirm.click();
- console.log('Przycisk potwierdzenia został kliknięty.');
- // Zapisanie stanu do sessionStorage przed przejściem do nowej strony
- sessionStorage.setItem('awaitingKeyPress', 'true');
- sessionStorage.removeItem('awaitingConfirm');
- } else {
- console.log('Przycisk potwierdzenia nie został znaleziony.');
- }
- }, getRandomInt(250, 450)); // Opóźnienie 1 sekundy
- }
- // Funkcja do naciśnięcia klawisza 'd'
- function performKeyPressAction() {
- setTimeout(() => {
- var event = new KeyboardEvent('keydown', {
- key: 'd',
- code: 'KeyD',
- keyCode: 68,
- charCode: 68,
- which: 68,
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(event);
- console.log('Klawisz "d" został naciśnięty.');
- sessionStorage.removeItem('awaitingKeyPress');
- }, getRandomInt(250, 480)); // Poczekaj 1 sekundę
- }
- // Funkcja do klikania przycisku #target_attack
- function performAttackAction() {
- setTimeout(() => {
- const buttonAttack = document.querySelector('#target_attack');
- if (buttonAttack) {
- buttonAttack.click();
- console.log('Przycisk ataku został kliknięty.');
- // Zapisanie stanu do sessionStorage przed przejściem do nowej strony
- sessionStorage.setItem('awaitingConfirm', 'true');
- } else {
- console.log('Przycisk ataku nie został znaleziony.');
- }
- }, getRandomInt(300, 500)); // Opóźnienie 1 sekundy
- }
- // Funkcja do nasłuchiwania zmian w polu input
- function listenToInputChange() {
- const inputField = document.querySelector('#place_target > input');
- if (inputField) {
- let lastValue = inputField.value;
- setInterval(() => {
- if (inputField.value !== lastValue) {
- console.log('Wartość pola input zmieniona na:', inputField.value);
- lastValue = inputField.value;
- performAttackAction();
- }
- }, 100); // Sprawdza co 100 ms
- console.log('Nasłuchiwanie na zmiany wartości pola input zostało uruchomione.');
- } else {
- console.log('Pole input nie zostało znalezione.');
- }
- }
- if (sessionStorage.getItem('awaitingConfirm') === 'true') {
- performConfirmAction();
- } else if (sessionStorage.getItem('awaitingKeyPress') === 'true') {
- performKeyPressAction();
- } else {
- listenToInputChange();
- }
- })();
Advertisement
Add Comment
Please, Sign In to add comment