Auto Down Attack

Join us! - https://discord.gg/3xDbJ8QD8f

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

You will need to install an extension such as Tampermonkey to install this script.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Auto Down Attack
// @namespace    http://tampermonkey.net/
// @version      1.2.1
// @description  Join us! - https://discord.gg/3xDbJ8QD8f
// @author       GoBattle Hacks Official
// @match        *://gobattle.io/*
// @match        *://*.gobattle.io/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    const aerial_down_attack_button = "z";
    const attack_frequency = 100;

    let textfield = null;

    let interval_id = null;

    function getTextField() {
        if (!textfield) {
            textfield = document.getElementById("shinobit-textfield");
        }
        return textfield;
    }

    document.addEventListener("keydown", event => {

        const currentTextField = getTextField();

        if (event.key === aerial_down_attack_button && !interval_id && currentTextField !== document.activeElement){
            aerial_down_attack();

            interval_id = setInterval(aerial_down_attack, attack_frequency);
        }
    });

    document.addEventListener("keyup", event => {

        const currentTextField = getTextField();

        if (event.key === aerial_down_attack_button && currentTextField !== document.activeElement){

            clearInterval(interval_id);
            interval_id = null;
        }
    });

    function aerial_down_attack(){

        const eventOptions = {
            "key": "ArrowUp",
            "keyCode": 38,
            "which": 38,
            "code": "ArrowUp",
            "location": 0,
            "altKey": false,
            "ctrlKey": false,
            "metaKey": false,
            "shiftKey": false,
            "repeat": false
        };

        document.dispatchEvent(new KeyboardEvent("keydown", eventOptions));

        temporarily_crouched();
        temporarily_crouched();

        sword_attack();

        document.dispatchEvent(new KeyboardEvent("keyup", eventOptions));
    }

    function jump(){
        const eventOptions = {
            "key": "ArrowUp",
            "keyCode": 38,
            "which": 38,
            "code": "ArrowUp",
            "location": 0,
            "altKey": false,
            "ctrlKey": false,
            "metaKey": false,
            "shiftKey": false,
            "repeat": false
        };
        document.dispatchEvent(new KeyboardEvent("keydown", eventOptions));
        document.dispatchEvent(new KeyboardEvent("keyup", eventOptions));
    }

    function temporarily_crouched(){

        const eventOptions = {
            "key": "ArrowDown",
            "keyCode": 40,
            "which": 40,
            "code": "ArrowDown",
            "location": 0,
            "altKey": false,
            "ctrlKey": false,
            "metaKey": false,
            "shiftKey": false,
            "repeat": false
        };
        document.dispatchEvent(new KeyboardEvent("keydown", eventOptions));
        document.dispatchEvent(new KeyboardEvent("keyup", eventOptions));
    }

    function sword_attack(){
        const eventOptions = {
            "key": "v",
            "keyCode": 86,
            "which": 86,
            "code": "KeyV",
            "location": 0,
            "altKey": false,
            "ctrlKey": false,
            "metaKey": false,
            "shiftKey": false,
            "repeat": false
        };
        document.dispatchEvent(new KeyboardEvent("keydown", eventOptions));
        document.dispatchEvent(new KeyboardEvent("keyup", eventOptions));
    }
})();