eu seguraria um dos botoes laterais do mouse e ele andaria emulando o wasd, eu usaria esse script pra jogar MIR4 com uma mão só(o jogo é um port mequetrefe do mobile e nao da pra bindar nada no mouse nas configs do jogo).
seria extremamente conveniente, até achei um script quase perfeito aqui:
Code: Select all
; using-mouse-position-as-hotkey.ahk
; ver1.1 ... added 8-directions support.
; get current mouse area and send correspond key
; press F1 and move mouse
CoordMode, Mouse, Screen
CoordMode, ToolTip, Screen
; for debug
SetTimer, tm_get_area, 100
; center position define(memo: my machine is 1920/1080)
pixx := 1600
pixy := 900
basex := pixx/2
basey := pixy/2
return
tm_get_area:
get_area()
return
get_area() {
Global basex, basey
MouseGetPos, cx, cy
cur_degree := Atan((basey-cy)/(basex-cx)) * 180 / 3.141592653589793
if (cx >= basex) {
cur_degree360 := cur_degree + 90
} else {
cur_degree360 := cur_degree + 270
}
;ToolTip, degree: %cur_degree360%, basex, basey+20, 1
dx := (basex-cx)
dy := (basey-cy)
cur_area := get_area_id(cur_degree360)
ToolTip, Area: %cur_area%, basex, basey, 2
return cur_area
}
; area area degree total degree
;-------------------------------
; 1 50 50
; 12 20 70
; 2 40 110
; 23 20 130
; 3 100 230
; 34 20 250
; 4 40 290
; 41 20 310
; 1 50 360
get_area_id(degree) {
return degree < 50 ? 1
: degree < 70 ? 12
: degree < 110 ? 2
: degree < 130 ? 23
: degree < 230 ? 3
: degree < 250 ? 34
: degree < 290 ? 4
: degree < 310 ? 41
: 1 ; 310 to 360 degree
}
F1::
area := get_area()
if (area=1) {
key1=w
key2=
}
if (area=2) {
key1=d
key2=
}
if (area=3) {
key1=s
key2=
}
if (area=4) {
key1=a
key2=
}
if (area=12) {
key1=w
; Second key is d
key2=d
}
if (area=23) {
key1=d
; Second key is s
key2=s
}
if (area=34) {
key1=s
; Second key is a
key2=a
}
if (area=41) {
key1=a
; Second key is w
key2=w
}
; other changes??? ... need to proceed 2nd key.
; Release keys that were previous pressed
if (prevkey1 != key1) {
if (prevkey1) {
Send, {%prevkey1% Up}
}
prevkey1 := key1
}
if (prevkey2 != key2) {
if (prevkey2) {
Send, {%prevkey2% Up}
}
prevkey2 := key2
}
Send, {%key1% Down}
if (key2) {
Send, {%key2% Down}
}
return ; replece to Keywait, F1 if you need
F1 Up::
Send, {%prevkey1% Up}
if (prevkey2) {
Send, {%prevkey2% Up}
}
return
se puderem me ajudar ficarei muito grato.