매크로

조회 수 154 추천 0 댓글 2
{ ; AHK 시작부분
#NoTrayIcon
SetBatchLines, -1
CoordMode, Mouse, Screen
Gui, +ToolWindow +AlwaysOnTop
}
{ ; 초기 명령 커맨드 부분
File = %1%
if File {
if FileExist(File) {
FileRead, script, %File%
GoSub, ButtonPlay
}
else,
MsgBox, 262160, File Error, Cannot access File:`n%File%
ExitApp
}
Menu, Tray, Icon
}
{ ; GUI
Menu, Playback, Add, Once, Playback
Menu, Playback, Add, Loop, Playback
Menu, Playback, Check, Once
Playback := "Once"
Menu, Sub, Add, Open, Open
Menu, Sub, Add, Save, Save
Menu, Sub, Add, Copy, Copy
Menu, Sub, Add, Playback, :Playback

Gui, Menu, Sub
Gui, Add, Button, x6 y10 w50 h20 vRecord, Record
Gui, Add, Button, x66 y10 w50 h20 vStop, Stop
Gui, Add, Button, x126 y10 w50 h20 vPlay, Play
Gui, Show, w191 h39, Mouse Recorder
GuiControl("Stop=0,Play=0")
}
{ ; 핫키 부분
Loop, 3 {
Hotkey, % "~" SubStr("LRM",A_Index,1) "Button", ClickHotkeys
Hotkey, % "~" SubStr("LRM",A_Index,1) "Button Up", ClickHotkeys
}
Hotkey, ~WheelDown, ClickHotkeys
Hotkey, ~WheelUp, ClickHotkeys
^+r:: GoSub, ButtonRecord
^+s:: GoSub, ButtonStop
^+p:: GoSub, ButtonPlay

ClickHotkeys:
if recording
script .= SubStr(A_ThisHotkey, 2) (InStr(A_ThisHotkey, " Up")? "":" Down") "."
return
}

; 메뉴 옵션
Open: ; 열기
{
GoSub, ButtonStop
FileSelectFile, OpenDir, 2, %A_scriptDir%, Select File:, script - Mouse Recorder (*.smr) 
if Not ErrorLevel {
FileRead, script, %OpenDir%
GuiControl("Play=1")
}
return
}
Save: ; 저장 스크립트
{
GoSub, ButtonStop
FileSelectFile, SaveDir, S2, %A_scriptDir%, Save As:, script - Mouse Recorder (*.smr)
if Not ErrorLevel {
SaveDir := RegExReplace(SaveDir, "i)\.smr") ".smr"
FileDelete, %SaveDir%
FileAppend, %script%, %SaveDir%
}
return
}
Copy: ; 클립보드로 복사
{
if Not script
return
Clipboard := script
ToolTip, script Copied to Clipboard
SetTimer, RemoveToolTip, 1000
return
RemoveToolTip:
ToolTip
return
}
Playback: ; 한번,여러번 반복
{
Playback := A_ThisMenuItem
Menu, Playback, Check, %A_ThisMenuItem%
Menu, Playback, UnCheck, % (A_ThisMenuItem="Once"? "Loop":"Once")
return
}
GuiClose:
{
ExitApp
}

; GUI 버튼설정
ButtonRecord: ; 기록시작
{
StoredX := StoredY := ""
GuiControl("Record=0,Stop=1,Play=0")
Gui, Show, , Recording ...
CoordMode, Mouse, Screen
recording := true
script := ""
while recording {
MouseGetPos, X, Y
if (StoredX=X and StoredY=Y)
script .= "+."
else {
script .= X "," Y "."
StoredX:=X, StoredY:=Y
}
Sleep, 10
}
script := SubStr(script, 1, -1)
return
}
ButtonStop: ; 기록정지
{
if playing {
playing := false
return
}
Gui, Show, , Mouse Recorder
GuiControl("Record=1,Stop=0,Play=1")
recording := false ; Stop Recording
return
}
ButtonPlay: ; 재생
{
Gui, Show, , Playing ...
StoredX := StoredY := ""
playing := true
Loop, Parse, script, .
{
Sleep, -1
if Not playing
break
else if RegExMatch(A_LoopField,"(\d+),(\d+)",p) {
MouseMove, %p1%, %p2%, 0
StoredX:=p1, StoredY:=p2
} else if (A_LoopField = "+")
MouseMove, %StoredX%, %StoredY%, 0
else,
Send, {%A_LoopField%}
}
if (Playback = "Loop") and Playing
GoTo, ButtonPlay
playing := false
Gui, Show, , Mouse Recorder
return
}

GuiControl(option) {
Loop, Parse, option, `,
{
StringSplit, item, A_LoopField, =
GuiControl, % (item2 ? "En":"Dis") "able", %item1%
}
}

---------------

요 스크립트인데요. 이걸 FPS게임에서도 저장될수있도록 만들고 싶은데 어느부분을 건드려야 할가요..


List of Articles
분류 제목 글쓴이 최근변경 추천
자유 특정 숫자에 가장 가까운 변수 구하려고 합니다. 4 마이충의분노 2017.12.22 0/0
질문 오핫 ADB만 쓰면 메이플 가드에 안걸릴까요? 세븐수 2017.12.22 0/0
질문 하나의 구이버튼으로 일시정지/재시작 질문이요 4 공유야우 2017.12.31 0/0
질문 오핫으로 가능하나요? 1 snfwld 2017.12.21 0/0
질문 gidp 이미지검색관련 함수질문이요 5 공유야우 2017.12.21 0/0
질문 비활성클릭 질문드립니다.. 2 큰일이넹 2017.12.21 0/0
질문 블루스택3에서 자동접속기능을 만들려고 합니다. 3 가족오락관 2017.12.23 0/0
질문 오토핫키를 시작해보려고 합니다. 조언좀 부탁해요 1 워니아부지 2017.12.19 0/0
공유 배틀그라운드 식생제거 최신버전 4 오토에임 2018.10.15 0/0
자유 유료 오토핫키를 사용하다 사기당해버렸네요... 4 컴파일러패킹 2018.01.23 0/0
정보 gdip 비활성 이미지 서치, postmessage 모모 소스입니다. 6 사이다업 2021.01.23 1/0
질문 postmessage를 gui에서 받아와서쓰는방법 1 뚜르따르또르 2017.12.18 0/0
질문 고수님들! 도와주세요! 주삐루따 2017.12.18 0/0
질문 마우스레코더 프로그램을 FPS게임에서 사용되게하기. 2 반닙 2017.12.17 0/0
질문 블루스택3 gdip먹히나요? 2 가족오락관 2017.12.23 0/0
질문 픽셀서치반응속도에 대해서 질문드립니다. 3 반닙 2017.12.16 0/0
질문 외부에서의 txt를 읽고 명령어 구문을 추가하는게 가능... GOLD 2017.12.15 0/0
질문 인터넷을 뒤지다가 스크린샷캡처후 자동 imgur 업로드 ... GOLD 2017.12.14 0/0
질문 랜덤좌표를 원 모양으로 만들 수 있나요? 1 alfhsk 2017.12.14 0/0
자유 이미지 서치 오토핫키 의뢰합니다 ghdwns 2017.12.14 0/0
Board Pagination Prev 1 ... 686970717273747576 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글