Ajudar com o Script AHK?

0

o código abaixo é um script AHK que eu tenho usado. Funciona muito bem. Essencialmente, o que faz é puxar o mouse para baixo para mim, enquanto estou segurando o controle esquerdo e o botão esquerdo do mouse.

O problema que estou tendo, é que eu preciso do cursor para ficar completamente no meio. O jogo que eu jogo, faz com que quando você atirar (segure o botão esquerdo do mouse) a arma vai "balançar" para a esquerda e para a direita. É triste dizer que falhei miseravelmente em todas as tentativas de incorporar isso ao meu roteiro abaixo.

Alguém por favor pode ajudar?

#NoEnv
SendMode Input

~F6::Suspend
~End::ExitApp
~F5::Reload

LCtrl & ~LButton::
Loop
If GetKeyState("LButton", "LCtrl") {
Sleep, 6
moveAmount := (moveAmount = 2) ? 1 : 0
mouseXY(moveAmount,7.5)

}
else
break

Return



mouseXY(x,y)
{
DllCall("mouse_event",int,1,int,x,int,y,uint,0,uint,0)
}
    
por TheyCallMeChop 27.03.2017 / 17:21

1 resposta

0

Agora é a terceira vez que respondo a uma pergunta sobre esse roteiro exato.

Provavelmente, quem quer que tenha escrito o original, apenas copie / cole partes de outros roteiros e meio que o tenha feito funcionar.

Parece que

moveAmount := (moveAmount = 2) ? 1 : 0

é a tentativa de fazer algo assim.

o que isso faz é isto:

if (moveAmount == 2) {moveAmount: = 1} else {moveAmount: = 0}

Como o moveAmount não está definido em outro lugar, nunca pode ser 2 portanto, nunca pode ser 1, assim será sempre 0. conseqüentemente; sem movimento horizontal.

Se você quiser alternar entre olhar para a direita e para a esquerda, faça algo assim:

moveAmount := (moveAmount == 2 ? -2 : 2)

Isso definiria como 2 a primeira iteração, -2 a segunda, depois 2 novamente a terceira e assim por diante.

Qual moveria para a esquerda, depois para a direita e depois para a esquerda etc

Mas ainda estou percebendo que o moveAmount deve ser declarado em alguma parte do script que não está mais lá.

Talvez alguém simplesmente tenha desistido de tentar detectar o quanto a arma foi movida para a esquerda ou para a direita.

    
por 29.03.2017 / 00:24