#HotIf WinActive("ahk_class UnityWndClass")
#Requires AutoHotkey v2.0
#SingleInstance Force
global Use_FillHP := false
global Use_FillMP := false
global Use_Bomu := false
global Use_Hon := false
global Use_Gongju := false
global MP_Chk_X := 1190
global MP_Chk_Y := 865
global HP_Chk_X := 1200
global HP_Chk_Y := 840
global WinTitle := "MapleStory Worlds-옛날바람"
global hWnd := WinExist(WinTitle)
WinGetPos(&winX, &winY, &winWidth, &winHeight, hwnd)
global Win_X := winX
global Win_Y := winY
global Win_W := winWidth
global Win_H := winHeight
; --- GUI ---
MyGUI := Gui("+AlwaysOnTop")
MyGUI.Title := "Helper"
MyGUI.SetFont("s12 Bold")
global txt_MP := MyGUI.Add("Text", "x10 y10 w200 h20", "MOVING")
MyGUI.SetFont("s10 w400")
MyGUI.Show("w240 h30 x1313 y15")
MyGUI.OnEvent("Close", (*) => ExitApp())
; --- Common Functions ---
KeyEnter(KeyName, Delay := 100) {
Send(KeyName)
Sleep Delay
}
KeyHomeEnter(KeyName, Delay := 50) {
Send(KeyName)
Sleep Delay
Send("{Home}")
Sleep Delay
Send("{Enter}")
Sleep Delay
}
KeyTabTab(Delay := 80) {
Send("{Tab}")
Sleep Delay
Send("{Tab}")
Sleep Delay
;ToolTip("TAB")
}
KeyArrowEnter(KeyName, Arrow := "Left", Delay := 50){
Send(KeyName)
Sleep Delay
Send(Arrow)
Sleep Delay
Send("{Enter}")
Sleep Delay
}
SendEsc() {
Send("{Esc}")
Sleep 50
;ToolTip("ESC")
}
moving_hon(Delay := 30)
{
SendEsc()
Loop 3 {
Send("9")
Sleep Delay
Send("{Up}")
Sleep Delay
Send("{Enter}")
Sleep Delay
}
KeyTabTab()
}
Move() {
global Use_FillHP, Use_FillMP, MP_Chk_X, MP_Chk_Y, HP_Chk_X, HP_Chk_Y, Win_X,Win_Y, Win_W, Win_H
;PixelColor := 0xFF5757
PixelColor := 0xFF5757
SearchX := Win_X + 50 ; 시작 X 좌표
SearchY := Win_Y + 100 ; 시작 Y 좌표
SearchW := Win_X + 850 ; 검색할 영역 너비
SearchH := Win_Y + 800 ; 검색할 영역 높이
;DrawRectangle(SearchX,SearchY,SearchW,SearchH)
if(PixelSearch(&FoundX, &FoundY, Win_X, Win_Y, Win_W, Win_H, PixelColor))
{
Click "Right Down" , FoundX + 10, FoundY + 70 ; 우클릭 유지
Sleep 100
Click "Right Up"
}
else
{
}
}
moving_heal(Delay := 50)
{
global Use_FillHP, Use_FillMP, MP_Chk_X, MP_Chk_Y, HP_Chk_X, HP_Chk_Y, Win_X,Win_Y, Win_W, Win_H
Start := A_TickCount
;PixelColor := 0xFF5757
PixelColor := 0xFF5757
SearchX := Win_X + 50 ; 시작 X 좌표
SearchY := Win_Y + 100 ; 시작 Y 좌표
SearchW := Win_X + 850 ; 검색할 영역 너비
SearchH := Win_Y + 800 ; 검색할 영역 높이
;DrawRectangle(SearchX,SearchY,SearchW,SearchH)
;if(PixelSearch(&FoundX, &FoundY, Win_X, Win_Y, Win_W, Win_H, PixelColor))
;{
Send("5")
Sleep 25
Send("1")
Sleep 25
;KeyHomeEnter(6)
Loop 5 {
Send("6")
Sleep 60
}
moving_hon()
;}
Fin := A_TickCount - Start
ToolTip(Fin)
}
Find_Stop()
{
global Use_FillHP, Use_FillMP, MP_Chk_X, MP_Chk_Y, HP_Chk_X, HP_Chk_Y, Win_X,Win_Y, txt_MP, txt_HP, Use_Gongju
; 검색할 영역 설정
SearchX := Win_X + 100 ; 시작 X 좌표
SearchY := Win_Y + 900 ; 시작 Y 좌표
SearchW := Win_X + 300 ; 검색할 영역 너비
SearchH := Win_Y + 980 ; 검색할 영역 높이
StopPath := "C:\Users\aabb6\Documents\AutoHotkey\stop.PNG" ; 찾을 이미지 경로
;DrawRectangle(SearchX,SearchY,SearchW,SearchH)
; 이미지 매칭 수행
foundX := 0
foundY := 0
if(ImageSearch(&foundX, &foundY, SearchX, SearchY, SearchW, SearchH, StopPath))
{ ; 이미지 찾음
Critical
Comp()
StopSearching()
Sleep 50
Click "Right", 500, 500
Sleep 50
Click "Right Down", 500, 500
Sleep 50
Click "Right Up"
Sleep 50
Critical
return
}
}
Find_Start()
{
global Use_FillHP, Use_FillMP, MP_Chk_X, MP_Chk_Y, HP_Chk_X, HP_Chk_Y, Win_X,Win_Y, txt_MP, txt_HP, Use_Gongju
; 검색할 영역 설정
SearchX := Win_X + 100 ; 시작 X 좌표
SearchY := Win_Y + 900 ; 시작 Y 좌표
SearchW := Win_X + 300 ; 검색할 영역 너비
SearchH := Win_Y + 980 ; 검색할 영역 높이
StopPath := "C:\Users\aabb6\Documents\AutoHotkey\head4.PNG" ; 찾을 이미지 경로
;DrawRectangle(SearchX,SearchY,SearchW,SearchH)
; 이미지 매칭 수행
foundX := 0
foundY := 0
if(ImageSearch(&foundX, &foundY, SearchX, SearchY, SearchW, SearchH, StopPath))
{ ; 이미지 찾음
StartSearching()
return
}
}
Find_Die()
{
global Use_FillHP, Use_FillMP, MP_Chk_X, MP_Chk_Y, HP_Chk_X, HP_Chk_Y, Win_X,Win_Y, txt_MP, txt_HP, Use_Bomu
; 검색할 영역 설정
SearchX := Win_X + 1200 ; 시작 X 좌표
SearchY := Win_Y + 800 ; 시작 Y 좌표
SearchW := Win_X + 1280 ; 검색할 영역 너비
SearchH := Win_Y + 900 ; 검색할 영역 높이
bomuPath := "C:\Users\aabb6\Documents\AutoHotkey\bu.PNG" ; 찾을 이미지 경
;DrawRectangle(SearchX,SearchY,SearchW,SearchH)
; 이미지 매칭 수행
Click "Right Up"
foundX := 0
foundY := 0
if(ImageSearch(&foundX, &foundY, SearchX, SearchY, SearchW, SearchH, bomuPath))
{ ; 이미지 찾음
;Comp()
StopSearching()
Revive()
StartSearching()
return
}
}
Comp(delay := 100)
{
Send("{Alt Down}")
Sleep delay
Send("{2}")
Sleep delay
Send("{Alt Up}")
Sleep delay
}
; ----- skill -----
Gongju(delay := 100){
Critical
SendEsc()
Sleep delay
KeyTabTab()
Sleep delay
Send("3")
Sleep 100
Critical
}
Revive(delay := 100){
Critical
Sleep delay
SendEsc()
Sleep delay
KeyHomeEnter(4)
KeyTabTab()
Send("{Tab}")
Sleep 50
Critical
}
Bomu(delay :=50) {
;Critical
SendEsc()
KeyHomeEnter(7,delay)
KeyHomeEnter(8,delay)
KeyTabTab()
Send("7")
Sleep delay
Send("8")
Sleep delay
;Critical
}
HealMe(heal_count := 1, delay := 100) {
;Critical
SendEsc()
Sleep delay
KeyHomeEnter(6)
Sleep delay
KeyTabTab()
;Critical
}
DrawRectangle(x1, y1, x2, y2) {
hDC := DllCall("GetDC", "Ptr", 0) ; 화면 전체 DC 가져오기
hPen := DllCall("gdi32\CreatePen", "Int", 0, "Int", 2, "UInt", 0x0000FF) ; 빨간색 펜 (2px 두께)
hBrush := DllCall("gdi32\GetStockObject", "Int", 5) ; NULL_BRUSH (채우기 없음)
hOldPen := DllCall("gdi32\SelectObject", "Ptr", hDC, "Ptr", hPen)
hOldBrush := DllCall("gdi32\SelectObject", "Ptr", hDC, "Ptr", hBrush)
; 사각형 그리기
DllCall("gdi32\Rectangle", "Ptr", hDC, "Int", x1, "Int", y1, "Int", x2, "Int", y2)
; 리소스 정리
DllCall("gdi32\SelectObject", "Ptr", hDC, "Ptr", hOldPen)
DllCall("gdi32\SelectObject", "Ptr", hDC, "Ptr", hOldBrush)
DllCall("gdi32\DeleteObject", "Ptr", hPen)
}
StartSearching(delay := 1500)
{
SetTimer(Move,300,1)
SetTimer(Bomu,100000,1)
SetTimer(moving_heal,1000,1)
SetTimer(Find_Stop,delay,1)
SetTimer(Find_Start,delay,1)
SetTimer(Find_Die,delay,1)
}
StopSearching()
{
SetTimer(Move,0)
SetTimer(Bomu,0)
SetTimer(moving_heal,0)
SetTimer(Find_Stop,0)
SetTimer(Find_Start,0)
SetTimer(Find_Die,0)
}
F1::
{
Bomu()
StartSearching()
return
}
End::
{
SetTimer(Bomu,10000,1)
return
}
F2::
{
Comp()
;Pause
return
}
#HotIf
옛바 밀대 매크로입니다. 격수에 탭탭 해놓으면 따라다니면서 힐+혼마 기능만 있어요,
완성본은 제가 포맷해서 날려버려서.. 필요하신분 참고해서 쓰세요~