local SCREEN_WIDTH = 1920 -- 가로비율
local SCREEN_HIGHT = 1080 -- 세로비율
local TOLERANCE = 2 -- 마우스 이동속도 1~4 적당 높으면 정확도 떨어져서 칼퇴 실패율 높아짐
local INPUT_DELAY = 10 -- 동작 사이사이 딜레이
local function PressAndReleaseMouseButton(button)
PressMouseButton(button)
Sleep(INPUT_DELAY)
ReleaseMouseButton(button)
Sleep(INPUT_DELAY)
end -- end function
local function PressAndReleaseKey(keyname)
PressKey(keyname)
Sleep(INPUT_DELAY)
ReleaseKey(keyname)
Sleep(INPUT_DELAY)
end -- end function
local function UseSkillCtrl(key,cnt)
PressKey("lctrl")
Sleep(INPUT_DELAY)
while cnt > 0 do
PressAndReleaseKey(key)
cnt = cnt - 1
end --end while
ReleaseKey("lctrl")
Sleep(INPUT_DELAY)
end -- end function
local function GetCurrentPixel()
local coord_x_64K, coord_y_64K = GetMousePosition()
Sleep(10)
local coord_x_pixel = math.floor((coord_x_64K + (0.5 + 2^-16)) * (SCREEN_WIDTH - 1) / 65535)
local coord_y_pixel = math.floor((coord_y_64K + (0.5 + 2^-16)) * (SCREEN_HIGHT - 1) / 65535)
return coord_x_pixel, coord_y_pixel
end -- end function
local function MoveMousePixel(target_x_pixel,target_y_pixel,num)
local current_x_pixel, current_y_pixel, x, y
local maximum_cnt = SCREEN_WIDTH
while true do
current_x_pixel, current_y_pixel = GetCurrentPixel()
if current_x_pixel - target_x_pixel > TOLERANCE then
x = -1
elseif target_x_pixel- current_x_pixel > TOLERANCE then
x = 1
else
x = 0
end -- if end
if current_y_pixel - target_y_pixel > TOLERANCE then
y = -1
elseif target_y_pixel - current_y_pixel > TOLERANCE then
y = 1
else
y = 0
end
MoveMouseRelative(x * (TOLERANCE+1) , y * (TOLERANCE+1) )
maximum_cnt = maximum_cnt - 1
if (maximum_cnt < 0 or (x==0 and y==0)) and num==1 then
Sleep(50)
PressKey("escape")
ReleaseKey("escape")
Sleep(10)
PressAndReleaseMouseButton(1)
PressAndReleaseMouseButton(1)
PressKey("escape")
ReleaseKey("escape")
break
elseif (maximum_cnt < 0 or (x==0 and y==0)) and num==2 then
Sleep(50)
PressAndReleaseKey("7") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("7") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("6") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("6") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("minus") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("minus") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("2") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("2") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
break
elseif (maximum_cnt < 0 or (x==0 and y==0)) and num==3 then
Sleep(INPUT_DELAY)
break
end --end if
end -- end while
Sleep(FUCTION_DELAY)
end -- end function
local function Retreat(x,y,num)
MoveMousePixel(x,y,num)
end --end function
function Random(a, b)
if not _SEED then
_SEED = GetRunningTime()
math.randomseed(_SEED)
end
return math.random(a, b)
end
--------------------------------설정 변경 ---------------------------------
function OnEvent(event, arg)
if (event == "MOUSE_BUTTON_PRESSED" and arg == 2 and IsKeyLockOn("capslock")) then -- 우클릭시 좌표 띄워주는 코드
Sleep (50)
OutputLogMessage("(%d, %d)\n",GetCurrentPixel())
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
Sleep (10)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(30,55)
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 3 and not IsKeyLockOn("capslock")) then -- 보스
PressAndReleaseKey("1") -- 1번 누름 (음양사 OR 염력사)
UseSkillCtrl("r",1) -- Q 누름 (주박청음 시전)
PressAndReleaseKey("4") -- 4번 누름 (아르주나 소환)
UseSkillCtrl("r",1)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 5 and IsKeyLockOn("capslock")) then -- 본진홀드 , 주박OR허영, 뇌전주 , 격수로 전환
PressAndReleaseKey("tilde") -- `키 누름 (본진) 본진홀드 필요없으면 지워주세요
UseSkillCtrl("h",1) -- 본진홀드
PressAndReleaseKey("5")
PressAndReleaseMouseButton(3)
UseSkillCtrl("r",1)
PressAndReleaseKey("1") -- 1번 누름 (음양사 OR 염력사)
UseSkillCtrl("r",1) -- Q 누름 (주박청음 시전)
--------------------------------------------------
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 10 and not IsKeyLockOn("capslock")) then -- 보스
PressAndReleaseKey("tilde")
PressAndReleaseKey("h")
PressAndReleaseKey("5")
PressAndReleaseMouseButton(3)
PressAndReleaseKey("6")
UseSkillCtrl("r",1)
PressAndReleaseKey("8")
UseSkillCtrl("r",1)
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 5 and not IsKeyLockOn("capslock")) then -- 보스
PressAndReleaseKey("9")
PressAndReleaseMouseButton(3)
MoveMouseRelative(0,-80)
PressAndReleaseKey("2")
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
MoveMouseRelative(80,60)
PressAndReleaseKey("6")
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
MoveMouseRelative(-40,80)
PressAndReleaseKey("8")
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
MoveMouseRelative(-120,0)
PressAndReleaseKey("3")
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
MoveMouseRelative(-40,-120)
PressAndReleaseKey("7")
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
MoveMouseRelative(120,40)
PressAndReleaseKey("tilde")
UseSkillCtrl("H",1)
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 3 and IsKeyLockOn("capslock")) then -- 보스
PressAndReleaseKey("1") -- 1번 누름 (음양사 OR 염력사)
UseSkillCtrl("r",1) -- Q 누름 (주박청음 시전)
PressAndReleaseKey("4") -- 4번 누름 (아르주나 소환)
UseSkillCtrl("r",1)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
PressAndReleaseKey("minus") -- 4번 누름 (아르주나 소환)
UseSkillCtrl("r",1)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 4 and IsKeyLockOn("capslock")) then --스킬
PressAndReleaseKey("5")
UseSkillCtrl("m",1)
PressAndReleaseMouseButton(1)
UseSkillCtrl("r",1)
PressAndReleaseKey("3")
UseSkillCtrl("q",1)
PressAndReleaseKey("6")
UseSkillCtrl("r",3) -- 위덕
PressAndReleaseKey("2")
UseSkillCtrl("r",3) -- 광목
PressAndReleaseKey("8")
UseSkillCtrl("r",4) -- 본캐
PressAndReleaseKey("7")
UseSkillCtrl("r",2) -- 맹획
end
if (event == "MOUSE_BUTTON_PRESSED" and arg == 4 and not IsKeyLockOn("capslock")) then --보스
PressAndReleaseKey("5")
PressAndReleaseKey("S")
PressAndReleaseKey("R")
PressAndReleaseKey("M")
PressAndReleaseMouseButton(1)
UseSkillCtrl("r",6)
PressAndReleaseKey("3")
UseSkillCtrl("q",1)
UseSkillCtrl("r",6)
PressAndReleaseKey("6")
UseSkillCtrl("r",6) -- 위덕
PressAndReleaseKey("2")
UseSkillCtrl("r",6) -- 광목
PressAndReleaseKey("7")
UseSkillCtrl("r",6) -- 맹획
PressAndReleaseKey("8")
UseSkillCtrl("r",6) -- 파쇄
PressAndReleaseKey("tilde") -- `키 누름 (본진) 본진홀드 필요없으면 지워주세요
UseSkillCtrl("h",1) -- 본진홀드
end
if event == "MOUSE_BUTTON_PRESSED" and arg == 8 then -- 도술사로 격수 마나 채우기
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
Sleep (10)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(25,45)
Sleep(50)
PressAndReleaseKey("2") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("2") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("6") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("6") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("8") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("8") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("3") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("3") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
Sleep(10)
PressAndReleaseKey("7") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("7") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("9") -- !!! 도술사 부대지정 하신 번호로 변경하세요
Sleep(50)
PressKey("lctrl")
PressAndReleaseMouseButton(3)
PressAndReleaseMouseButton(3)
ReleaseKey("lctrl")
PressAndReleaseKey("5") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseKey("5") -- !!! 격수 부대지정 하신 번호로 변경하세요
PressAndReleaseMouseButton(2)
end
if event == "MOUSE_BUTTON_PRESSED" and arg == 9 then -- 칼퇴 건들거없음
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(-120,120)
MoveMouseRelative(ㄴ0)
MoveMouseRelative(120,-120)
MoveMouseRelative(120,-120)
MoveMouseRelative(44,127)
Sleep(50)
PressKey("escape")
ReleaseKey("escape")
Sleep(10)
PressAndReleaseMouseButton(1)
PressAndReleaseMouseButton(1)
PressKey("escape")
ReleaseKey("escape")
end
end