AutoHotkey, समाधान नहीं मिलता है


1

मुझे वास्तव में आपकी सहायता की आवश्यकता है। मैं एक ऑटोहॉट्की स्क्रिप्ट को प्रोग्राम करने की कोशिश कर रहा हूं लेकिन मुझे काम करने का हल नहीं मिल रहा है।

मेरी वर्तमान AutoHotkey स्क्रिप्ट है:

#IfWinActive Guild Wars 2
shift & 1::
Send, 1
sleep 500
Send, y
return

इसलिए जब मैं गिल्ड वॉर्स में हूं और पकड़ कर Shiftदबाऊंगा 1, तो यह मेरी स्थूलता को करेगा। इसलिए मैं स्पैम 1(होल्ड करते समय Shift) कर सकता हूं और यह बार-बार करेगा। समस्या यह है, मुझे हमेशा पकड़ रखने की जरूरत है Shift। मेरी इच्छा है, जब मैं Shiftवन टाइम प्रेस करता हूं , तो यह मैक्रो हमेशा तब करेगा जब मैं स्पैम करता हूं 1। लेकिन यह केवल जब तक मैं एक और प्रमुख (खेलने मैक्रो क्या करना चाहिए Ctrl, F1,, F2)। इसलिए अगर मैं दूसरी कुंजी खेलता हूं, तो यह सामान्य रूप से किया जाना चाहिए 1(इसलिए कोई मैक्रो नहीं)।

  • Shiftएक समय दबाने और स्पैमिंग के साथ 1= मेरी मैक्रो
  • की तरह एक कुंजी दबाने के बाद Ctrl, F1,, F2यह सामान्य करना चाहिए 1(कोई मैक्रो)।

जवाबों:


0

यह चाल चलेगा:

#ifWinActive Guild Wars 2

shift::  ; Shift to toggle auto-spammer
    hotkey, ifWinActive, Guild Wars 2
    hotkey, $1, shift_1, on
    loop {
        input, keystroke, l1 v, {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}
        if keystroke not contains 1
            break
    }
    hotkey, $1, off
return

shift_1:
    send 1
    sleep 500
    send y
return

वैकल्पिक रूप से, यदि आप हॉटकी Shiftको संशोधित करने के लिए टॉगल चाहते हैं - :X19

#ifWinActive Guild Wars 2

X = 9  ; Set this to the number of keys you want to be auto-spammable

loop %X% {  ; Create hotkeys 0-X
    hotkey, ifWinActive, Guild Wars 2
    hotkey, $%a_index%, autoSpammer
}

shift::  ; Shift to toggle auto-spammer
    autoSpam = on
    loop {
        input, keystroke, l1 v, {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}
        if regExMatch(keystroke, "[^0-9]")
            break 
    }
    autoSpam = off
return

autoSpammer:
    thisHotkey := regExReplace(a_thisHotkey, "[^0-9]")
    if autoSpam = on
    {
        sendInput %thisHotkey%
        sleep 500
        sendInput y
    }
    else
        send %thisHotkey%
return
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.