
AutoHotKey - sekvence tlačítek na levou myš
Zdar,
potřeboval bych v AutoHotKey udělat pomůcku.
Už mám napsáno toto:
#IfWinActive ahk_exe PPJDD.EXE
a::Send, !{F4}
Zde klávesa A vyšle ALT+F4 a aplikaci ukončí.
Neúspěšně ale hledám doubleclick pravé myši.
Dělá tu někdo v AutoHotKey?
Tak už jsem na to přišel.
Když použiji například klávesu Q
q::
Send {LButton down} // stisknutí levého myšítka
Sleep 25 // sleep thread 25ms
Send {LButton up} // puštění levého myšítka
Sleep 25
Send {RButton down} // stisknutí pravého myšítka
Sleep 25
Send {RButton up} // puštění pravého myšítka
Sleep 25
Send {RButton down}
Sleep 25
Send {RButton up}
return
Přesně toto makro potřebuji, aby mi prováděla levá myš!!!!!!!
Takže jsem napsal:
LButton::
Send {LButton down}
Sleep 25
Send {LButton up}
Sleep 25
Send {RButton down}
Sleep 25
Send {RButton up}
Sleep 25
Send {RButton down}
Sleep 25
Send {RButton up}
return
Nicméně neodpaluje se levý button, kde je problém?
Nějakým způsobem to souvisí s tím, že se v levém mouse buttonu odpaluje levý mousebutton.
Když to přemapuju na libovolné jiné tlačítko nebo pravé tlačítko myši, tak to funguje.
Tak v čem to je?
Proč tam máš - chceš-li pravý doubleclick tyto řádky?
Ano, rád vysvětlím.
Jednoduše chci, aby Rdvojkliku předcházel Lclick.
Jako říkám, pokud to umístím na tu klávesu Q, tak to funguje skvěle.
Jenom když to umístím ne levou myš, tak to zlobí.
Možná je to bug AutoHotKey, nicméně mám staženou aktuální verzi (64bit).
Co tohle?
Netuším, na čem to otestovat :)
Testovat to testuju na hře Virtua cop (1)
Jde mi o to "hacknout" hru tak, aby nebylo nutné dobíjet.
Respektive, aby každý výstřel znamenal i dobití (po výstřelu).
Ten tvůj kód mi nefunguje spolehlivě.
Vede k výstřelu např. jednou z pěti kliknutí.
Dopracoval jsem se tedy sem:
Výše uvedený příklad perfektně funguje - dělá přesně co má.
Má to jen jedinou vadu, je to přiřazeno pravému tlačítku.
// Pokud stejnou sekvenci přiřadím na left-mouse, tak nefunguje dobře:
Respektive funguje v jednom z pěti až šesti případů jinak se neprovádí left-mouse.
Nevím proč, ale vzhledem k tomu, že to funguje pro všechna ostatní ("spouštěcí") tlačítka, pokládám to za bug v AutoHotKey.