Hold down key to pause script

Ask gaming related questions (AHK v1.1 and older)
unitedxt
Posts: 5
Joined: 05 Dec 2017, 15:08

Hold down key to pause script

13 May 2021, 06:32

Hi,

I want to pause the script when I press "LShift" and hold it down and when I let go of "LShift"
it resumes the script.
Also, is it possible to improve the code?

Code: Select all

LCtrl::
T:= !T
if t
{
SoundBeep, 200, 80
sleep,50
SoundBeep, 200, 80
}

if !T
SoundBeep, 100, 100

While (T)
{

PixelSearch, FoundX, FoundY, 543, 72, 567, 124, 0xBwd586, 0, Fast RGB
If ErrorLevel = 0
{
	send {a}
}

PixelSearch, FoundX, FoundY, 543, 72, 567, 124, 0x4il78b, 0, Fast RGB
If ErrorLevel = 0
{
	send {b}
}

PixelSearch, FoundX, FoundY, 548, 14, 573, 55, 0xC8dfg5, 0, Fast RGB
If ErrorLevel = 0
{
	send {c}
}

PixelSearch, FoundX, FoundY, 549, 8, 572, 56, 0x15dh8v, 0, Fast RGB
If ErrorLevel = 0
{
	send {d}
}
}
Return
[Mod edit: [code][/code] tags added.]
User avatar
mikeyww
Posts: 26877
Joined: 09 Sep 2014, 18:38

Re: Hold down key to pause script

13 May 2021, 08:56

Your colors might not be valid, but here is a general idea.

Code: Select all

#MaxThreadsPerHotkey 2

LShift::
Pause,, 1
KeyWait, LShift
Pause
Return

LCtrl::
If (T := !T)
{
 SoundBeep, 200, 80
 Sleep, 50
 SoundBeep, 200, 80
} Else SoundBeep, 100, 100
While T
{
 For k, v in [[543, 72, 567, 124, 0xBwd586, "a"], [543, 72, 567, 124, 0x4il78b, "b"]
            , [548, 14, 573,  55, 0xC8dfg5, "c"], [549,  8, 572,  56, 0x15dh8v, "d"]] {
  PixelSearch,,, v.1, v.2, v.3, v.4, v.5,, Fast RGB
  Send % ErrorLevel ? "" : v.6
 }
 Sleep, 250
}
Return
unitedxt
Posts: 5
Joined: 05 Dec 2017, 15:08

Re: Hold down key to pause script

13 May 2021, 21:47

Hi mikeyww,

The script works now thank you
If I want to change the key pressing to the below example, how can I implement it in your code?

Code: Select all

Send {a down}
Random, var, 50, 100
Sleep %var%
Send {a up}
User avatar
mikeyww
Posts: 26877
Joined: 09 Sep 2014, 18:38

Re: Hold down key to pause script

14 May 2021, 04:43

Code: Select all

LCtrl::
If (T := !T)
{
 SoundBeep, 200, 80
 Sleep, 50
 SoundBeep, 200, 80
} Else SoundBeep, 100, 100
While T
{
 For k, v in [[543, 72, 567, 124, 0xBwd586, "a"], [543, 72, 567, 124, 0x4il78b, "b"]
            , [548, 14, 573,  55, 0xC8dfg5, "c"], [549,  8, 572,  56, 0x15dh8v, "d"]] {
  PixelSearch,,, v.1, v.2, v.3, v.4, v.5,, Fast RGB
  If ErrorLevel
   Continue
  Random, wait, 50, 100
  Send % "{" v.6 " down}"
  Sleep, wait
  Send % "{" v.6 " up}"
 }
 Sleep, 250
}
Return
unitedxt
Posts: 5
Joined: 05 Dec 2017, 15:08

Re: Hold down key to pause script

14 May 2021, 15:11

Thank you

Return to “Gaming Help (v1)”

Who is online

Users browsing this forum: No registered users and 36 guests