Func _MEMORYOPEN($IV_PID, $IV_DESIREDACCESS = 2035711, $IV_INHERITHANDLE = 1) If Not ProcessExists($IV_PID) Then SetError(1) Return 0 EndIf Local $AH_HANDLE[2] = [DllOpen("kernel32.dll") ] If @error Then SetError(2) Return 0 EndIf Local $AV_OPENPROCESS = DllCall($AH_HANDLE[0], "int", "OpenProcess", "int", $IV_DESIREDACCESS, "int", $IV_INHERITHANDLE, "int", $IV_PID) If @error Then DllClose($AH_HANDLE[0]) SetError(3) Return 0 EndIf $AH_HANDLE[1] = $AV_OPENPROCESS[0] Return $AH_HANDLE EndFunc
Func _MEMORYREAD($IV_ADDRESS, $AH_HANDLE, $SV_TYPE = "dword") If Not IsArray($AH_HANDLE) Then SetError(1) Return 0 EndIf Local $V_BUFFER = DllStructCreate($SV_TYPE) If @error Then SetError(@error + 1) Return 0 EndIf DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "") If Not @error Then Local $V_VALUE = DllStructGetData($V_BUFFER, 1) Return $V_VALUE Else SetError(6) Return 0 EndIf EndFunc
Func _MEMORYWRITE($IV_ADDRESS, $AH_HANDLE, $V_DATA, $SV_TYPE = "dword") If Not IsArray($AH_HANDLE) Then SetError(1) Return 0 EndIf Local $V_BUFFER = DllStructCreate($SV_TYPE) If @error Then SetError(@error + 1) Return 0 Else DllStructSetData($V_BUFFER, 1, $V_DATA) If @error Then SetError(6) Return 0 EndIf EndIf DllCall($AH_HANDLE[0], "int", "WriteProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "") If Not @error Then Return 1 Else SetError(7) Return 0 EndIf EndFunc
Func _MEMORYCLOSE($AH_HANDLE) If Not IsArray($AH_HANDLE) Then SetError(1) Return 0 EndIf DllCall($AH_HANDLE[0], "int", "CloseHandle", "int", $AH_HANDLE[1]) If Not @error Then DllClose($AH_HANDLE[0]) Return 1 Else DllClose($AH_HANDLE[0]) SetError(2) Return 0 EndIf EndFunc Global $BASEADD = 9619820, $EXP_ARRAY = 9622384 Global $ONLINE_ADD_STATUS = 9632960, $ESI Dim $SENDOK = False, $MEMID, $CURENTSKILL, $MOBBUG, $PET_CHECK, $PETHP_MIN, $PETHP_ADD, $TIMERPET, $TIMERPICK Dim $TITLE,$BASE_ADD, $PICK_CHECK, $SKILL1_REPEAT, $SKILL2_REPEAT, $TIMERSTAMP2, $HP_OK, $MP_OK, $HPSTAMP, $MPSTAMP, $BOSS3_LVL, $BOSS_CHECK Dim $MOBX[769], $MOBY[769], $MOBZ[769], $MOBID[769], $MOBLVL[769], $MOBDIS[769], $MOBHP[769], $MOBHPM[769], $MOBTYPE[769], $MOB_ADD, $MOB_ID_ADD, $HP_ADD Dim $LVL_MIN, $LVL_MAX, $DISTANCE, $DIS_X, $DIS_Y, $RANGE, $POINT_CHECK, $HP_CHECK, $COUNT, $TIMERSTAMP, $STOPTARGET, $STOPPICK Dim $SKILL1_CHECK, $SKILL2_CHECK, $AUTOHP_CHECK, $AUTOMP_CHECK, $HP1, $MP1, $SKILL1_CHECK, $SKILL2_CHECK, $SKILL1_TIME, $SKILL2_TIME, $LASTMOB Dim $SKILL_LIST = "{F1}|{F2}|{F3}|{F4}|{F5}|{F6}|{F7}|{F8}|1|2|3|4|5|6" DIM $LIST_WINDOWS = "Minit|The Gioi Hoan My|Element Client|VL|TIT|TT|VM|PS|KK|Shop|phamtin.co.cc|min-it.blogspot.com" Dim $JOBID, $NAME_ADD, $EXP_ADD, $LV_ADD, $TARGET_CHECK, $TIMERF, $TIMERWEAPON, $WEAPON_TIME, $WEAPON_CHECK, $WARNING_CHECK, $CHAR_ONLINE_STATUS Dim $INFO_CHECK, $SMART_TG_CHECK, $IMIN, $IMAX $MINITAUTO = GUICreate("Auto TGHM 1.33 - Minit", 400, 286, 240, 185) GUISetIcon("C:\Documents and Settings\Administrator\Desktop\Icon\tit.ico") GUISetOnEvent($GUI_EVENT_CLOSE, "ALTQ") $Tabs = GUICtrlCreateTab(2, 2, 395, 256) GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT) $Main = GUICtrlCreateTabItem("Main") $Info = GUICtrlCreateGroup("Char Info", 10, 32, 161, 121) $HP_ID = GUICtrlCreateLabel("", 16, 70, 135, 82) $JOB_ID = GUICtrlCreateLabel("", 16, 49, 65, 18) $LV_ID = GUICtrlCreateLabel("", 90, 49, 65, 18) $COR = GUICtrlCreateLabel("", 90, 129, 70, 18) GUICtrlCreateGroup("", -99, -99, 1, 1) $Target = GUICtrlCreateGroup("Target Setting", 184, 32, 201, 177) $Mob = GUICtrlCreateLabel("Mob Level", 192, 56, 53, 18) $LVL_MIN_ID = GUICtrlCreateInput("", 249, 54, 41, 22) GUICtrlSetTip($LVL_MIN_ID, "Nhập vào cấp độ nhỏ nhất của quái cần target", "Min Mob Level", 1, 1) $LVL_MAX_ID = GUICtrlCreateInput("", 294, 54, 41, 22) GUICtrlSetTip($LVL_MAX_ID, "Nhập vào cấp độ lớn nhất của quái cần target"& @CRLF&"Nếu muốn target quái cùng cấp thì nhập vào cấp min và max giống nhau nha", "Max Mob Level", 1, 1) $DISTANCE_ID = GUICtrlCreateInput("", 249, 86, 41, 22) GUICtrlSetTip($DISTANCE_ID, "Nhập vào khoảng cách target quái"& @CRLF&"Nếu sử dụng Use Base Point thì đây là phạm vi target quái ngẫu nhiên."&@CRLF&"Nếu trong phạm vi này có quái thì sẽ target con đầu tiên tìm thấy (tốc độ target rất nhanh, tránh bị ks)"&@CRLF&"Nếu không tìm thấy quái trong phạm vi này thì sẽ target con quái gần nhất (tốc độ target lâu hơn 1 chút, nhưng cũng khá nhanh)"&@CRLF&"Còn nếu không sử dụng Use base point thì đây là cự ly target quái", "Khoảng Cách", 1, 1) $RANGE_ID = GUICtrlCreateInput("", 249, 117, 41, 22) GUICtrlSetTip($RANGE_ID, "Bán kính train"&@CRLF&"Khu vực train là 1 hình vuông có tâm là Base point, cạnh bằng 2 lần bán kính", "Range", 1, 1) GUICtrlCreateLabel("Distance ", 193, 88, 49, 18) $RANGE = GUICtrlCreateLabel("Range", 193, 120, 35, 18) $TARGET_CHECK_ID = GUICtrlCreateCheckbox("Auto Target", 206, 184, 74, 17) GUICtrlSetState(-1, $GUI_CHECKED) GUICtrlSetTip($TARGET_CHECK_ID, "Cho phép Auto tự động target quái","", 1, 1) $CORD = GUICtrlCreateLabel("Base Cord", 193, 155, 55, 18) $DIS_Y_ID = GUICtrlCreateInput("", 294, 152, 41, 22) GUICtrlSetTip($DIS_Y_ID, "Tọa độ Y"," Điểm train", 1, 1) $DIS_X_ID = GUICtrlCreateInput("", 249, 152, 41, 22) GUICtrlSetTip($DIS_X_ID, "Tọa độ X"," Điểm train", 1, 1) $DIS_Z_ID = GUICtrlCreateInput("", 337, 152, 41, 22) $SMART_TG_CHECK_ID = GUICtrlCreateCheckbox("Smart Target", 294, 184, 80, 17) GUICtrlSetTip($SMART_TG_CHECK_ID, "Tính năng này sẽ giúp target quái nhanh hơn"&@CRLF&"Đồng thời tiết kiệm tài nguyên máy tính rất nhiều"&@CRLF&"Nhất là ở các máy có CPU tốc độ xử lý chậm","Target Thông Minh", 1, 1) GUICtrlSetState(-1, $GUI_CHECKED) $SAVE_POINT_ID = GUICtrlCreateButton("Set Cord", 294, 118, 85, 18, 0) GUICtrlSetTip($SAVE_POINT_ID, "Lưu tọa độ điểm train"," Điểm train", 1, 1) GUICtrlSetOnEvent($SAVE_POINT_ID, "Save_Point") $POINT_CHECK_ID = GUICtrlCreateCheckbox("Base Point", 294, 88, 74, 17) GUICtrlSetTip($POINT_CHECK_ID, "Sử dụng chế độ train theo khu vực"&@CRLF&"Nếu bị lure ra khỏi khu vực train thì sẽ hủy bỏ con quái đang target,"&@CRLF&"ngưng nhặt đồ, target lại con quái khác trong khu vực train"&@CRLF&"Khi đã quay lại khu vực train lại nhặt đồ bình thường"&@CRLF&"Base point và Range chỉ có tác dụng khi ô Base Point được đánh dấu","Base Point", 1, 1) GUICtrlCreateGroup("", -99, -99, 1, 1) $RECOVER = GUICtrlCreateGroup("Recover", 10, 160, 161, 90) $HpKey = GUICtrlCreateCombo("", 120, 184, 45, 25) GUICtrlSetTip($HpKey, "Chọn phím phục hồi máu","Phục Hồi", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $MpKey = GUICtrlCreateCombo("", 120, 214, 45, 25) GUICtrlSetTip($MpKey, "Chọn phím phục hồi mana","Phục Hồi", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $HP1_ID = GUICtrlCreateInput("", 77, 184, 38, 22) GUICtrlSetTip($HP1_ID, "Nhập vào lượng máu còn lại","Phục Hồi", 1, 1) $MP1_ID = GUICtrlCreateInput("", 77, 214, 38, 22) GUICtrlSetTip($MP1_ID, "Nhập vào lượng mana còn lại","Phục Hồi", 1, 1) $AUTOHP_CHECK_ID = GUICtrlCreateCheckbox("Min HP", 15, 186, 58, 17) GUICtrlSetState(-1, $GUI_CHECKED) $AUTOMP_CHECK_ID = GUICtrlCreateCheckbox("Min MP", 15, 216, 58, 17) GUICtrlSetState(-1, $GUI_CHECKED) GUICtrlCreateGroup("", -99, -99, 1, 1) $WARNING_CHECK_ID = GUICtrlCreateCheckbox("Warning", 206, 220, 74, 17) GUICtrlSetState(-1, $GUI_CHECKED) GUICtrlSetTip($WARNING_CHECK_ID, "Nếu chọn tính năng này thì khi nhân vật chết hoặc bị ngắt kết nối"&@CRLF&"loa hệ thống sẽ phát ra một bản nhạc để cảnh báo"&@CRLF&"cho đến khi nhân vật sống lại hoặc dừng Auto", "Tính năng cảnh báo", 1, 1) $INFO_ID = GUICtrlCreateCheckbox("Show Info", 293, 220, 74, 17) GUICtrlSetState(-1, $GUI_CHECKED) GUICtrlSetTip($INFO_ID, "Tùy chọn này sẽ giúp hiển thị thông tin của nhân vật trên Auto"&@CRLF&"Nếu phần này không được chọn thì sẽ không hiện thông tin nhân vật "&@CRLF&"nhưng cũng tiết kiệm được tài nguyên máy tính lắm đấy", "Thông tin nhân vật", 1, 1) $skill = GUICtrlCreateTabItem("Skill") $Actack = GUICtrlCreateGroup("Actack", 8, 32, 201, 217) $SKILL1_CHECK_ID = GUICtrlCreateCheckbox("Skill 1", 13, 55, 47, 17) GUICtrlSetState(-1, $GUI_CHECKED) $SKILL2_CHECK_ID = GUICtrlCreateCheckbox("Skill 2", 13, 80, 47, 17) GUICtrlSetState(-1, $GUI_CHECKED) $Skill_1_Key = GUICtrlCreateCombo("", 63, 52, 45, 25) GUICtrlSetTip($Skill_1_Key, "Chọn phím tắt, có thể sài skill liên hoàn", "Skill 1", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $Skill_2_Key = GUICtrlCreateCombo("", 63, 77, 45, 25) GUICtrlSetTip($Skill_2_Key, "Chọn phím tắt, có thể sài skill liên hoàn", "Skill 2", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $SKILL1_TIME_ID = GUICtrlCreateInput("", 112, 52, 38, 22) GUICtrlSetTip($SKILL1_TIME_ID, "Delay = Thời gian chuẩn bị + Thời gian hồi skill"&@CRLF&"Nếu sài skill liên hoàn thì để thời gian bằng tổng thời gian skill liên hoàn", "Delay", 1, 1) $SKILL2_TIME_ID = GUICtrlCreateInput("", 112, 77, 38, 22) GUICtrlSetTip($SKILL2_TIME_ID, "Delay = Thời gian chuẩn bị + Thời gian hồi skill"&@CRLF&"Nếu sài skill liên hoàn thì để thời gian bằng tổng thời gian skill liên hoàn", "Delay", 1, 1) $SKILL1_REPEAT_ID = GUICtrlCreateInput("", 154, 52, 38, 22) GUICtrlSetTip($SKILL1_REPEAT_ID, "Số lần đánh", "Loop", 1, 1) $SKILL2_REPEAT_ID = GUICtrlCreateInput("", 154, 77, 38, 22) GUICtrlSetTip($SKILL2_REPEAT_ID, "Số lần đánh", "Loop", 1, 1) GUICtrlCreateGroup("", -99, -99, 1, 1) $Pet = GUICtrlCreateGroup("", 214, 32, 177, 121) $PET_CHECK_ID = GUICtrlCreateCheckbox("Buft Pet", 272, 32, 60, 17) GUICtrlSetTip($PET_CHECK_ID, "Nếu lượng HP của pet nhỏ hơn Pet Min HP thì sẽ sử dụng skill để heal máu cho Pet"&@CRLF&"Nếu HP=0 (Pet chết) thì sẽ hồi sinh Pet và rồi Pet ra đánh tiếp", "Sử dụng chức năng Buff Pet.", 1 , 1) $PETHP_ADD_ID = GUICtrlCreateInput("", 257, 56, 38, 22) GUICtrlSetTip($PETHP_ADD_ID, "Là số máu hiện tại của Pet đang sử dụng khi đang Auto"&@CRLF&" Đồng thời cũng chính là số máu của Pet mà bạn nhập vào để tìm Pet", "Pet HP", 1, 1) $Label1 = GUICtrlCreateLabel("HP Pet", 219, 58, 35, 18) $Label2 = GUICtrlCreateLabel("ID Pet", 301, 58, 31, 18) $PETID_ID = GUICtrlCreateInput("3", 338, 56, 38, 22) $petminhp = GUICtrlCreateLabel("Pet Min HP", 219, 97, 54, 18) $PETHP_MIN_ID = GUICtrlCreateInput("3821", 289, 95, 45, 22) GUICtrlSetTip($PETHP_MIN_ID, "Chứa lượng máu tối thiểu của Pet"&@CRLF&"Nếu máu pet nhỏ hơn giá trị này thì sẽ Heal Pet","Pet Min HP", 1, 1) $Healpet_Key = GUICtrlCreateCombo("{F6}", 338, 95, 45, 25) GUICtrlSetTip($Healpet_Key, "Chọn phím để Heal máu cho Pet", "Heal Pet", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $HSpet_Key = GUICtrlCreateCombo("{F5}", 289, 121, 45, 25) GUICtrlSetTip($HSpet_Key, "Chọn phím để hồi sinh Pet khi Pet chết", "Hồi sinh Pet", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) $Goipet_Key = GUICtrlCreateCombo("{F4}", 338, 121, 45, 25) GUICtrlSetTip($Goipet_Key, "Chọn phím gọi Pet ra sau khi đã hồi sinh", "Gọi Pet", 1, 1) GUICtrlSetData(-1, $SKILL_LIST) GUICtrlCreateGroup("", -99, -99, 1, 1) $MORE = GUICtrlCreateGroup("", 214, 151, 177, 97) $PICK_CHECK_ID = GUICtrlCreateCheckbox("Pick Up", 219, 216, 57, 17) GUICtrlSetState(-1, $GUI_CHECKED) GUICtrlSetTip($PICK_CHECK_ID, "Chức năng nhặt đồ ở đây kết hợp 2 chế độ nhặt đồ theo time định kỳ 400ms"&@CRLF&"và nhặt đồ trong khi đang tìm quái (bảo đảm không bao giờ bỏ sót đồ)."&@CRLF&"Không nên để skill time nhỏ hơn 400ms để tránh bị mất đồ", "Nhặt đồ", 1, 1) $Pick_Key = GUICtrlCreateCombo("", 289, 213, 45, 25) GUICtrlSetData(-1, $SKILL_LIST) GUICtrlSetTip($Pick_Key, "Chọn phím nhặt đồ", "Nhặt đồ", 1, 1) $WEAPON_CHECK_ID = GUICtrlCreateCheckbox("Weapon", 219, 177, 65, 17) GUICtrlSetTip($WEAPON_CHECK_ID, "Tự động đổi vũ khí theo thời gian nhập vào","Đổi Vũ Khí", 1, 1) $WEAPON_KEY = GUICtrlCreateCombo("", 338, 175, 45, 25) GUICtrlSetData(-1, $SKILL_LIST) GUICtrlSetTip($WEAPON_KEY, "Chọn phím chứa Vũ Khí cần đổi","Đổi Vũ Khí", 1, 1) $WEAPON_TIME_ID = GUICtrlCreateInput("", 289, 175, 45, 22) GUICtrlSetTip($WEAPON_TIME_ID, "Thời gian để đổi Vũ Khí (s) Tính từ lúc bắt đầu Auto","Đổi Vũ Khí", 1, 1) $Tools = GUICtrlCreateTabItem("Tools") $Group2 = GUICtrlCreateGroup("Windows Rename", 16, 32, 353, 105) $TITLE1 = GUICtrlCreateCombo("", 86, 62, 121, 25) GUICtrlSetData(-1, GetListTitle()) $TITLE2 = GUICtrlCreateCombo("", 85, 93, 121, 25) GUICtrlSetData(-1, $LIST_WINDOWS) $Label3 = GUICtrlCreateLabel("Curent Name", 21, 64, 64, 17) $Label4 = GUICtrlCreateLabel("Change To", 21, 94, 57, 17) $HIDE_ID = GUICtrlCreateButton("Hide", 225, 63, 58, 20, 0) GUICtrlSetOnEvent($HIDE_ID, "Hide") GUICtrlSetTip($HIDE_ID, "Ẩn của sổ game", "Ẩn Game", 1 ,1) $SHOW_ID = GUICtrlCreateButton("Show", 288, 63, 58, 20, 0) GUICtrlSetOnEvent($SHOW_ID, "Show") GUICtrlSetTip($SHOW_ID, "Hiện cửa sổ game đã ẩn", "Hiện Game", 1 ,1) $CHANGE_ID = GUICtrlCreateButton("Change", 225, 94, 122, 20, 0) GUICtrlSetOnEvent($CHANGE_ID, "ADD_ID") GUICtrlSetTip($CHANGE_ID, "Tên cửa sổ game được chọn ở phần Current Name sẽ được đổi sang tên ở phần Change To"&@CRLF&"Đồng thời chương trình sẽ tự động cập nhật lại danh sách tên các của sổ game đang chạy", "Đổi tên", 1 ,1) GUICtrlCreateGroup("", -99, -99, 1, 1) $Group3 = GUICtrlCreateGroup("Auto Sell", 16, 142, 353, 105) GUICtrlCreateGroup("", -99, -99, 1, 1) $TabSheet1 = GUICtrlCreateTabItem("About") GUICtrlCreateTabItem("") $LOAD_ID = GUICtrlCreateButton("Load", 345, 262, 50, 20, 0) GUICtrlSetTip($LOAD_ID, "Nạp cấu hình", "Load",1 , 1) GUICtrlSetOnEvent($LOAD_ID, "OpenFile") $SAVE_ID = GUICtrlCreateButton("Save", 281, 262, 50, 20, 0) GUICtrlSetTip($SAVE_ID, "Lưu cấu hình", "Save",1 , 1) GUICtrlSetOnEvent($SAVE_ID, "SaveSetting") $MAIN_TITLE = GUICtrlCreateCombo("", 82, 261, 121, 25) GUICtrlSetData($MAIN_TITLE, GetListTitle()) GUICtrlSetTip($MAIN_TITLE, "Chọn tên cửa sổ cần Auto", "Client Name",1 , 1) $SEND_ID = GUICtrlCreateButton("Star", 216, 262, 50, 20, 0) GUICtrlSetOnEvent($SEND_ID, "Sendmouseclick") GUICtrlSetTip($SEND_ID, "Bắt đầu Auto - Phím tắt là Insert", "", 1 ,1) $NAME = GUICtrlCreateLabel("Client Name", 14, 264, 61, 17) GUISetState(@SW_SHOW) Opt("GUIOnEventMode", 1) Opt("SendKeyDelay", 10) Opt("SendKeyDownDelay", 10) Opt("SendCapslockMode", 0) Opt("WinTitleMatchMode", 3) HotKeySet("{INSERT}", "Sendmouseclick")
Do $MSG = GUIGetMsg() If $SENDOK Then $CHAR_ONLINE_STATUS = _MEMORYREAD($ONLINE_ADD_STATUS, $MEMID) Warning() If $CHAR_ONLINE_STATUS = 1 Then If $PET_CHECK Then GUICtrlSetData($PETHP_ADD_ID, _MEMORYREAD($PETHP_ADD, $MEMID)) BUFFPET() EndIf If TimerDiff($TIMERF) >=500 Then GetInfo() $TIMERF = TimerInit() EndIf If (GETCURENTMOBID() = 0) Then If (Not $STOPPICK) And ($PICK_CHECK) Then ControlSend($TITLE, "", "", GUICtrlRead($Pick_Key)) EndIf $CURENTMOBID = GETMOBINF() If (GETCURENTMOBID() = 0) Then SETCURENTMOBID($CURENTMOBID) $LASTMOB = $CURENTMOBID $TIMERSTAMP2 = TimerInit() Sleep(10) $TIMERSTAMP1 = TimerInit() $CURENTSKILL = 1 EndIf EndIf If TimerDiff($TIMERSTAMP2) > 300000 Then $MOBBUG = GETCURENTMOBID() SETCURENTMOBID(0) EndIf If $PET_CHECK Then BUFFPET() EndIf If $SKILL1_CHECK Then SKILL1() EndIf If $SKILL2_CHECK Then SKILL2() EndIf If $AUTOHP_CHECK Then SKILLHP() EndIf If $AUTOMP_CHECK Then SKILLMP() EndIf If $POINT_CHECK Then CANCELTARGET() EndIf If (Not $STOPPICK) And ($PICK_CHECK) And (TimerDiff($TIMERPICK) > 400) Then ControlSend($TITLE, "", "", GUICtrlRead($Pick_Key)) Sleep(100) $TIMERPICK = TimerInit() EndIf If ($WEAPON_CHECK) And (TimerDiff($TIMERWEAPON) >= $WEAPON_TIME) Then ControlSend($TITLE, "", "", GUICtrlRead($WEAPON_KEY)) Sleep(100) $TIMERWEAPON = TimerInit() EndIf EndIf EndIf Sleep(5) Until $MSG = $GUI_EVENT_CLOSE
Func SKILLHP() If Not $HP_OK Then If (TimerDiff($HPSTAMP) > 4000) Then $HP_OK = True EndIf EndIf If (GETHP() <= $HP1) And $HP_OK Then ControlSend($TITLE, "", "", GUICtrlRead($HpKey)) $HPSTAMP = TimerInit() $HP_OK = False EndIf EndFunc
Func SKILLMP() If Not $MP_OK Then If (TimerDiff($MPSTAMP) > 4000) Then $MP_OK = True EndIf EndIf If (GETMP() <= $MP1) And $MP_OK Then ControlSend($TITLE, "", "", GUICtrlRead($MpKey)) $MPSTAMP = TimerInit() $MP_OK = False EndIf EndFunc
Func SKILL1() $NUM1 = Int(TimerDiff($TIMERSTAMP)) $NUM2 = Int($SKILL1_TIME * $SKILL1_REPEAT + $SKILL2_TIME * $SKILL2_REPEAT) If $CURENTSKILL <= $SKILL1_REPEAT Then If (Mod($NUM1, $NUM2) > ($SKILL1_TIME * ($CURENTSKILL - 1))) Then ControlSend($TITLE, "", "", GUICtrlRead($Skill_1_Key)) Sleep(100) $CURENTSKILL = $CURENTSKILL + 1 EndIf EndIf If ($CURENTSKILL > ($SKILL1_REPEAT + $SKILL2_REPEAT)) And (Mod($NUM1, $NUM2) < ($SKILL1_TIME * $SKILL1_REPEAT + $SKILL2_TIME * ($SKILL2_REPEAT - 1))) Then $TIMERSTAMP = TimerInit() $CURENTSKILL = 1 EndIf EndFunc