它应该让我在游戏中打开和关闭一个开关按钮(而不是必须按住它)。它有效,但我想知道如何。
$w:: Gosub, AutorunToggleME2
~s:: Gosub, AutoRunOffME2
AutorunToggleME2:
toggle := !toggle
Send % "{w " . ((Toggle) ? ("down") : ("up")) . "}"
return
AutoRunOffME1:
toggle = ; Off
Send {w up}
return
具体来说,我想要以下几行:
Send % "{w " . ((Toggle) ? ("down") : ("up")) . "}"
Send {w up}
答案 0 :(得分:4)
代码假装按住 w 。 here解释了基本的Send
语法。
按住或释放键:括起键的名称 然后是Down或Up这个词。例如:
Send {b down}{b up} Send {TAB down}{TAB up} Send {Up down} ; Press down the up-arrow key. Sleep 1000 ; Keep it down for one second. Send {Up up} ; Release the up-arrow key.
所以这一行:
Send {w up}
显然正在释放 w 。
另一条线更复杂:
Send % "{w " . ((Toggle) ? ("down") : ("up")) . "}"
您可以找到相关语法here的解释。
基本上:
%
表示以下文字是表达式。 .
是字符串连接运算符。 ((Toggle) ? ("down") : ("up"))
是条件运算符(a.k.a三元运算符)。它是if/else
语句的简写。在这种情况下,当Toggle
为真时,它返回“向下”,否则返回“向上”。根据Send {w down}
的值(真或假),这适用于Send {w up}
或Toggle