1 (изменено: Invalid, 2011-07-24 11:40:54)

Тема: AHK: Сложение и вычитание

Loop 
{
GetKeyState, XJ, JoyX
GetKeyState, YJ, JoyY
If (XJ < 99) and (XJ > 1) and (YJ = 0)
{
MouseGetPos,x,y
if Y > 500
Send {Click 500 400 0}
if (X = 500) and (Y = 400)
MouseMove, 0, 0, 0, R
if (X > 500) and (Y < 501)
MouseMove, -10, -10, 0, R
if (X < 500) and (Y < 501)
MouseMove, 10, -10, 0, R
}
If (XJ = 100) and (YJ > 1) and (YJ < 99)
{
MouseGetPos,x,y
if X < 500
Send {Click 600 500 0}
if (X = 600) and (Y = 500)
MouseMove, 0, 0, 0, R
if (X > 499) and (Y < 500)
MouseMove, 10, 10, 0, R
if (X > 499) and (Y > 500)
MouseMove, 10, -10, 0, R
}
If (XJ < 99) and (XJ > 1) and (YJ = 100)
{
MouseGetPos,x,y
if Y < 500
Send {Click 500 600 0}
if (X = 500) and (Y = 600)
MouseMove, 0, 0, 0, R
if (X < 500) and (Y > 499)
MouseMove, 10, 10, 0, R
if (X > 500) and (Y > 499)
MouseMove, -10, 10, 0, R
}
If (XJ = 0) and (YJ > 1) and (YJ < 99)
{
MouseGetPos,x,y
if X > 500
Send {Click 400 500 0}
if (X = 400) and (Y = 500)
MouseMove, 0, 0, 0, R
if (X < 501) and (Y < 500)
MouseMove, -10, 10, 0, R
if (X < 501) and (Y > 500)
MouseMove, -10, -10, 0, R
}
}

Скрипт при вращении рукоятки 1го джойстика чертит на экране ромб нужно менять его положение не переписывая всех координат

пробовал так

RX:= 400
RY:= 400
U:= %RY%-100
R:= %RX%+100
D:= %RY%+100
L:= %RX%-100
Loop 
{
GetKeyState, XJ, JoyX
GetKeyState, YJ, JoyY
If (XJ < 99) and (XJ > 1) and (YJ = 0)
{
MouseGetPos,x,y
if Y > %RY%
Send {Click %RX% %U% 0}
if (X = %RX%) and (Y = %U%)
MouseMove, 0, 0, 0, R
if (X > %RX%) and (Y < %RY%)
MouseMove, -10, -10, 0, R
if (X < %RX%) and (Y < %RY%)
MouseMove, 10, -10, 0, R
}
If (XJ = 100) and (YJ > 1) and (YJ < 99)
{
MouseGetPos,x,y
if X < %RX%
Send {Click %R% %RY% 0}
if (X = %R%) and (Y = %RY%)
MouseMove, 0, 0, 0, R
if (X > %RX%) and (Y < %RY%)
MouseMove, 10, 10, 0, R
if (X > %RX%) and (Y > %RY%)
MouseMove, 10, -10, 0, R
}
If (XJ < 99) and (XJ > 1) and (YJ = 100)
{
MouseGetPos,x,y
if Y < %RY%
Send {Click %RX% %D% 0}
if (X = %RX%) and (Y = %D%)
MouseMove, 0, 0, 0, R
if (X < %RX%) and (Y > %RY%)
MouseMove, 10, 10, 0, R
if (X > %RX%) and (Y > %RY%)
MouseMove, -10, 10, 0, R
}
If (XJ = 0) and (YJ > 1) and (YJ < 99)
{
MouseGetPos,x,y
if X > %RX%
Send {Click %L% %RY% 0}
if (X = %L%) and (Y = %RY%)
MouseMove, 0, 0, 0, R
if (X < %RX%) and (Y < %RY%)
MouseMove, -10, 10, 0, R
if (X < %RX%) and (Y > %RY%)
MouseMove, -10, -10, 0, R
}
}

Но команды U:= %RY%-100 R:= %RX%+100 видимо не работают подскажите как правильно записать зарание спосибо

2

Re: AHK: Сложение и вычитание

U:= RY-100, R:= RX+100
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Сложение и вычитание

teadrinker пишет:
U:= RY-100, R:= RX+100

Спосибо все работает очень стыдно на пустом месте запутался. 3 дня не мог сообразить