2016-07-12 1 views
0

필자는 4 버튼 마우스를 가지고 있으며 수정 된 클릭의 조합을 1-8 키에 매핑하여 복잡하고 광범위한 MMO 주문 회전을 신속하게 관리하려고합니다.클릭 수를 숫자 키로 매핑하려면이 스크립트를 어떻게 수정할 수 있습니까?

내 목표는 다음과 같습니다

  • (3 마우스 버튼) XButton1, 왼쪽 클릭 = 1 키를 누른 상태에서.
  • (세 번째 마우스 버튼) XButton1을 누른 상태에서 오른쪽 클릭 = 2 키.
  • (네 번째 마우스 버튼) XButton2를 누른 상태에서 왼쪽 클릭 = 3 키.
  • (4th Mouse Button) XButton2를 누른 상태에서 오른쪽 클릭 = 4 키.
  • (세 번째 마우스 버튼) XButton1 및 Shift를 누른 상태에서 왼쪽 클릭 = 5 키.
  • (세 번째 마우스 버튼) XButton1 및 Shift를 누른 상태에서 오른쪽 클릭 = 6 키.
  • (세 번째 마우스 버튼) XButton2 및 Shift를 누른 상태에서 왼쪽 클릭 = 7 키.
  • (세 번째 마우스 버튼) XButton2 및 Shift를 누른 상태에서 오른쪽 클릭 = 8 키.

XButton1 & LButton:: 
Send 1 
XButton1 & RButton:: 
Send 2 
XButton2 & LButton:: 
Send 3 
XButton2 & RButton:: 
Send 4 
XButton1 & +LButton:: 
Send 5 
XButton1 & +RButton:: 
Send 6 
XButton2 & +LButton:: 
Send 7 
XButton2 & +RButton:: 
Send 8 

I 라인 (9)에서 유효하지 않은 단축키 오류가있어 내가 지금이 모든 잘못 될 수있다 AutoHotkey를 완전히 새로운 해요, 나는 확실하지 않다. 당신은 그 라인 9 만 combokey 표기법에 시프트 키를 나타 내기 위해 +을 사용했습니다

+0

코드는 무례한 행동을한다. 핫키 문장을 각각 한 줄에 넣거나 (woxxom이 대답에 넣었습니다), 모든 핫키를'return'으로 끝내십시오. – Blauhirn

답변

0
  1. 정확히 두 개의 물리적 키 쌍을 할 수 있습니다. 해결책 : GetKeyState을 사용하여 Shift 키 상태를 수동으로 확인하십시오.
  2. 단축키 명령 (Send ...)을 단축키 선언과 같은 줄에 넣으십시오. 그렇지 않으면 return 문이 나올 때까지 아래의 모든 명령이 실행되거나 스크립트의 마지막 부분 (모두 send 명령)으로 실행됩니다.

XButton1 & LButton::SendEither(1, 5) 
XButton1 & RButton::SendEither(2, 6) 
XButton2 & LButton::SendEither(3, 7) 
XButton2 & RButton::SendEither(4, 8) 

SendEither(key, keyShift) { 
    Send % GetKeyState("Shift","P") ? keyShift : key 
} 
관련 문제