Reworked it a bit to help track and test with the ini file and minor rework.
Comes with an .ini file example before the psyop agenda character death.
Type 7 doesn't work and so des not the v3 of Type 1.
I guess you all know the words and actions for all the crups and false modesty buttspeakers out there signaling.
This is a caveman code, meant for cavemen.
If you can't live with that, don't use it please.
So, rip to that pedobear stepmom and everyone else's moms who got affected by this game and their satanist network.
Code:
;======================================================Loading======================================================
ToolTip, Loading
;=====================================INITIALIZATION
#s ingleInstance , force
WinActivate Path of Exile
#IfWinActive Path of Exile
#MaxThreadsperHotkey 2
;------------------------------------------Settings
SetTitleMatchMode, 2
CoordMode, Mouse
SetWorkingDir, %A_ScriptDir%
SetBatchLines, -1
SetDefaultMouseSpeed, 1
SetKeyDelay, 20, 20
SetMouseDelay, 20
Hk := 1
T7:= 1
GuiToggle := 0
LineSpacing1 = =========================================================================================================
LineSpacing2 = --------------------------------------------------------------------------------------------------
;------------------------------------------Setup
gosub IniLoad
gosub HotkeyLoadLoop
gosub DelayRead
;------------------------------------------Tooltip
ToolTip, Load Complete
SetTimer, RemoveToolTip, -500
;------------------------------------------Include
#Include , GeneralFunctions.ahk
#Include , IniSettings.ahk
#Include , HotkeyConfig.ahk
#Include , HotkeyRouting.ahk
#Include , DelayConfig.ahk
#Include , ScreenCapture.ahk
#Include , ScanConfig.ahk
#Include , SpellScan.ahk
#Include , ConfigType1.ahk
#Include , ConfigType2.ahk
#Include , ConfigType3.ahk
#Include , ConfigType4.ahk
#Include , ConfigType5&6.ahk
#Include , ConfigType7.ahk
#Include , Type1.ahk
#Include , Type2.ahk
#Include , Type3.ahk
#Include , Type4.ahk
#Include , Type5.ahk
#Include , Type6.ahk
#Include , Type7.ahk
Return
;======================================================End of Loading======================================================
Code:
;======================================================GeneralFunctions======================================================
RCtrl & F9::
GuiWidth:= 270
GuiHeight:= 270
MouseGetPos, Xpos, Ypos
gosub GuiBuild
Gui, Add, Text, X10 Y10, Configuration Hotkeys:
Gui, Add, Edit, X10 Y40 H21 W140 vHotkeyConfig, %HotkeyConfig%
Gui, Add, Edit, X10 Y70 H21 W140 vScanConfig, %ScanConfig%
Gui, Add, Edit, X10 Y100 H21 W140 vSpellScan, %SpellScan%
Gui, Add, Edit, X10 Y130 H21 W140 vScreenCapture, %ScreenCapture%
Gui, Add, Edit, X10 Y160 H21 W140 vDelayConfig, %DelayConfig%
Gui, Add, Text, X160 Y43, Hotkey Configuration
Gui, Add, Text, X160 Y73, Scan Configuration
Gui, Add, Text, X160 Y103, Spell Scan
Gui, Add, Text, X160 Y133, Screen Capture
Gui, Add, Text, X160 Y163, Delay Configuration
Gui, Add, Button, x70 y200 w90 h20 gSetupConfig Default, Ok
Gui, Add, Button, x170 y200 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Hotkey Configuration
Return
;======================================================
HotkeyLoadLoop:
gosub hotkeySetupRead
Hk:= 1
Loop, %HotKeyLimit% {
if (Hkey%Hk%Toggle = 0) {
Hotkey, % Hkey%Hk%Shortcut, Hotkey%Hk%
loop, 7 {
if (Hkey%Hk%Type = A_Index) {
gosub Type%A_Index%Load
break
}
}
}
Hk += 1
}
Hk:= 1
return
;======================================================
F4::
WinClose, Path of Exile
return
F7::
return
RCtrl & F10::
Gui, Cancel
Reload
Return
RCtrl & F11:: Pause
RCtrl & F12:: ExitApp
;======================================================
Cancel:
Reload
Return
;======================================================
HotkeyRouting:
loop, 7 {
If (Hkey%Hk%Type = A_Index) {
Gosub Type%A_Index%
Return
}
}
Return
;======================================================
GuiBuild:
if (GuiToggle = 1)
gosub guiSD
GuiToggle := 1
X_Offset := GuiWidth / 2
Y_Offset := GuiHeight / 2
If (Xpos < X_Offset)
Move_X := 0
Else If (Xpos < A_ScreenWidth - X_Offset)
Move_X := Xpos - X_Offset
Else
Move_X := A_ScreenWidth - GuiWidth
If (Ypos < Y_Offset)
Move_Y := 0
Else If (Ypos < A_ScreenHeight - Y_Offset)
Move_Y := Ypos - Y_Offset
Else
Move_Y := A_ScreenHeight - GuiHeight - 30
Gui, -0x80000 AlwaysOnTop
return
;======================================================
SpellCast:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
LButtonState:= GetKeyState(LButton, P)
if (LButtonState = D)
MouseClick, , , , , , U
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseClick
MouseMove, %HkeyHkSpell%X, %HkeyHkSpell%Y
MouseClick
MouseMove, Xpos, Ypos
if (Hkey%Hk%Cast%i%Toggle) {
if (Hkey%Hk%Cast%i%ShiftToggle) {
send, {LShift Down}
}
sleep, %Delay%
SendInput, % "{" Hkey%Hk%Key "}"
if (Hkey%Hk%Cast%i%ShiftToggle)
send, {LShift Up}
}
; if (Hkey%Hk%Cast%i%ShiftToggle) {
; sleep, % CastTime%i%
GetKeyState, LButtonState, LButton, P
if (LButtonState = D) {
MouseClick, , , , , , D
if (Hkey%Hk%Key = LButton)
MouseClick, , , , , , U
}
BlockInput, MouseMoveOff
j:= i
return
;======================================================
KeyWrite:
if (Hkey%Hk%Key = "Q") {
Hkey%Hk%KeyX:= 1440
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "W") {
Hkey%Hk%KeyX:= 1495
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "E") {
Hkey%Hk%KeyX:= 1550
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "R") {
Hkey%Hk%KeyX:= 1605
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "T") {
Hkey%Hk%KeyX:= 1655
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "LButton") {
Hkey%Hk%KeyX:= 1550
Hkey%Hk%KeyY:= 975
}
if (Hkey%Hk%Key = "MButton") {
Hkey%Hk%KeyX:= 1600
Hkey%Hk%KeyY:= 975
}
if (Hkey%Hk%Key = "RButton") {
Hkey%Hk%KeyX:= 1650
Hkey%Hk%KeyY:= 975
}
IniWrite, % Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX
IniWrite, % Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY
gosub KeywriteRouting
Return
;======================================================
KeyWrite1:
if (Hkey%Hk%Key%TrigN% = "Q") {
Hkey%Hk%Key%TrigN%X:= 1440
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "W") {
Hkey%Hk%Key%TrigN%X:= 1495
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "E") {
Hkey%Hk%Key%TrigN%X:= 1550
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "R") {
Hkey%Hk%Key%TrigN%X:= 1605
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "T") {
Hkey%Hk%Key%TrigN%X:= 1655
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "LButton") {
Hkey%Hk%Key%TrigN%X:= 1550
Hkey%Hk%Key%TrigN%Y:= 975
}
if (Hkey%Hk%Key%TrigN% = "MButton") {
Hkey%Hk%Key%TrigN%X:= 1600
Hkey%Hk%Key%TrigN%Y:= 975
}
if (Hkey%Hk%Key%TrigN% = "RButton") {
Hkey%Hk%Key%TrigN%X:= 1650
Hkey%Hk%Key%TrigN%Y:= 975
}
IniWrite, % Hkey%Hk%Key%TrigN%X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%X
IniWrite, % Hkey%Hk%Key%TrigN%Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%Y
Return
;======================================================
KeywriteRouting:
if (A_GuiControlHk is Integer) {
Hk := 0
A_GuiControlHk := ""
Gosub HkeyEdit
} else {
Hk += 1
Gosub HkTypeConfigRouting
}
Return
;======================================================
GuiSD:
Gui, Submit
Gui, Destroy
GuiToggle := 0
Return
;======================================================
LoadSocketLists:
SocketList := [ ["6SocketWeaponTopRightSocket", 72, 80 ]
, ["6SocketWeaponTopCenterSocket", 149, 80 ]
, ["6SocketWeaponMiddleRightSocket", 71, 155]
, ["6SocketWeaponMiddleCenterSocket", 149, 155]
, ["6SocketWeaponBottomRightSocket", 72, 230]
, ["6SocketWeaponBottomCenterSocket", 149, 230]
, ["RightWeaponTopSocket", 111, 80 ]
, ["RightWeaponMiddleSocket", 111, 155]
, ["RightWeaponBottomSocket", 111, 230]
, ["RightWeaponTopRightSocket", 84, 118]
, ["RightWeaponTopCenterSocket", 137, 118]
, ["RightWeaponBottomCenterSocket", 137, 193]
, ["LeftHandTopSocket", 523, 80 ]
, ["LeftHandMiddleSocket", 523, 155]
, ["LeftHandBottomSocket", 523, 230]
, ["LeftHandTopCenterSocket", 496, 118]
, ["LeftHandTopLeftSocket", 550, 118]
, ["LeftHandBottomLeftSocket", 550, 193]
, ["LeftHandMiddleCenterSocket", 485, 155]
, ["LeftHandMiddleLeftSocket", 561, 155]
, ["HelmetTopRightSocket", 279, 51 ]
, ["HelmetTopLeftSocket", 355, 51 ]
, ["HelmetBottomRightSocket", 279, 127]
, ["HelmetBottomLeftSocket", 355, 127]
, ["HelmetMiddleRightSocket", 279, 87 ]
, ["HelmetMiddleLeftSocket", 355, 87 ]
, ["HelmetMiddleSocket", 317, 87 ]
, ["GlovesTopRightSocket", 151, 287]
, ["GlovesTopCenterSocket", 224, 287]
, ["GlovesBottomRightSocket", 151, 362]
, ["GlovesBottomCenterSocket", 224, 362]
, ["GlovesMiddleRightSocket", 151, 324]
, ["GlovesMiddleCenterSocket", 224, 324]
, ["GlovesMiddleSocket", 187, 324]
, ["4SocketArmorTopRightSocket", 293, 202]
, ["4SocketArmorTopLeftSocket", 343, 202]
, ["4SocketArmorBottomRightSocket", 293, 265]
, ["4SocketArmorBottomLeftSocket", 343, 265]
, ["6SocketArmorTopRightSocket", 281, 170]
, ["6SocketArmorTopLeftSocket", 355, 170]
, ["6SocketArmorMiddleRightSocket", 281, 233]
, ["6SocketArmorMiddleLeftSocket", 355, 233]
, ["6SocketArmorBottomRightSocket", 281, 296]
, ["6SocketArmorBottomLeftSocket", 355, 296]
, ["1SocketArmorMiddleSocket", 317, 234]
, ["BootsTopCenterSocket", 411, 287]
, ["BootsTopLeftSocket", 484, 287]
, ["BootsBottomCenterSocket", 411, 362]
, ["BootsBottomLeftSocket", 484, 362]
, ["BootsMiddleCenterSocket", 411, 324]
, ["BootsMiddleLeftSocket", 484, 324]
, ["BootsMiddleSocket", 447, 324]
, ["RightFingerSocket", 213, 232]
, ["LeftFingerSocket", 421, 232]
, ["AmuletSocket", 421, 167]
, ["BeltRightSocket", 293, 350]
, ["BeltCenterSocket", 317, 350]
, ["BeltLeftSocket", 343, 350]
, ["Flask1", 218, 440]
, ["Flask2", 270, 440]
, ["Flask3", 322, 440]
, ["Flask4", 375, 440]
, ["Flask5", 427, 440] ]
SocketCoordList := [ ["6SocketWeaponTopRightSocket", 1355, 170]
, ["6SocketWeaponTopCenterSocket", 1405, 170]
, ["6SocketWeaponMiddleRightSocket", 1355, 225]
, ["6SocketWeaponMiddleCenterSocket", 1405, 225]
, ["6SocketWeaponBottomRightSocket", 1355, 280]
, ["6SocketWeaponBottomCenterSocket", 1405, 280]
, ["RightWeaponTopSocket", 1380, 170]
, ["RightWeaponMiddleSocket", 1380, 225]
, ["RightWeaponBottomSocket", 1380, 280]
, ["RightWeaponTopRightSocket", 1355, 200]
, ["RightWeaponTopCenterSocket", 1405, 200]
, ["RightWeaponBottomCenterSocket", 1405, 250]
, ["LeftHandTopSocket", 1795, 170]
, ["LeftHandMiddleSocket", 1795, 225]
, ["LeftHandBottomSocket", 1795, 280]
, ["LeftHandTopCenterSocket", 1765, 200]
, ["LeftHandTopLeftSocket", 1820, 200]
, ["LeftHandBottomLeftSocket", 1820, 250]
, ["LeftHandMiddleCenterSocket", 1770, 225]
, ["LeftHandMiddleLeftSocket", 1820, 225]
, ["HelmetTopRightSocket", 1560, 135]
, ["HelmetTopLeftSocket", 1615, 135]
, ["HelmetBottomRightSocket", 1560, 185]
, ["HelmetBottomLeftSocket", 1615, 185]
, ["HelmetMiddleRightSocket", 1560, 160]
, ["HelmetMiddleLeftSocket", 1615, 160]
, ["HelmetMiddleSocket", 1690, 160]
, ["GlovesTopRightSocket", 1430, 370]
, ["GlovesTopCenterSocket", 1485, 370]
, ["GlovesBottomRightSocket", 1430, 420]
, ["GlovesBottomCenterSocket", 1485, 420]
, ["GlovesMiddleRightSocket", 1430, 395]
, ["GlovesMiddleCenterSocket", 1485, 395]
, ["GlovesMiddleSocket", 1455, 395]
, ["4SocketArmorTopRightSocket", 1560, 275]
, ["4SocketArmorTopLeftSocket", 1615, 275]
, ["4SocketArmorBottomRightSocket", 1560, 333]
, ["4SocketArmorBottomLeftSocket", 1615, 333]
, ["6SocketArmorTopRightSocket", 1560, 250]
, ["6SocketArmorTopLeftSocket", 1615, 250]
, ["6SocketArmorMiddleRightSocket", 1560, 305]
, ["6SocketArmorMiddleLeftSocket", 1615, 305]
, ["6SocketArmorBottomRightSocket", 1560, 360]
, ["6SocketArmorBottomLeftSocket", 1615, 360]
, ["1SocketArmorMiddleSocket", 1585, 305]
, ["BootsTopCenterSocket", 1690, 370]
, ["BootsTopLeftSocket", 1740, 370]
, ["BootsBottomCenterSocket", 1690, 420]
, ["BootsBottomLeftSocket", 1740, 420]
, ["BootsMiddleCenterSocket", 1690, 395]
, ["BootsMiddleLeftSocket", 1740, 395]
, ["BootsMiddleSocket", 1715, 395]
, ["RightFingerSocket", 1485, 305]
, ["LeftFingerSocket", 1690, 305]
, ["AmuletSocket", 1690, 245]
, ["BeltRightSocket", 1565, 420]
, ["BeltCenterSocket", 1585, 420]
, ["BeltLeftSocket", 1605, 420]
, ["Flask1", 1487, 515]
, ["Flask2", 1540, 515]
, ["Flask3", 1592, 515]
, ["Flask4", 1645, 515]
, ["Flask5", 1697, 515] ]
AltSocketList := [ ["6SocketWeaponTopRightSocket", 72, 80, 1355, 170]
, ["6SocketWeaponTopCenterSocket", 149, 80, 1405, 170]
, ["6SocketWeaponMiddleRightSocket", 71, 155, 1355, 225]
, ["6SocketWeaponMiddleCenterSocket", 149, 155, 1405, 225]
, ["6SocketWeaponBottomRightSocket", 72, 230, 1355, 280]
, ["6SocketWeaponBottomCenterSocket", 149, 230, 1405, 280]
, ["RightWeaponTopSocket", 111, 80, 1380, 170]
, ["RightWeaponMiddleSocket", 111, 155, 1380, 225]
, ["RightWeaponBottomSocket", 111, 230, 1380, 280]
, ["RightWeaponTopRightSocket", 84, 118, 1355, 200]
, ["RightWeaponTopCenterSocket", 137, 118, 1405, 200]
, ["RightWeaponBottomCenterSocket", 137, 193, 1405, 250]
, ["LeftHandTopSocket", 523, 80, 1795, 170]
, ["LeftHandMiddleSocket", 523, 155, 1795, 225]
, ["LeftHandBottomSocket", 523, 230, 1795, 280]
, ["LeftHandTopCenterSocket", 496, 118, 1765, 200]
, ["LeftHandTopLeftSocket", 550, 118, 1820, 200]
, ["LeftHandBottomLeftSocket", 550, 193, 1820, 250]
, ["LeftHandMiddleCenterSocket", 485, 155, 1770, 225]
, ["LeftHandMiddleLeftSocket", 561, 155, 1820, 225] ]
return
;======================================================
EquipRead:
for each, Socket in SocketList {
var1 := % socket.1
var2 = Hkey%Hk%%Swap%%var1%
IniRead, %var2%, UnrapeKitConfig.ini, %Section%, %var2%, %A_Space%
}
Return
;======================================================
EquipWriteDelete:
for each, Socket in SocketList {
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
}
}
Return
;======================================================
AltEquipRead:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
IniRead, Hkey%Hk%%Swap%Alt%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%, %A_Space%
}
Return
;======================================================
AltEquipWriteDelete:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%Alt%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%
}
}
Return
;======================================================
AltEquipDelete:
for each, Socket in SocketList {
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
}
Return
;======================================================
EquipCoord:
for each, SocketCoord in SocketCoordList {
var1 := % SocketCoord.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
if (var3 = 1) {
Hkey%Hk%%Swap%_X := % socketCoord.2
Hkey%Hk%%Swap%_Y := % socketCoord.3
}
}
Return
;======================================================
AltEquipCoord:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
if (var3 = 1) {
Hkey%Hk%%Swap%Alt_X := % Altsocket.4
Hkey%Hk%%Swap%Alt_Y := % Altsocket.5
}
}
Return
;======================================================
RemoveToolTip:
ToolTip
Return
RemoveToolTip1:
ToolTip,,,, 1
Return
RemoveToolTip2:
ToolTip,,,, 2
return
RemoveToolTip3:
ToolTip,,,, 3
return
RemoveToolTip4:
ToolTip,,,, 4
return
RemoveToolTip5:
ToolTip,,,, 5
return
RemoveToolTip6:
ToolTip,,,, 6
return
RemoveToolTip7:
ToolTip,,,, 7
return
RemoveToolTip8:
ToolTip,,,, 8
return
RemoveToolTip9:
ToolTip,,,, 9
return
RemoveToolTip10:
ToolTip,,,, 10
return
RemoveToolTip11:
ToolTip,,,, 11
return
RemoveToolTip12:
ToolTip,,,, 12
return
RemoveToolTip13:
ToolTip,,,, 13
return
RemoveToolTip14:
ToolTip,,,, 14
return
RemoveToolTip15:
ToolTip,,,, 15
return
RemoveToolTip16:
ToolTip,,,, 16
return
RemoveToolTip17:
ToolTip,,,, 17
return
RemoveToolTip18:
ToolTip,,,, 18
return
RemoveToolTip19:
ToolTip,,,, 19
return
RemoveToolTip20:
ToolTip,,,, 20
return
;======================================================End of GeneralFunctions======================================================
Code:
;======================================================IniSettings======================================================
IniLoad:
IniRead, ScanCount, UnrapeKitConfig.ini, Configuration, ScanCount, %A_Space%
IniRead, HotkeyLimit, UnrapeKitConfig.ini, Configuration, HotkeyLimit, %A_Space%
IniRead, HotkeyConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, HotkeyConfig, %A_Space%
IniRead, ScanConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScanConfig, %A_Space%
IniRead, SpellScan, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, SpellScan, %A_Space%
IniRead, ScreenCapture, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScreenCapture, %A_Space%
IniRead, DelayConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, DelayConfig, %A_Space%
IniRead, CaptureName, UnrapeKitConfig.ini, Scan, CaptureName, %A_Space%
Hotkey, %HotkeyConfig%, HotkeyConfig
Hotkey, %ScanConfig%, ScanConfig
Hotkey, %SpellScan%, SpellScan
Hotkey, %ScreenCapture%, ScreenCapture
Hotkey, %DelayConfig%, DelayConfig
return
;======================================================
SetupConfig:
gosub GuiSD
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
IniWrite, %HotkeyConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, HotkeyConfig
IniWrite, %ScanConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScanConfig
IniWrite, %SpellScan%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, SpellScan
IniWrite, %ScreenCapture%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScreenCapture
IniWrite, %DelayConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, DelayConfig
Hotkey, %HotkeyConfig%, HotkeyConfig
Hotkey, %ScanConfig%, ScanConfig
Hotkey, %SpellScan%, SpellScan
Hotkey, %ScreenCapture%, ScreenCapture
Hotkey, %DelayConfig%, DelayConfig
Reload
Return
;======================================================
HotkeySetupRead:
Loop, %HotKeyLimit% {
IniRead, Hkey%A_Index%Toggle, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Toggle, %A_Space%
IniRead, Hkey%A_Index%Type, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Type, %A_Space%
IniRead, Hkey%A_Index%Shortcut, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Shortcut, %A_Space%
}
return
;======================================================
LoadScanSettings:
IniRead, ScreenCapturePos, UnrapeKitConfig.ini, %Section%, ScreenCapturePos, %A_Space%
IniRead, SaveHotkey, UnrapeKitConfig.ini, %Section%, SaveHotkey, %A_Space%
IniRead, SaveAsHotkey, UnrapeKitConfig.ini, %Section%, SaveAsHotkey, %A_Space%
IniRead, CloseHotkey, UnrapeKitConfig.ini, %Section%, CloseHotkey, %A_Space%
IniRead, YesHotkey, UnrapeKitConfig.ini, %Section%, YesHotkey, %A_Space%
IniRead, AddressBarHotkey, UnrapeKitConfig.ini, %Section%, AddressBarHotkey, %A_Space%
IniRead, SaveAsWindowName, UnrapeKitConfig.ini, %Section%, SaveAsWindowName, %A_Space%
IniRead, ConfirmSaveAsWindowName, UnrapeKitConfig.ini, %Section%, ConfirmSaveAsWindowName, %A_Space%
IniRead, SnippingToolWindowName, UnrapeKitConfig.ini, %Section%, SnippingToolWindowName, %A_Space%
IniRead, SnippingToolPath, UnrapeKitConfig.ini, %Section%, SnippingToolPath, %A_Space%
return
;======================================================
ScanReadLoad:
Loop, %ScanCount% {
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%, %A_Space%
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%, %A_Space%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%, %A_Space%
NameN:= % Name%A_Index%
IconToggleN:= % IconToggle%A_Index%
LineN:= % Line%A_Index%
CaptureName%A_Index%:= % Name%A_Index% "" Line%A_Index%
IniRead, %NameN%X, UnrapeKitConfig.ini, %Section%, %NameN%X, %A_Space%
IniRead, %NameN%Y, UnrapeKitConfig.ini, %Section%, %NameN%Y, %A_Space%
}
return
;======================================================
WriteScanSettings:
IniWrite, %SaveAsHotkey%, UnrapeKitConfig.ini, %Section%, SaveAsHotkey
IniWrite, %CloseHotkey%, UnrapeKitConfig.ini, %Section%, CloseHotkey
IniWrite, %YesHotkey%, UnrapeKitConfig.ini, %Section%, YesHotkey
IniWrite, %AddressBarHotkey%, UnrapeKitConfig.ini, %Section%, AddressBarHotkey
IniWrite, %SaveAsWindowName%, UnrapeKitConfig.ini, %Section%, SaveAsWindowName
IniWrite, %ConfirmSaveAsWindowName%, UnrapeKitConfig.ini, %Section%, ConfirmSaveAsWindowName
IniWrite, %SnippingToolWindowName%, UnrapeKitConfig.ini, %Section%, SnippingToolWindowName
IniWrite, %SnippingToolPath%, UnrapeKitConfig.ini, %Section%, SnippingToolPath
return
;======================================================
DelayRead:
IniRead, Delay, UnrapeKitConfig.ini, Delay%LineSpacing2%, Delay, %A_Space%
IniRead, FrameTime, UnrapeKitConfig.ini, Delay%LineSpacing2%, FrameTime, %A_Space%
IniRead, KeyDelay1, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelay1, %A_Space%
IniRead, KeyDelayPress, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelayPress, %A_Space%
IniRead, MouseDelay, UnrapeKitConfig.ini, Delay%LineSpacing2%, MouseDelay, %A_Space%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
SetMouseDelay, %MouseDelay%
return
;======================================================
Type1Load:
Section = Type1Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V, %A_Space%
If (Hkey%Hk%T1V = 1) {
IniRead, Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount, %A_Space%
IniRead, Hkey%Hk%ScanDelay, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanDelay
Loop {
IniRead, Hkey%Hk%Spell%A_Index%, UnrapeKitConfig.ini, % Section, Hkey%Hk%Spell%A_Index%, %A_Space%
Spell:= Hkey%Hk%Spell%A_Index%
IniRead, %Spell%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell%X, %A_Space%
IniRead, %Spell%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell%Y, %A_Space%
IniRead, Hkey%Hk%TriggerToggle%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggerToggle%A_Index%, %A_Space%
Iniread, Hkey%Hk%Key%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%, %A_Space%
IniRead, Hkey%Hk%Key%A_Index%X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%X, %A_Space%
IniRead, Hkey%Hk%Key%A_Index%Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%Y, %A_Space%
IniRead, Hkey%Hk%Cooldown%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%A_Index%, %A_Space%
If (A_Index > Hkey%Hk%TriggeredCount)
Break
}
}
If (Hkey%Hk%T1V = 2) {
TrigN:= 1
Iniread, T1%Hk%, UnrapeKitConfig.ini, %Section%, T1%Hk%, %A_Space%
Iniread, Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount, %A_Space%
IniRead, ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%, %A_Space%
Loop, % (Hkey%Hk%TriggeredCount + 1) {
Iniread, HHkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%, %A_Space%
Iniread, Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%, %A_Space%
Iniread, HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%, %A_Space%
Iniread, Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%, %A_Space%
}
TrigN:= 1
}
If (Hkey%Hk%T1V = 3) {
TrigN:= 1
Iniread, TriggeredCount%Hk%, UnrapeKitConfig.ini, %Section%, TriggeredCount%Hk%, %A_Space%
IniRead, ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%, %A_Space%
Loop, % (TriggeredCount%Hk% + 1) {
Iniread, HHkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%, %A_Space%
Iniread, Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%, %A_Space%
Iniread, HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%, %A_Space%
Iniread, Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%, %A_Space%
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
Type2Load:
Section = Type2Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1, %A_Space%
IniRead, Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2, %A_Space%
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
IniRead, Hkey%Hk%MoveToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MoveToggle, %A_Space%
IniRead, Hkey%Hk%ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShiftToggle, %A_Space%
IniRead, Hkey%Hk%AltEquiptoggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%AltEquiptoggle, %A_Space%
Spell1:= Hkey%Hk%Spell1
Spell2:= Hkey%Hk%Spell2
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type3Load:
Section = Type3Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1, %A_Space%
IniRead, Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2, %A_Space%
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
IniRead, Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time, %A_Space%
IniRead, Hkey%Hk%Cast2Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Time, %A_Space%
IniRead, Hkey%Hk%Cast1ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1ShiftToggle, %A_Space%
IniRead, Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle, %A_Space%
IniRead, Hkey%Hk%Cast2Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Toggle, %A_Space%
IniRead, Hkey%Hk%Cast2ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2ShiftToggle, %A_Space%
Spell1:= Hkey%Hk%Spell1
Spell2:= Hkey%Hk%Spell2
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type4Load:
Section = Type4Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniRead, Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniRead, Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
Spell1:= Hkey%Hk%Spell1
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type5Load:
Section = Type5Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab, %A_Space%
IniRead, Hkey%Hk%GemSwap1_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1_X, %A_Space%
IniRead, Hkey%Hk%GemSwap1_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Alt_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Alt_Y, %A_Space%
return
;======================================================
Type6Load:
Section = Type6Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab, %A_Space%
IniRead, Hkey%Hk%EquipSwap1_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap1_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Alt_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Alt_Y, %A_Space%
return
;======================================================
Type7Load:
Section = Type7Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations, %A_Space%
IniRead, Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, SwapTabs, Hkey%Hk%GemSwapTab, %A_Space%
IniRead, Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, SwapTabs, Hkey%Hk%EquipSwapTab, %A_Space%
T7:= 1
Loop, % Hkey%Hk%Iterations {
IniRead, Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%DelayIteration%T7%, %A_Space%
IniRead, Hkey%Hk%Iteration%T7%Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%Toggle, %A_Space%
IniRead, Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%, %A_Space%
IniRead, Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SpellIteration%T7%, %A_Space%
IniRead, Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyIteration%T7%, %A_Space%
IniRead, Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SendIteration%T7%, %A_Space%
IniRead, Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseXPosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseYPosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GoMousePosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GetMousePosToggleIteration%T7%, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_L, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_L, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_T, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_T, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_R, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_R, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_B, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_B, %A_Space%
IniRead, Hkey%Hk%ImageNameIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ImageNameIteration%T7%, %A_Space%
IniRead, Hkey%Hk%ShadeVariationIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShadeVariationIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GemSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%KeyX_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX_Iteration%T7%, %A_Space%
IniRead, Hkey%Hk%KeyY_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY_Iteration%T7%, %A_Space%
T7 += 1
}
T7:= 1
return
;======================================================
Type7Write:
IniWrite, % Hkey%Hk%Iterations, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iterations, %A_Space%
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab, %A_Space%
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab, %A_Space%
T7:= 1
Loop, % Hkey%Hk%Iterations {
IniWrite, % Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%DelayIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%Iteration%T7%Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%Toggle, %A_Space%
IniWrite, % Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SpellIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SendIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseXPosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseYPosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GoMousePosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GetMousePosToggleIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_L, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_L, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_T, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_T, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_R, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_R, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_B, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_B, %A_Space%
IniWrite, % Hkey%Hk%ImageNameIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ImageNameIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%ShadeVariationIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShadeVariationIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GemSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%KeyX_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX_Iteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%KeyY_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY_Iteration%T7%, %A_Space%
T7 += 1
}
T7:= 1
return
;======================================================
Type7Write2:
Loop, % Hkey%Hk%Iterations {
IniWrite, % Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%
}
return
;======================================================End of IniSettings======================================================
Code:
;======================================================HotkeyConfig======================================================
HotkeyConfig:
MouseGetPos, Xpos, Ypos
GuiWidth:= 210
GuiHeight:= 100
gosub GuiBuild
Gui, Add, Text, x10 y10, Hotkeys wanted:
Gui, Add, Text, x50 y33, 200 Hotkeys Maximum
Gui, Add, Edit, x10 y30 w30 h20 vHotkeyLimit, %HotkeyLimit%
Gui, Add, Button, x10 y70 w90 h20 gHkeyEdit Default, Hotkeys
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Hotkey Count
Return
;======================================================
HkeyEdit:
gosub GuiSD
if (HotkeyLimit < 1 or HotkeyLimit > 200) {
msgbox Invalid entry: reloading script
SetTimer, RemoveToolTip2, -1000
Reload
}
gosub GuiSD
IniWrite, %HotkeyLimit%, UnrapeKitConfig.ini, Configuration, HotkeyLimit
H:= 1
W:= 1
HMax:= 1
Hk:= 1
MouseGetPos, Xpos, Ypos
SysGet, SGW, 71
Gui, -0x80000 AlwaysOnTop
Loop, %HotkeyLimit% {
GuiY:= 120 + 30 * H
ScreenHeight:= A_ScreenHeight - 45
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y0:= 14 + 30 * H
Y1:= 13 + 30 * H
Y2:= 10 + 30 * H
GuiWidth:= 610 * W
If (W = 1) {
GuiHeight:= 80 + 30 * H
ButtonHeight:= 50 + 30 * H
ButtonTxtHeight:= 53 + 30 * H
}
If (W > 1) {
GuiHeight:= 80 + 30 * HMax
ButtonHeight:= 50 + 30 * HMax
ButtonTxtHeight:= 53 + 30 * HMax
}
Button1X:= GuiWidth - 300
Button2X:= GuiWidth - 200
Button3X:= GuiWidth - 100
Text1X:= GuiWidth - 550
Radio0X:= GuiWidth - 590
loop, 7 {
Radio%A_Index%X:= GuiWidth - (560 - (40 * A_Index))
}
EditX:= GuiWidth - 240
EditButtonX:= GuiWidth -100
Radio0Txt:= GuiWidth - 600
loop, 7 {
Radio%A_Index%Txt:= GuiWidth - (570 - (40 * A_Index))
}
EditTxt:= GuiWidth - 220
EditButtonTxt:= GuiWidth -85
Gui, Add, Text, x%Radio0Txt% y20,Disable Index
loop, 7 {
RadioTxt:= Radio%A_Index%Txt
Gui, Add, Text, x%RadioTxt% y20,Type %A_Index%
}
Gui, Add, Text, x%EditTxt% y20, Hotkey Shortcut
Gui, Add, Text, x%EditButtonTxt% y20, Hotkey Edit
Gui, Add, Text, x%Text1X% y%Y1%, %Hk%
Gui, Add, checkbox, % "X" Radio0x " Y" Y0 " h13 w13 vHkey" Hk "Toggle Checked" Hkey%Hk%Toggle
loop, 7 {
RadioX := Radio%A_Index%X
if (Hkey%Hk%Type = A_Index) {
HkeyType := 1
} else {
HkeyType := 0
}
Gui, Add, Radio, % "x" RadioX " y" Y1 " h13 w13 vHkey" Hk "Type" A_Index " Checked" HkeyType, A_Index
}
Gui, Add, Edit, x%EditX% y%Y2% w120 h20 vHkey%Hk%Shortcut, % Hkey%Hk%Shortcut
Gui, Add, Button, x%EditButtonX% y%Y2% w90 h20 gEditHk, %Hk%
If (Hk = HotkeyLimit) {
gosub GuiBuild
Gui, Add, Button, x10 y%ButtonHeight% w90 H20 gHkAdd, Add
Gui, Add, Text, x110 y%ButtonTxtHeight%,Add
Gui, Add, Edit, x140 y%ButtonHeight% w20 h20 vHotkeyAdd
Gui, Add, Text, x170 y%ButtonTxtHeight%,Hotkey(s)
Gui, Add, Button, x%Button1X% y%ButtonHeight% w90 h20 gRecordHk Default, Record
Gui, Add, Button, x%Button2X% y%ButtonHeight% w90 h20 gSetHk, Configure
Gui, Add, Button, x%Button3X% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Hotkey Configuration
Break
}
H+= 1
Hk+= 1
}
Hk := 0
Return
;======================================================
RecordWriteHk:
loop, 7 {
if (Hkey%Hk%Type%A_Index% = 1) {
Hkey%Hk%Type := A_Index
IniWrite, % Hkey%Hk%Toggle, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Toggle
IniWrite, % Hkey%Hk%Type, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Type
IniWrite, % Hkey%Hk%Shortcut, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Shortcut
if (Hkey%Hk%Shortcut != "" AND Hkey%Hk%Toggle = 1) {
Hotkey, % Hkey%Hk%Shortcut, Hotkey%Hk%
}
}
}
return
;======================================================
RecordHk:
gosub GuiSD
Hk:= 1
RecordToggle:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
Hk:= 1
gosub HkeyEdit
Return
;======================================================
HkAdd:
gosub GuiSD
HotkeyLimit+= %HotkeyAdd%
Hk:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
gosub HkeyEdit
Return
SetHk:
gosub GuiSD
Hk:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
Hk:= 1
gosub HkTypeConfigLoop
Return
;======================================================
EditHk:
A_GuiControlHk:= A_GuiControl
Hk:= A_GuiControl
If (Hkey%Hk%Toggle = 0)
Hkey%Hk%Toggle = 1
gosub GuiSD
gosub HkTypeConfigRouting
gosub RecordWriteHk
Return
;======================================================
HkTypeConfigLoop:
Loop, HotkeyLimit {
If (Hkey%Hk%Toggle = 0) {
gosub HkTypeConfigRouting
break
}
}
Reload
Return
;======================================================
HkTypeConfigRouting:
loop, 7 {
If (Hkey%Hk%Type = A_Index) {
Gosub ConfigType%A_Index%
Break
}
}
Return
;======================================================End of HotkeyConfig======================================================
Code:
;======================================================HotkeyRouting======================================================
Hotkey1:
Hk:= 1
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey2:
Hk:= 2
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey3:
Hk:= 3
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey4:
Hk:= 4
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey5:
Hk:= 5
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey6:
Hk:= 6
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey7:
Hk:= 7
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey8:
Hk:= 8
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey9:
Hk:= 9
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey10:
Hk:= 10
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey11:
Hk:= 11
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey12:
Hk:= 12
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey13:
Hk:= 13
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey14:
Hk:= 14
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey15:
Hk:= 15
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey16:
Hk:= 16
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey17:
Hk:= 17
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey18:
Hk:= 18
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey19:
Hk:= 19
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey20:
Hk:= 20
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey21:
Hk:= 21
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey22:
Hk:= 22
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey23:
Hk:= 23
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey24:
Hk:= 24
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey25:
Hk:= 25
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey26:
Hk:= 26
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey27:
Hk:= 27
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey28:
Hk:= 28
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey29:
Hk:= 29
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey30:
Hk:= 30
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey31:
Hk:= 31
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey32:
Hk:= 32
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey33:
Hk:= 33
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey34:
Hk:= 34
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey35:
Hk:= 35
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey36:
Hk:= 36
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey37:
Hk:= 37
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey38:
Hk:= 38
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey39:
Hk:= 39
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey40:
Hk:= 40
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey41:
Hk:= 41
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey42:
Hk:= 42
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey43:
Hk:= 43
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey44:
Hk:= 44
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey45:
Hk:= 45
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey46:
Hk:= 46
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey47:
Hk:= 47
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey48:
Hk:= 48
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey49:
Hk:= 49
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey50:
Hk:= 50
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey51:
Hk:= 51
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey52:
Hk:= 52
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey53:
Hk:= 53
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey54:
Hk:= 54
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey55:
Hk:= 55
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey56:
Hk:= 56
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey57:
Hk:= 57
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey58:
Hk:= 58
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey59:
Hk:= 59
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey60:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey61:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey62:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey63:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey64:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey65:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey66:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey67:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey68:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey69:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey70:
Hk:= 70
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey71:
Hk:= 71
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey72:
Hk:= 72
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey73:
Hk:= 73
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey74:
Hk:= 74
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey75:
Hk:= 75
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey76:
Hk:= 76
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey77:
Hk:= 77
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey78:
Hk:= 78
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey79:
Hk:= 79
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey80:
Hk:= 80
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey81:
Hk:= 81
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey82:
Hk:= 82
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey83:
Hk:= 83
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey84:
Hk:= 84
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey85:
Hk:= 85
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey86:
Hk:= 86
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey87:
Hk:= 87
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey88:
Hk:= 88
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey89:
Hk:= 89
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey90:
Hk:= 90
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey91:
Hk:= 91
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey92:
Hk:= 92
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey93:
Hk:= 93
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey94:
Hk:= 94
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey95:
Hk:= 95
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey96:
Hk:= 96
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey97:
Hk:= 97
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey98:
Hk:= 98
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey99:
Hk:= 99
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey100:
Hk:= 100
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey101:
Hk:= 101
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey102:
Hk:= 102
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey103:
Hk:= 103
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey104:
Hk:= 104
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey105:
Hk:= 105
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey106:
Hk:= 106
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey107:
Hk:= 107
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey108:
Hk:= 108
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey109:
Hk:= 109
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey110:
Hk:= 110
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey111:
Hk:= 111
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey112:
Hk:= 112
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey113:
Hk:= 113
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey114:
Hk:= 114
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey115:
Hk:= 115
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey116:
Hk:= 116
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey117:
Hk:= 117
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey118:
Hk:= 118
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey119:
Hk:= 119
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey120:
Hk:= 120
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey121:
Hk:= 121
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey122:
Hk:= 122
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey123:
Hk:= 123
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey124:
Hk:= 124
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey125:
Hk:= 125
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey126:
Hk:= 126
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey127:
Hk:= 127
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey128:
Hk:= 128
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey129:
Hk:= 129
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey130:
Hk:= 130
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey131:
Hk:= 131
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey132:
Hk:= 132
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey133:
Hk:= 133
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey134:
Hk:= 134
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey135:
Hk:= 135
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey136:
Hk:= 136
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey137:
Hk:= 137
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey138:
Hk:= 138
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey139:
Hk:= 139
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey140:
Hk:= 140
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey141:
Hk:= 141
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey142:
Hk:= 142
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey143:
Hk:= 143
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey144:
Hk:= 144
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey145:
Hk:= 145
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey146:
Hk:= 146
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey147:
Hk:= 147
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey148:
Hk:= 148
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey149:
Hk:= 149
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey150:
Hk:= 150
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey151:
Hk:= 151
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey152:
Hk:= 152
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey153:
Hk:= 153
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey154:
Hk:= 154
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey155:
Hk:= 155
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey156:
Hk:= 156
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey157:
Hk:= 157
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey158:
Hk:= 158
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey159:
Hk:= 159
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey160:
Hk:= 160
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey170:
Hk:= 170
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey171:
Hk:= 171
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey172:
Hk:= 172
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey173:
Hk:= 173
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey174:
Hk:= 174
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey175:
Hk:= 175
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey176:
Hk:= 176
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey177:
Hk:= 177
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey178:
Hk:= 178
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey179:
Hk:= 179
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey180:
Hk:= 180
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey181:
Hk:= 181
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey182:
Hk:= 182
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey183:
Hk:= 183
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey184:
Hk:= 184
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey185:
Hk:= 185
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey186:
Hk:= 186
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey187:
Hk:= 187
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey188:
Hk:= 188
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey189:
Hk:= 189
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey190:
Hk:= 190
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey191:
Hk:= 191
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey192:
Hk:= 192
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey193:
Hk:= 193
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey194:
Hk:= 194
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey195:
Hk:= 195
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey196:
Hk:= 196
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey197:
Hk:= 197
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey198:
Hk:= 198
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey199:
Hk:= 199
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey200:
Hk:= 200
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
;======================================================End of HotkeyRouting======================================================
Code:
;======================================================DelayConfig======================================================
DelayConfig:
MouseGetPos, Xpos, Ypos
GuiWidth:= 220
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y13, Server Latency (ms)
Gui, Add, Edit, x140 y10 w30 h20 vDelay, %Delay%
Gui, Add, Text, x10 y43, Maximum Frame Time (Ms)
Gui, Add, Edit, x140 y40 w30 h20 vFrameTime, %FrameTime%
Gui, Add, Text, x10 y73, Keyboard Delays (Ms)
Gui, Add, Edit, x140 y70 w30 h20 vKeyDelay1, %KeyDelay1%
Gui, Add, Edit, x180 y70 w30 h20 vKeyDelayPress, %KeyDelayPress%
Gui, Add, Text, x10 y103, Mouse Delay (Ms)
Gui, Add, Edit, x140 y100 w30 h20 vMouseDelay, %MouseDelay%
Gui, Add, Button, x20 y130 w90 h20 gDelayConfigRecord Default, Record
Gui, Add, Button, x120 y130 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Delay configuration
Return
;======================================================
DelayWrite:
gosub GuiSD
IniWrite, %Delay%, UnrapeKitConfig.ini, Delay%LineSpacing2%, Delay
IniWrite, %FrameTime%, UnrapeKitConfig.ini, Delay%LineSpacing2%, FrameTime
IniWrite, %KeyDelay1%, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelay1
IniWrite, %KeyDelayPress%, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelayPress
IniWrite, %MouseDelay%, UnrapeKitConfig.ini, Delay%LineSpacing2%, MouseDelay
return
;======================================================
DelayConfigRecord:
gosub DelayWrite
Reload
Return
;======================================================
Delay:
MouseGetPos, Xpos, Ypos
GuiWidth:= 220
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y13, Server Latency (ms)
Gui, Add, Edit, x140 y10 w30 h20 vDelay, %Delay%
Gui, Add, Text, x10 y43, Maximum Frame Time (Ms)
Gui, Add, Edit, x140 y40 w30 h20 vFrameTime, %FrameTime%
Gui, Add, Text, x10 y73, Keyboard Delays (Ms)
Gui, Add, Edit, x140 y70 w30 h20 vKeyDelay1, %KeyDelay1%
Gui, Add, Edit, x180 y70 w30 h20 vKeyDelayPress, %KeyDelayPress%
Gui, Add, Text, x10 y103, Mouse Delay (Ms)
Gui, Add, Edit, x140 y100 w30 h20 vMouseDelay, %MouseDelay%
Gui, Add, Button, x20 y130 w90 h20 gDelayRecord Default, Record
Gui, Add, Button, x120 y130 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Server Latency
Return
;======================================================
DelayRecord:
gosub DelayWrite
Return
;======================================================End of DelayConfig======================================================
Code:
;======================================================ScreenCapture======================================================
ScreenCapture:
C1_X:= 1443
C2_X:= 1508
C3_X:= 1573
L1_Y:= 900
L2_Y:= 835
L3_Y:= 770
L4_Y:= 705
L5_Y:= 640
L6_Y:= 575
L7_Y:= 510
Section = ScreenCapture--------------------------------------------------------------------------------------------------
GuiWidth:= 310
GuiHeight:= 150
gosub LoadScanSettings
MouseGetPos, Xpos, Ypos
gosub GuiBuild
Gui, Add, Text, x10 y10, Controls for capture and UI coordinates.
Gui, Add, Text, x10 y30, Spell menu suffix: line number bottom to top.
Gui, Add, Text, x10 y50, keyboard shortcut suffix: "_MButton"', "_R"', etc
Gui, Add, Text, x10 y70, Buff icons: manual Printscreen with suffix "Timer1" to "Timer8"
Gui, Add, Checkbox, x10 y90 VScreenCapturePos Checked%ScreenCapturePos%, Checked: spell menu, unchecked: keyboard shortcuts.
Gui, Add, Button, x10 y120 w90 gCaptureControls, PrtSc controls
Gui, Add, Button, x110 y120 w90 gCancel, Cancel
Gui, Add, Button, x210 y120 w90 gScreenCapture1 Default, Continue
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, Capture Gui positioning
Return
;======================================================
CaptureControls:
gosub GuiSD
IniWrite, %ScreenCapturePos%, UnrapeKitConfig.ini, %Section%, ScreenCapturePos
GuiWidth:= 300
GuiHeight:= 380
gosub GuiBuild
Gui, Add, Text, x10 y10 w280, Enter the Windows hotkeys for your specific language here
Gui, Add, Text, x10 y25 w280, Hotkey syntax: ^ (Ctrl), ! (Alt), + (Shift), # (Win).
Gui, Add, Text, x10 y40 w280, Examples: ^!c for Ctrl+Alt+C
Gui, Add, Edit, x10 y70 w100 h20 vSaveHotkey, % SaveHotkey
Gui, Add, Text, % "x" 120 " y" 73, SaveHotkey
Gui, Add, Edit, x10 y100 w100 h20 vSaveAsHotkey, % SaveAsHotkey
Gui, Add, Text, % "x" 120 " y" 103, SaveAsHotkey
Gui, Add, Edit, x10 y130 w100 h20 vCloseHotkey, % CloseHotkey
Gui, Add, Text, % "x" 120 " y" 133, CloseHotkey
Gui, Add, Edit, x10 y160 w100 h20 vYesHotkey, % YesHotkey
Gui, Add, Text, % "x" 120 " y" 163, YesHotkey
Gui, Add, Edit, x10 y190 w100 h20 vAddressBarHotkey, % AddressBarHotkey
Gui, Add, Text, % "x" 120 " y" 193, AddressBarHotkey
Gui, Add, Edit, x10 y220 w100 h20 vSaveAsWindowName, % SaveAsWindowName
Gui, Add, Text, % "x" 120 " y" 223, SaveAsWindowName
Gui, Add, Edit, x10 y250 w100 h20 vConfirmSaveAsWindowName, % ConfirmSaveAsWindowName
Gui, Add, Text, % "x" 120 " y" 253, ConfirmSaveAsWindowName
Gui, Add, Edit, x10 y280 w100 h20 vSnippingToolWindowName, % SnippingToolWindowName
Gui, Add, Text, % "x" 120 " y" 283, SnippingToolWindowName
Gui, Add, Edit, x10 y310 w100 h20 vSnippingToolPath, % SnippingToolPath
Gui, Add, Text, % "x" 120 " y" 313, SnippingToolPath
; Run on PowerShell as admin: "Get-AppXPackage *Microsoft.ScreenSketch* -AllUsers" , then paste the directory on a browser to navigate to the correct directory (these might not work well though).
Gui, Add, Button, x10 y350 w135 gCaptureSave Default, Save and Continue
Gui, Add, Button, x155 y350 w135 gCancel, Cancel
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, Language Settings and top-left snip coordinates
Return
;======================================================
CaptureSave:
gosub GuiSD
gosub WriteScanSettings
gosub ScreenCapture
Return
;======================================================
ScreenCapture1:
if (ScreenCapturePos = 1) {
IniRead, TempName, UnrapeKitConfig.ini, %Section%, TempName
IniRead, TempLine, UnrapeKitConfig.ini, %Section%, TempLine
IniRead, TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
N := ScanCount + 1
GuiWidth:= 210
GuiHeight:= 130
gosub GuiBuild
Gui, Add, Text, x10 y10 w190, lines: 1 to 7`, columns: 1 to 3
Gui, Add, Text, x10 y40, name line Column
Gui, Add, Edit, x10 y60 w120 h20 vTempName, %TempName%
Gui, Add, Edit, x+10 w20 h20 vTempLine, %TempLine%
Gui, Add, Edit, x+10 w20 h20 vTempColumn, %TempColumn%
Gui, Add, Button, x10 y100 w90 h20 gCaptureSave1 Default, Ok
Gui, Add, Button, x110 y100 w90 h20 gCancel, Reload
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, name`, menu line and column coordinates
}
if (ScreenCapturePos = 0) {
IniRead, TempName, UnrapeKitConfig.ini, %Section%, TempName
IniRead, TempLine, UnrapeKitConfig.ini, %Section%, TempLine
IniRead, TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
N := ScanCount + 1
GuiWidth:= 210
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y10 w190, column is the shortcut: : "_LButton"'
Gui, Add, Text, x10 y50, name Keyboard shortcut
Gui, Add, Edit, x10 y7 w120 h20 vTempName, %TempName%
Gui, Add, Edit, x+10 w70 h20 vTempLine, %TempLine%
Gui, Add, Button, x10 y100 w90 h20 gCaptureSave1 Default, Ok
Gui, Add, Button, x110 y100 w90 h20 gCancel, Reload
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, name', keyboard shortcut
}
return
;======================================================
CaptureSave1:
gosub GuiSD
IniWrite, % TempName, UnrapeKitConfig.ini, %Section%, TempName
IniWrite, % TempLine, UnrapeKitConfig.ini, %Section%, TempLine
CaptureName := TempName TempLine
if (ScreenCapturePos = 1) {
IniWrite, % TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
gosub SpellMenuUp
} else {
Gosub SnippingTool
}
return
;======================================================
SpellMenuUp:
loop {
sleep, 50
ImageSearch,,, C1_X - 10, L1_Y - 10, C3_X + 10, L1_Y + 10, *10 CloseMenu1.png
; pixelsearch,,, 1439, 495, 1439, 495, 0x6490AB, 0, fast
if (ErrorLevel = 0) {
break
} else {
click,, 1440, 1037
sleep, 300
}
}
Gosub SnippingTool
return
;======================================================
SnippingTool:
if (ScreenCapturePos = 1) {
loop, 3 {
if (TempColumn = A_Index) {
CaptureX:= % C%A_Index%_X
break
}
}
loop, 7 {
if (TempLine = A_Index) {
CaptureY:= % L%A_Index%_Y
break
}
}
} else {
if (TempColumn = "Q") {
CaptureX:= 1438
CaptureY:= 1047
}
if (TempColumn = "W") {
CaptureX:= 1494
CaptureY:= 1047
}
if (TempColumn = "E") {
CaptureX:= 1550
CaptureY:= 1047
}
if (TempColumn = "R") {
CaptureX:= 1606
CaptureY:= 1047
}
if (TempColumn = "T") {
CaptureX:= 1662
CaptureY:= 1047
}
if (TempColumn = "LButton") {
CaptureX:= 1549
CaptureY:= 978
}
if (TempColumn = "MButton") {
CaptureX:= 1605
CaptureY:= 978
}
if (TempColumn = "RButton") {
CaptureX:= 1660
CaptureY:= 978
}
}
CenterDistance:= 13
CaptureX1:= CaptureX - CenterDistance
CaptureX2:= CaptureX + CenterDistance
CaptureY1:= CaptureY - CenterDistance
CaptureY2:= CaptureY + CenterDistance
SendInput {PrintScreen}
sleep, 500
Send, #+s
sleep, 400
BlockInput, MouseMove
MouseClickDrag, L, CaptureX1, CaptureY1, CaptureX2, CaptureY2, 2
sleep, 100
BlockInput, MouseMoveOff
sleep, 100
; run C:\Program Files\WindowsApps\Microsoft.ScreenSketch_11.2407.3.0_x64__8wekyb3d8bbwe\SnippingTool\SnippingTool.exe
sleep, 100
Mousemove, 1750, 800, 2
sleep, 500
MouseClick, L
sleep, 1000
WinActivate, %SnippingToolWindowName%
WinMaximize, %SnippingToolWindowName%
; WinActivate, Snipping Tool
; WinMaximize, Snipping Tool
sleep, 300
MouseClick, L, 150, 20
sleep, 300
tooltip, Send, %SaveAsHotkey%
Send, %SaveAsHotkey%
sleep, 300
tooltip, WinWait, %SaveAsWindowName%
WinWait, %SaveAsWindowName%
sleep, 300
tooltip, SendInput %CaptureName%.png
SendInput %CaptureName%.png
sleep, 300
tooltip, Send, %AddressBarHotkey%
Send, %AddressBarHotkey%
sleep, 300
tooltip, SendInput %A_ScriptDir%
SendInput %A_ScriptDir%
sleep, 300
tooltip, SendInput {Enter}
SendInput {Enter}
sleep, 300
Send, %SaveHotkey%
; Send, !s
sleep, 300
IfWinExist, %ConfirmSaveAsWindowName%
{
Send, %YesHotkey%
ImageRepeat := 1
} else {
ImageRepeat := 0
}
sleep, 300
; Send, !F4
; MouseClick, L, 1910, 10
; WinClose, Snipping Tool
WinClose, %SnippingToolWindowName%
if (ScreenCapturePos = 1) {
gosub Cooldown1
} else {
gosub Icon1
}
return
;======================================================
Icon1:
CaptureX1 -= 5
CaptureY1 -= 5
CaptureX2 += 5
CaptureY2 += 5
SetMouseDelay, %MouseDelay%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
tooltip, gosub Icon2
SetTimer, RemoveToolTip, -500
gosub Icon2
return
;======================================================
Icon2:
ImageSearch, %CaptureName%X, %CaptureName%Y, %CaptureX1%, %CaptureY1%, %CaptureX2%, %CaptureY2%, *10 %CaptureName%.png
if (ErrorLevel = 2) {
ToolTip, Could Not perform scan
}
else if (ErrorLevel = 1) {
ToolTip, Could Not Find Scan %CaptureName%.png
} else {
ToolTip, %CaptureName%.png found
}
SetTimer, RemoveToolTip, -1000
Section = BuffIconCoordinates--------------------------------------------------------------------------------------------------
IniWrite, % CaptureX1, UnrapeKitConfig.ini, %Section%, %CaptureName%X
IniWrite, % CaptureY1, UnrapeKitConfig.ini, %Section%, %CaptureName%Y
return
;======================================================
Cooldown1:
if (CaptureX1 >= 1410 and CaptureX2 <= 1605 and CaptureY1 >= 410 and CaptureY2 <= 925) {
CaptureX1 -= 5
CaptureY1 -= 5
CaptureX2 += 5
CaptureY2 += 5
SetMouseDelay, %MouseDelay%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
tooltip, gosub Cooldown2
SetTimer, RemoveToolTip, -500
gosub Cooldown2
} Else {
tooltip, Capture coordinates out of bounds
SetTimer, RemoveToolTip, -1000
reload
}
return
;======================================================
Cooldown2:
if (ImageRepeat = 1) {
Loop, 8 { ; replaces a hotkey capture
if (CaptureName = TempName%A_Index%) {
N := A_Index
break
}
}
} else {
ScanCount += 1
N := ScanCount
}
Name%N%:= TempName
Line%N%:= TempLine
IconToggle%N%:= 1
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
gosub Cooldown3
return
;======================================================
Cooldown3:
Mousemove, 1600, 1000, 2
Sleep, 100
MouseClick
Sleep, 1000
ImageSearch, %TempName%X, %TempName%Y, %CaptureX1%, %CaptureY1%, %CaptureX2%, %CaptureY2%, *10 %CaptureName%.png
if (ErrorLevel = 2) {
ToolTip, Could Not perform scan
}
else if (ErrorLevel = 1) {
ToolTip, Could Not Find Scan %CaptureName%.png
} else {
ToolTip, %CaptureName%.png found
}
SetTimer, RemoveToolTip, -1000
Section = ScanCoordinates--------------------------------------------------------------------------------------------------
IniWrite, % CaptureX1, UnrapeKitConfig.ini, %Section%, %TempName%X
IniWrite, % CaptureY1, UnrapeKitConfig.ini, %Section%, %TempName%Y
IniWrite, % Name%N%, UnrapeKitConfig.ini, %Section%, Name%N%
IniWrite, % Line%N%, UnrapeKitConfig.ini, %Section%, Line%N%
IniWrite, % IconToggle%N%, UnrapeKitConfig.ini, %Section%, IconToggle%N%
return
;======================================================End of ScreenCapture======================================================
Code:
;======================================================ScanConfig======================================================
ScanConfig:
Section = ScanCoordinates%LineSpacing2%
IniRead, ScanCount, UnrapeKitConfig.ini, Configuration, ScanCount
MouseGetPos, Xpos, Ypos
GuiWidth:= 210
GuiHeight:= 100
gosub GuiBuild
Gui, Add, Text, x10 y5 w200 h26, Icons Count:
Gui, Add, Text, x10 y33 w120 h26, Scans:
Gui, Add, Edit, x145 y30 w30 h21 vScanCount, %ScanCount%
Gui, Add, Button, x10 y70 w90 h20 gScanDefinitions Default, Definitions
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Scan Count
Return
;======================================================
ScanDefinitions:
gosub GuiSD
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
Loop, %ScanCount% {
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
NameN:= % Name%A_Index%
LineN:= % Line%A_Index%
}
H:= 1
W:= 1
HMax:= 1
SysGet, SGW, 71
MouseGetPos, Xpos, Ypos
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, X5 Y10, Toggle SpellName Line# (Bottom to Top)
Loop, %ScanCount% {
GuiY:= 50 + 30 * H
ScreenHeight:= A_ScreenHeight - 95
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y1:= 18 + 30 * H
Y2:= 15 + 30 * H
GuiWidth:= 240 * W
If (W = 1) {
GuiHeight:= 105 + 30 * H
AddHeight:= 48 + 30 * H
AddButtonHeight:= 45 + 30 * H
ButtonHeight:= 75 + 30 * H
}
If (W > 1) {
GuiHeight:= 105 + 30 * HMax
AddHeight:= 48 + 30 * HMax
AddButtonHeight:= 45 + 30 * HMax
ButtonHeight:= 75 + 30 * HMax
}
Button1Width:= GuiWidth - 200
Button2Width:= GuiWidth - 100
TextWidth:= GuiWidth - 215
CheckboxWidth:= GuiWidth - 230
NameWidth:= GuiWidth - 200
LineWidth:= GuiWidth - 60
Gui, Add, Text, x%TextWidth% Y%Y1%, %A_Index%
Gui, Add, Checkbox, % " x" CheckboxWidth " y" Y1 " h13 w13 vIconToggle" A_Index " Checked" IconToggle%A_Index%
Gui, Add, Edit, x%NameWidth% y%Y2% w130 h20 vName%A_Index%, % Name%A_Index%
Gui, Add, Edit, x%LineWidth% y%Y2% w50 h20 vLine%A_Index%, % Line%A_Index%
If (A_Index = ScanCount) {
X_Offset:= GuiWidth/2
Y_Offset:= GuiHeight/2
X_Limit:= A_ScreenWidth - X_Offset
Y_Limit:= A_ScreenHeight - Y_Offset
Mouse_X:= Xpos - X_Offset
Mouse_Y:= Ypos - Y_Offset
If Xpos between 0 and %X_Offset%
Move_X:= 0
If Xpos between %X_Offset% and %X_Limit%
Move_X:= Mouse_X
If Xpos between %X_Limit% and %A_ScreenWidth%
Move_X:= A_ScreenWidth - GuiWidth
If Ypos between 0 and %Y_Offset%
Move_Y:= 0
If Ypos between %Y_Offset% and %Y_Limit%
Move_Y:= Mouse_Y
If Ypos between %Y_Limit% and %A_ScreenHeight%
Move_Y:= A_ScreenHeight - GuiHeight - 30
Gui, Add, Button, x10 y%AddButtonHeight% w90 h20 gAddScan, Add
Gui, Add, Text, x110 y%AddHeight%, Add
Gui, Add, Edit, x140 y%AddButtonHeight% w30 h20 vXDefinitions
Gui, Add, Text, x180 y%AddHeight%, Definition(s)
Gui, Add, Button, x%Button1Width% y%ButtonHeight% w90 h20 gScanWrite Default, Record
Gui, Add, Button, x%Button2Width% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Scan Configuration
Break
}
H+= 1
}
Return
;======================================================
AddScan:
gosub, GuiSD
N:= 1
Loop, %ScanCount% {
IniWrite, % IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniWrite, % Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniWrite, % Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
N+=1
}
ScanCount+= %XDefinitions%
Gosub ScanDefinitions
Return
;======================================================
ScanWrite:
gosub, GuiSD
Loop, %ScanCount% {
IniWrite, % IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniWrite, % Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniWrite, % Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
}
Gosub SpellScan
Return
;======================================================End of ScanConfig======================================================
Code:
;======================================================SpellScan======================================================
SpellScan:
Section = ScanCoordinates--------------------------------------------------------------------------------------------------
ScanToolTip:= ""
ScanMessage:= ""
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton
If LButtonState = D
MouseClick, , , , , , U
MouseMove, 1660, 1025 ; t
MouseClick, , 1660, 1025 ; t
ToolTipIndex:= 1
Loop, %ScanCount% {
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
If (IconToggle%A_Index% = 1) {
ToolTipIndex += 1
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
NameN:= % Name%A_Index%
LineN:= % Line%A_Index%
CaptureName%A_Index%:= % Name%A_Index% "" Line%A_Index%
sleep, %Delay%
;sleep, 50
ImageSearch, %NameN%X, %NameN%Y, 1410, 410, 1605, 925, *10 %NameN%%LineN%.png
If(ErrorLevel = 0) {
ScanMessage:= % CaptureName%A_Index% ":= " %NameN%X "x, " %NameN%Y "y `n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -9500
IniWrite, % %NameN%X, UnrapeKitConfig.ini, %Section%, %NameN%X
IniWrite, % %NameN%Y, UnrapeKitConfig.ini, %Section%, %NameN%Y
}
If(ErrorLevel = 1) {
ScanMessage:= % "----------------------`n" CaptureName%A_Index% " not found `n----------------------`n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -5000
}
If(ErrorLevel = 2) {
ScanMessage:= % CaptureName%A_Index% ": Error `n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -5000
}
}
}
Send, {Esc}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
MouseMove, Xpos, Ypos
SetTimer, RemoveTooltip, -1000
BlockInput, MouseMoveOff
Return
;======================================================End of SpellScan======================================================
Code:
;======================================================Type1======================================================
Type1:
If (Hkey%Hk%T1V = 1) {
Gosub V1Loop
return
}
If (Hkey%Hk%T1V = 2) or (Hkey%Hk%T1V = 3){
Loop {
If (HKey%Hk%Key%A_Index% = "LButton") {
HKey%Hk%Tx%A_Index%:= 1549
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "MButton") {
HKey%Hk%Tx%A_Index%:= 1604
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "RButton") {
HKey%Hk%Tx%A_Index%:= 1660
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "Q") {
HKey%Hk%Tx%A_Index%:= 1438
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "W") {
HKey%Hk%Tx%A_Index%:= 1493
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "E") {
HKey%Hk%Tx%A_Index%:= 1549
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "R") {
HKey%Hk%Tx%A_Index%:= 1605
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "T") {
HKey%Hk%Tx%A_Index%:= 1661
HKey%Hk%Ty%A_Index%:= 1021
}
PixelGetColor, HKey%Hk%color%A_Index%, HKey%Hk%Tx%A_Index%, HKey%Hk%Ty%A_Index%
if (A_Index = (HKey%Hk%TriggeredCount + 1))
break
}
If (Hkey%Hk%T1V = 2) {
HKey%Hk%TrigN:= 1
Gosub V2Loop
return
}
If (Hkey%Hk%T1V = 3){
HKey%Hk%TrigN:= 1
Gosub V3Loop
return
}
return
}
Return
;======================================================
V1Loop:
HkV1:= Hk
HKey%HkV1%TrigN:= 1
TrigNV1:= 1
HKey%HkV1%Trig:= 0
TrigV1:= 0
HKey%HkV1%TickToggle%TrigN%:= false
HKey%HkV1%KeyToggle:= !HKey%HkV1%KeyToggle
While (HKey%HkV1%KeyToggle) {
if (Hkey%HkV1%TriggerToggle%TrigNV1%) and (HKey%HkV1%KeyToggle) {
gosub BuffScan
if (HKey%HkV1%Cooldown%TrigNV1% < A_TickCount - HKey%HkV1%Tick%TrigNV1%) and (HKey%HkV1%KeyToggle) {
Gosub, Shortcut1
HKey%HkV1%Tick%TrigNV1% := A_TickCount
}
}
if (HKey%HkV1%TrigNV1 > HKey%HkV1%TriggeredCount) and (HKey%HkV1%KeyToggle)
HKey%HkV1%TrigNV1:= 0
HKey%HkV1%TrigNV1+= 1
Sleep, % HKey%HkV1%ScanDelay
}
if !(HKey%HkV1%KeyToggle) {
ToolTip, Toggled off, HKey%HkV1%Timerx - 20, HKey%HkV1%TimerY + 40, 2
SetTimer, RemoveTooltip2, -3000
}
HKey%HkV1%TrigNV1:= 1
Return
;======================================================
BuffScan:
loop, 8 {
ImageSearch, HKey%HkV1%TimerX, HKey%HkV1%TimerY, 0, 0, 1000, 90, % "*10 " HKey%HkV1%Spell%TrigNV1% "Timer" A_Index ".png"
If (ErrorLevel = 0) {
ToolTip, % "Timer" A_Index, HKey%HkV1%Timerx - 20, HKey%HkV1%TimerY + 40, 2
SetTimer, RemoveTooltip2, -100
HKey%HkV1%Tick%TrigNV1%:= A_TickCount
TrigV1:= A_Index
break
} else {
; ToolTip, not found, Timerx - 20, TimerY + 60, 3
; SetTimer, RemoveTooltip3, % - 50
if (A_Index = 8) {
break
}
}
}
SetTimer, RemoveTooltip, 2
Return
;======================================================
Shortcut1:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
BlockInput, MouseMove
send, {LCtrl Down}
loop {
sleep, %Delay%
Send % "{" HKey%HkV1%Key%TrigNV1% "}"
ImageSearch, HKey%HkV1%TimerX, HKey%HkV1%TimerY, 0, 0, 1000, 90, % "*10 " HKey%HkV1%Spell%TrigNV1% "Timer" TrigV1 ".png"
If (ErrorLevel = 0)
break
if (A_Index = 8) {
break
}
}
send, {LCtrl Up}
BlockInput, MouseMoveoff
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , D
MouseMove, Xpos, Ypos
BlockInput, MouseMoveOff
Return
;======================================================
V2Loop:
HkV2:= Hk
HKey%HkV2%TrigN:= 1
TrigNV2:= 1
HKey%HkV2%KeyToggle:= !HKey%HkV2%KeyToggle
While HKey%HkV2%KeyToggle {
sleep, %Delay%
;sleep, 50
PixelSearch, , , HKey%HkV2%Tx%TrigNV2%, HKey%HkV2%Ty%TrigNV2%, HKey%HkV2%Tx%TrigNV2%, HKey%HkV2%Ty%TrigNV2%, HKey%HkV2%Color%TrigNV2%, 0
If (ErrorLevel = 0) {
gosub SendShortcut2
}
}
ToolTip, Toggled off, HKey%HkV2%Tx%TrigNV2% - 20, HKey%HkV2%Tx%TrigNV2% + 40, 3
SetTimer, RemoveTooltip3, -3000
Return
;======================================================
SendShortcut2:
Cooldown:= % Hkey%HkV2%Cooldown%TrigNV2%
Tooltip, % "Ctrl-" HKey%HkV2%Key%TrigNV2% " Toggle: " HKey%HkV2%CtrlKeyToggle%TrigNV2% "`nCooldown = " Hkey%HkV2%Cooldown%TrigNV2% , 1880, 950
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
BlockInput, on
if ((HKey%HkV2%CtrlKeyToggle%TrigNV2%) = 1) {
send, {LCtrl Down}
sleep, %Delay%
;sleep, 50
}
Send % "{" HKey%HkV2%Key%TrigNV2% "}"
if ((HKey%HkV2%CtrlKeyToggle%TrigNV2%) = 1) {
send, {LCtrl up}
}
BlockInput, off
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , D
sleep % Hkey%HkV2%Cooldown%TrigNV2%
HKey%HkV2%TrigNV2++
if (HKey%HkV2%TrigNV2 > ((HKey%HkV2%TriggeredCount) + 1)) {
HKey%HkV2%TrigNV2:= 1
}
Return
;======================================================
;======================================================
V3Loop:
TrigN:= 1
HKeyHkT1Spell1:= HKey%HkT1%Spell1
HKeyHkT1KeyTrigN:= % HKey%HkT1%Key%TrigN%
HKey%HkT1%KeyToggle%TrigN%:= !HKey%HkT1%KeyToggle%TrigN%
Tooltip, % "Toggle State : " HKey%HkT1%KeyToggle%TrigN% "`nCtrl-" HKeyHkT1KeyTrigN "`nToggle: " HKey%HkT1%CtrlKeyToggle%TrigN%, 1880, 1050
SetTimer, RemoveToolTip, -500
While HKey%HkT1%KeyToggle%TrigN% {
ImageSearch, T1X, T1Y, 0, 0, 1000, 80, % "*40 " HKey%HkT1%Spell%TrigN% "Timer" A_Index ".png"
; If (ErrorLevel = 2) {
; msgbox, error
; }
; If (ErrorLevel = 1) {
; msgbox, not found
; }
If (ErrorLevel = 0) {
Tooltip, found at %T1X%x %T1Y%Y, T1X, T1Y +40
SetTimer, RemoveToolTip, -1000
i:= A_Index
loop {
ImageSearch, , , T1X -5, T1Y -5, T1X + 50, T1Y + 50, % "*40 " HKey%HkT1%Spell%TrigN% "Timer" i ".png"
If (ErrorLevel = 1) {
Tooltip, HKey%HkT1%Spell%TrigN%: %Cooldown%ms, T1X, T1Y +40
SetTimer, RemoveToolTip, -1000
GoSub SendShortcut3
break
}
}
}
if (A_Index = 8)
break
}
Return
;======================================================
SendShortcut3:
HKeyHkT1KeyTrigN:= HKey%HkT1%Key%TrigN%
Sleep, %Cooldown%
BlockInput, on
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
If (HKey%HkT1%CtrlKeyToggle%TrigN% = 0) {
BlockInput, on
send, {%HKeyHkT1KeyTrigN%}
BlockInput, off
}
If (HKey%HkT1%CtrlKeyToggle%TrigN% = 1) {
BlockInput, on
Send, {Ctrl Down}
sleep, 40
Send, {%HKeyHkT1KeyTrigN%}{Ctrl Up}
BlockInput, off
}
If LButtonState = D
MouseClick, , , , , , D
BlockInput, Off
; loop {
; If (HKey%HkT1%CtrlKeyToggle = 1) {
; GetKeyState, CtrlState, Ctrl, P
; If CtrlState = D
; Send, {Ctrl Up}
; Send, {Ctrl down}
; Sleep, 50
; }
; GetKeyState, LButtonState, LButton, P
; If LButtonState = D
; MouseClick, , , , , , U
; send, {%HKeyHkT1KeyTrigN%}
; If LButtonState = D
; MouseClick, , , , , , D
; Send, {Ctrl Up}
; ImageSearch, , , T1X -5, T1Y -5, T1X + 50, T1Y + 50, % HKey%HkT1%Spell%TrigN% "Timer" i ".png"
; If (ErrorLevel = 0) {
; Break
; }
; }
return
;======================================================End of Type1======================================================
Code:
;======================================================ConfigType1======================================================
ConfigType1:
Section := "Type1Hotkey" . Hk . "" . LineSpacing2
gosub Type1Load
GuiWidth:= 250
GuiHeight:= 60
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - Type 1"
Gui, Add, Button, x10 y30 w50 h20 gV1, v1
Gui, Add, Button, x70 y30 w50 h20 gV2, v2
Gui, Add, Button, x130 y30 w50 h20 gV3, v3
if (Hkey%Hk%T1V = 1) {
Gui, Add, Button, x10 y30 w50 h20 gV1 Default, v1
} else if (Hkey%Hk%T1V = 2) {
Gui, Add, Button, x70 y30 w50 h20 gV2 Default, v2
} else {
Gui, Add, Button, x130 y30 w50 h20 gV3 Default, v3
}
Gui, Add, Button, x190 y30 w50 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Auto Caster
Return
;============================================================================================================
V1:
Hkey%Hk%T1V:= 1
gosub GuiSD
Gui, Add, Text, 0x80 x10 y10, Additional Spells:
Gui, Add, Edit, x100 y7 w40 h20 vHkey%Hk%TriggeredCount, % Hkey%Hk%TriggeredCount
Gui, Add, Text, x160 y10, Scan Delay:
Gui, Add, Edit, x230 y7 w40 h20 vHkey%Hk%ScanDelay, % Hkey%Hk%ScanDelay
Loop {
Y1:= 30 * A_Index + 33
Y2:= 30 * A_Index + 30
Y3:= 30 * A_Index + 3
Y4:= 30 * A_Index
Gui, Add, Text, x20 y40, Toggle Spell Name Shortcut Key Cooldown (ms)
Gui, Add, Text, x10 y%Y1%, %A_Index%
Gui, Add, Checkbox, % "x30 y" Y1 " h13 w13 vHkey" Hk "TriggerToggle" A_Index " Checked" Hkey%Hk%TriggerToggle%A_Index%
Gui, Add, Edit, x51 y%Y2% w140 h20 vHkey%Hk%Spell%A_Index%, % Hkey%Hk%Spell%A_Index%
Gui, Add, Edit, x201 y%Y2% w70 h20 vHkey%Hk%Key%A_Index%, % Hkey%Hk%Key%A_Index%
Gui, Add, Edit, x281 y%Y2% w40 h20 vHkey%Hk%Cooldown%A_Index%, % Hkey%Hk%Cooldown%A_Index%
If (A_Index > Hkey%Hk%TriggeredCount) {
GuiWidth:= 350
GuiHeight:= 100 + 30 * A_Index
ButtonHeight:= 30 * A_Index + 70
gosub Guibuild
Gui, Add, Button, x50 y%ButtonHeight% w90 h20 gTriggeredAdd1, Add
Gui, Add, Button, x150 y%ButtonHeight% w90 h20 gTriggeredWrite1 Default, Record
Gui, Add, Button, x250 y%ButtonHeight% w90 h20 gCancel, Cancel
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk " (" Hkey%Hk%Shortcut ")"
Break
}
}
Return
;======================================================
TriggeredAdd1:
gosub GuiSD
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
gosub V1
Return
;======================================================
TriggeredWrite1:
gosub GuiSD
IniWrite, % Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
IniWrite, % Hkey%Hk%ScanDelay, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanDelay
Loop {
IniWrite, % Hkey%Hk%TriggerToggle%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggerToggle%A_Index%
IniWrite, % Hkey%Hk%Spell%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%A_Index%
IniWrite, % Hkey%Hk%Key%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%
IniWrite, % Hkey%Hk%Cooldown%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%A_Index%
HKey%Hk%TrigN:= A_Index
Gosub KeyWrite1
If (A_Index > Hkey%Hk%TriggeredCount)
Break
}
Return
;============================================================================================================
V2:
gosub GuiSD
Hkey%Hk%T1V:= 2
TrigN:= 1
GuiWidth:= 210
GuiHeight:= 200
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut%TrigN% " - V2"
HKeyHkT1CtrlKeyToggleTrigN := HKey%HkT1%CtrlKeyToggle%TrigN%
Gui, Add, Checkbox, % "x10 y43 h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Text, x30 y43, Ctrl
Gui, Add, Edit, x60 y40 w70 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x140 y43, Shortcut
Gui, Add, Edit, x10 y70 w30 h20 vScanDelay%Hk%, % ScanDelay%Hk%
Gui, Add, Text, x50 y73, Scan Loop Delay, ms
Gui, Add, Edit, x10 y100 w30 h20 vHkey%Hk%Cooldown%TrigN%, % Hkey%Hk%Cooldown%TrigN%
Gui, Add, Text, x50 y103, Spell 1 Cooldown, ms
Gui, Add, Edit, x10 y130 w40 h20 vHkey%Hk%TriggeredCount, % Hkey%Hk%TriggeredCount
Gui, Add, Text, x60 y133, Extra Triggered Spells
Gui, Add, Button, x10 y160 w90 h20 gTriggered2 Default, Define
Gui, Add, Button, x110 y160 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Auto Caster
Return
;======================================================
Triggered2:
gosub GuiSD
T1%Hk%:= 2
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
IniWrite, % Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%
IniWrite, % Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%
If (TriggeredCount%Hk% = 0) {
gosub TriggeredWrite2
} else {
TrigN:= 2
Loop {
Y1:= 30 * TrigN - 27
Y2:= 30 * TrigN - 30
Y3:= 30 * TrigN + 3
Y4:= 30 * TrigN
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut ": Additional shortcuts"
Gui, Add, Text, x10 y%Y1%, % "Ctrl"
Gui, Add, Checkbox, % "x30 y" Y1 " h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Text, x50 y%Y1%, % " key" TrigN ":"
Gui, Add, Edit, x90 y%Y2% w60 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x170 y%Y1%, % " Cooldown"
Gui, Add, Edit, x230 y%Y2% w40 h20 vHkey%Hk%Cooldown%TrigN%, % Hkey%Hk%Cooldown%TrigN%
Gui, Add, Text, x275 y%Y1%, ms
If (A_Index = Hkey%Hk%TriggeredCount) {
GuiWidth:= 300
GuiHeight:= 40 + 30 * TrigN
ButtonHeight:= 30 * TrigN + 10
gosub Guibuild
Gui, Add, Button, x100 y%ButtonHeight% w90 h20 gTriggeredWrite2 Default, Record
Gui, Add, Button, x200 y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%,
Break
}
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
TriggeredWrite2:
gosub GuiSD
IniWrite, % Hkey%Hk%Key1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key1
TrigN:= 2
Loop, % TriggeredCount%Hk% {
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%
TrigN+=1
}
TrigN:= 1
Gosub KeyWrite1
Return
;============================================================================================================
V3:
gosub GuiSD
Hkey%Hk%T1V:= 3
TrigN:= 1
GuiWidth:= 210
GuiHeight:= 230
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, Toggle for Ctrl hotkey
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell%TrigN%, % Hkey%Hk%Spell%TrigN%
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Checkbox, % "x10 y73 h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Edit, x30 y70 w70 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x110 y73, Shortcut Key
Gui, Add, Edit, x10 y100 w30 h20 vScanDelay%Hk%, % ScanDelay%Hk%
Gui, Add, Text, x50 y103, Scan Loop Delay, ms
Gui, Add, Edit, x10 y130 w30 h20 vHkey%Hk%T1Cooldown%TrigN%, % Hkey%Hk%T1Cooldown%TrigN%
Gui, Add, Text, x50 y133, Spell 1 Cooldown, ms
Gui, Add, Edit, x10 y160 w40 h20 vTriggeredCount%Hk%, % TriggeredCount%Hk%
Gui, Add, Text, x60 y163, Extra Triggered Spells
Gui, Add, Button, x10 y190 w90 h20 gTriggered3 Default, Define
Gui, Add, Button, x110 y190 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - V3"
Return
;======================================================
Triggered3:
gosub GuiSD
IniWrite, % Hkey%HkT1%T1V, UnrapeKitConfig.ini, %Section%, Hkey%HkT1%T1V
IniWrite, % TriggeredCount%Hk%, UnrapeKitConfig.ini, %Section%, TriggeredCount%Hk%
IniWrite, % Hkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%
IniWrite, % Hkey%Hk%T1Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1Cooldown%TrigN%
If (TriggeredCount%Hk% = 0) {
gosub TriggeredWrite3
} else {
TrigN:= 2
Loop {
Y1:= 30 * TrigN - 27
Y2:= 30 * TrigN - 30
Y3:= 30 * TrigN + 3
Y4:= 30 * TrigN
Gui, Add, Text, 0x80 x10 y10, Toggle for Ctrl hotkey
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell%TrigN%, % Hkey%Hk%Spell%TrigN%
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Checkbox, % "x10 y" Y2 " h13 w13 vHKey" HkT1 "CtrlKeyToggle" TrigN " Checked" HKey%HkT1%CtrlKeyToggle%TrigN%
Gui, Add, Edit, x41 y%Y2% w140 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x191 y%Y1%, % "Spell " TrigN ", Cooldown" (Toggle for Ctrl)
Gui, Add, Edit, x291 y%Y2% w40 h20 vHkey%Hk%T1Cooldown%TrigN%, % Hkey%Hk%T1Cooldown%TrigN%
Gui, Add, Text, x341 y%Y1%, ms
If (A_Index = TriggeredCount%Hk%) {
GuiWidth:= 370
GuiHeight:= 40 + 30 * TrigN
ButtonHeight:= 30 * TrigN + 10
gosub Guibuild
Gui, Add, Button, x170 y%ButtonHeight% w90 h20 gTriggeredWrite3 Default, Record
Gui, Add, Button, x270 y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk ": " Hkey%Hk%Shortcut ": Additional shortcuts"
Break
}
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
TriggeredWrite3:
gosub GuiSD
TrigN:= 2
Loop, % Hkey%Hk%TriggeredCount {
IniWrite, % Hkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%HkT1%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%HkT1%CtrlKeyToggle%TrigN%
IniWrite, % Hkey%Hk%T1Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1Cooldown%TrigN%
TrigN+=1
}
TrigN:= 1
Gosub KeyWrite1
Return
;======================================================End of ConfigType1======================================================
Code:
;======================================================Type2======================================================
Type2:
HkeyHkSpell1:= Hkey%Hk%Spell1
HkeyHkSpell2:= Hkey%Hk%Spell2
HkeyHkKey:= Hkey%Hk%Key
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
if (Hkey%Hk%AltEquiptoggle)
Send, {X}
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
sleep, %Delay%
MouseClick, , Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseMove, %HkeyHkSpell1%X, %HkeyHkSpell1%Y
sleep, %Delay%
MouseClick, , %HkeyHkSpell1%X, %HkeyHkSpell1%Y
if (Hkey%Hk%MoveToggle)
MouseMove, Xpos, Ypos
if (Hkey%Hk%ShiftToggle) {
Send, {LShift Down}
sleep, 50
}
SendInput, % "{" Hkey%Hk%Key "}"
if (Hkey%Hk%ShiftToggle)
Send, {LShift Up}
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseClick, , Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseMove, %HkeyHkSpell2%X, %HkeyHkSpell2%Y
MouseClick, , %HkeyHkSpell2%X, %HkeyHkSpell2%Y
if (Hkey%Hk%AltEquiptoggle)
Send, {X}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState2, LButton, P
if LButtonState2 = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type2======================================================
Code:
;======================================================ConfigType2======================================================
ConfigType2:
Section = Type2Hotkey%Hk%--------------------------------------------------------------------------------------------------
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 210
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - Type 2"
Gui, Add, Edit, x30 y40 W110 h20 vHkey%Hk%Spell1, % Hkey%Hk%Spell1
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Edit, x30 y70 W110 h20 vHkey%Hk%Spell2, % Hkey%Hk%Spell2
Gui, Add, Text, x160 y73, Spell 2
Gui, Add, Edit, x10 y100 W70 h20 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Text, x90 y103, Shortcut Key
Gui, Add, Checkbox, % "x10 y130 h13 w13 vHkey" Hk "MoveToggle Checked" Hkey%Hk%MoveToggle
Gui, Add, Text, x30 y130, replace cursor
Gui, Add, Checkbox, % "x+10 y130 h13 w13 vHkey" Hk "ShiftToggle Checked" Hkey%Hk%ShiftToggle
Gui, Add, Text, x+10 y130, Hold Shift
Gui, Add, Checkbox, % " x10 y160 vHkey" Hk "AltEquiptoggle checked" Hkey%Hk%AltEquiptoggle, Alternate equipment
Gui, Add, Button, x10 y180 w90 h20 gWrite2 Default, Define
Gui, Add, Button, x110 y180 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Swap Caster
Return
;======================================================
Write2:
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
IniWrite, % Hkey%Hk%MoveToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MoveToggle
IniWrite, % Hkey%Hk%ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShiftToggle
IniWrite, % Hkey%Hk%AltEquiptoggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%AltEquiptoggle
Gosub KeyWrite
Return
;======================================================End of ConfigType2======================================================
Code:
;======================================================Type3======================================================
Type3:
HkeyHkKey:= Hkey%Hk%Key
Hkey%Hk%Keytoggle:= !Hkey%Hk%Keytoggle
CastTime1:= Hkey%Hk%Cast1Time + Delay + 2 * FrameTime
CastTime2:= Hkey%Hk%Cast2Time + Delay + 2 * FrameTime
if Hkey%Hk%Keytoggle {
HkeyHkSpell:= Hkey%Hk%Spell1
i:= 1
gosub SpellCast
}
if !Hkey%Hk%Keytoggle {
HkeyHkSpell:= Hkey%Hk%Spell2
i:= 2
gosub SpellCast
}
Return
;======================================================End of Type3======================================================
Code:
;======================================================ConfigType3======================================================
ConfigType3:
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 220
gosub GuiBuild
Gui, Add, Text, 0x80 x70 y10, Spell Cast Time
Gui, Add, Text, x10 y43, 1
Gui, Add, Edit, x20 y40 W140 h20 vHkey%Hk%Spell1, % Hkey%Hk%Spell1
Gui, Add, Edit, x170 y40 W30 vHkey%Hk%Cast1Time, % Hkey%Hk%Cast1Time
Gui, Add, Text, x10 y73, 2
Gui, Add, Edit, x20 y70 W140 vHkey%Hk%Spell2, % Hkey%Hk%Spell2
Gui, Add, Edit, x170 y70 W30 vHkey%Hk%Cast2Time, % Hkey%Hk%Cast2Time
Gui, Add, Text, x10 y103, Shortcut key
Gui, Add, Edit, x90 y100 W70 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Checkbox, % "x10 y130 h13 w13 vHkey" Hk "Cast1ShiftToggle Checked" Hkey%Hk%Cast1ShiftToggle
Gui, Add, Text, x+10 y130, Shift
Gui, Add, Checkbox, % "x+10 y130 h13 w13 vHkey" Hk "Cast1Toggle Checked" Hkey%Hk%Cast1Toggle
Gui, Add, Text, x+10 y130, Cast Spell 1
Gui, Add, Checkbox, % "x10 y160 h13 w13 vHkey" Hk "Cast2ShiftToggle Checked" Hkey%Hk%Cast2ShiftToggle
Gui, Add, Text, x+10 y160, Shift
Gui, Add, Checkbox, % "x+10 y160 h13 w13 vHkey" Hk "Cast2Toggle Checked" Hkey%Hk%Cast2Toggle
Gui, Add, Text, x+10 y160, Cast Spell 2
Gui, Add, Button, x10 y190 w90 h20 gWrite3 Default, Define
Gui, Add, Button, x110 y190 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk " Type 3: " Hkey%Hk%Shortcut
Return
;======================================================
Write3:
Section = Type3Hotkey%Hk%--------------------------------------------------------------------------------------------------
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2
IniWrite, % Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniWrite, % Hkey%Hk%Cast2Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Time
IniWrite, % Hkey%Hk%Cast1ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1ShiftToggle
IniWrite, % Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniWrite, % Hkey%Hk%Cast2ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2ShiftToggle
IniWrite, % Hkey%Hk%Cast2Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Toggle
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
Gosub KeyWrite
Return
;======================================================End of ConfigType3======================================================
Code:
;======================================================Type4======================================================
Type4:
HkeyHkSpell:= Hkey%Hk%Spell1
CastTime1:= Hkey%Hk%Cast1Time + Delay + 2 * FrameTime
ImageSearch, , , 1575, 1020, 1630, 1075, % "*10 " HKey%Hk%Spell1 "_" Hkey%Hk%Key ".png"
If ErrorLevel = 0
SendInput, "{" Hkey%Hk%Key "}"
If (ErrorLevel = 1) {
gosub SpellCast
}
Return
;======================================================End of Type4======================================================
Code:
;======================================================End of ConfigType4======================================================
ConfigType4:
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 170
gosub GuiBuild
Gui, Add, Text, 0x80 x70 y10, Spell Cast Time
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell1T4, % Hkey%Hk%Spell1
Gui, Add, Edit, x160 y40 W30 vHkey%Hk%Cast1Time, % Hkey%Hk%Cast1Time
Gui, Add, Text, x10 y73, Shortcut key
Gui, Add, Edit, x90 y70 W70 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Checkbox, % "x10 y100 h13 w13 vHkey" Hk "Cast1Toggle Checked" Hkey%Hk%Cast1Toggle
Gui, Add, Text, x40 y100, Cast Spell 1
Gui, Add, Button, x10 y140 w90 h20 gWrite4 Default, Define
Gui, Add, Button, x110 y140 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, "Hotkey " Hk " Type 4: " Hkey%Hk%Shortcut
Return
;======================================================
Write4:
Section = Type4Hotkey%Hk%--------------------------------------------------------------------------------------------------
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniWrite, % Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
Gosub KeyWrite
Return
;======================================================End of ConfigType4======================================================
Code:
;======================================================Type5======================================================
Type5:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %Delay%
MouseClick, Right, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
Sleep, %Delay%
if (Hkey%Hk%GemSwapTab = 1) {
MouseMove, Hkey%Hk%GemSwap2_X, Hkey%Hk%GemSwap2_Y
MouseClick, Left, Hkey%Hk%GemSwap2_X, Hkey%Hk%GemSwap2_Y
MouseMove, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
MouseClick, Left, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
}
if (Hkey%Hk%GemSwapTab = 2) {
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%GemSwap2Alt_X, Hkey%Hk%GemSwap2Alt_Y
MouseClick, , Hkey%Hk%GemSwap2Alt_X, Hkey%Hk%GemSwap2Alt_Y
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
MouseClick, , Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
}
SendInput, {i}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type5======================================================
Code:
;======================================================Type6======================================================
Type6:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %Delay%
MouseClick, Right, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
Sleep, %Delay%
if (Hkey%Hk%EquipSwapTab = 1) {
MouseMove, Hkey%Hk%EquipSwap2_X, Hkey%Hk%EquipSwap2_Y
MouseClick, Left, Hkey%Hk%EquipSwap2_X, Hkey%Hk%EquipSwap2_Y
MouseMove, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
MouseClick, Left, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
}
if (Hkey%Hk%EquipSwapTab = 2) {
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%EquipSwap2Alt_X, Hkey%Hk%EquipSwap2Alt_Y
MouseClick, , Hkey%Hk%EquipSwap2Alt_X, Hkey%Hk%EquipSwap2Alt_Y
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
MouseClick, , Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
}
SendInput, {i}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type6======================================================
Code:
;======================================================ConfigType5&6======================================================
ConfigType5:
Section:= "Type5Hotkey5--------------------------------------------------------------------------------------------------"
Gosub GemSwap1
Return
ConfigType6:
Section:= "Type6Hotkey5--------------------------------------------------------------------------------------------------"
Gosub EquipSwap1
Return
GemSwap1:
Swap:= "GemSwap1"
Gosub Swap1
Return
GemSwap2:
Swap:= "GemSwap2"
Gosub Swap2
return
EquipSwap1:
Swap:= "EquipSwap1"
GoSub Swap1
Return
EquipSwap2:
Swap:= "EquipSwap2"
GoSub Swap2
Return
;======================================================
Swap1:
Gosub InvRead
gosub LoadSocketLists
gosub EquipRead
gosub AltEquipRead
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 830
If (Swap = "GemSwap1") {
Hkey%Hk%GemSwapTab:= 1
}
If (Swap = "EquipSwap2") {
Hkey%Hk%EquipSwapTab:= 1
}
Gui, Add, Picture, x3 y27, InventoryEquip.png
Gui, Color, 0x050505
gosub GuiBuild
gosub InvRadio
gosub EquipRadio
Gui, Add, Button, x550 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x450 y800 w90 h20 gSwapCoord Default, Select
If (Swap = "GemSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipped Gem Swap"
If (Swap = "EquipSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipment Swap"
Return
;======================================================
Swap2:
Gosub InvRead
gosub LoadSocketLists
gosub EquipRead
gosub AltEquipRead
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 830
If (Swap = "GemSwap2") {
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight%, 1||2
}
If (Swap = "EquipSwap2") {
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight%, 1||2
}
Gui, Tab, 1
Gui, Add, Picture, x0 y27, InventoryEquip.png
Gui, Color, 0x050505
gosub GuiBuild
gosub InvRadio
gosub EquipRadio
Gui, Add, Button, x550 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x450 y800 w90 h20 gSwapCoord Default, Select
Gui, Tab, 2
gosub GuiTab
Gui, Add, Picture, x33 y30, AlternateEquipment.png
Gui, Color, 0x050505
gosub AltEquipRadio
Gui, Add, Button, x50 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x150 y800 w90 h20 gSwapCoord Default, Select
Gui, Tab
if (Swap = "GemSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipped Gem Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
if (Swap = "EquipSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipment Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
Return
;======================================================
GuiTab:
if (Swap = "GemSwap2") {
Hkey%Hk%GemSwapTab:= 2
GemSwapTab:= Hkey%Hk%GemSwapTab
}
if (Swap = "EquipSwap2") {
Hkey%Hk%EquipSwapTab:= 2
EquipSwapTab:= Hkey%Hk%EquipSwapTab
}
Return
;======================================================
SwapCoord:
gosub guiSD
Gosub InvWriteDelete
gosub EquipWriteDelete
gosub EquipCoord
gosub SwapRouting
Return
;======================================================
InvRead:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
IniRead, Hkey%Hk%%Swap%RadioL%L%C%C%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%, %A_Space%
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
}
}
C:= 0
L:= 0
Return
;======================================================
InvWriteDelete:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%RadioL%L%C%C%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%
}
Hkey%Hk%%Swap%X:= 1240 + (C*53)
Hkey%Hk%%Swap%Y:= 560 + (L*54)
}
}
C:= 0
L:= 0
Return
;======================================================
InvRadio:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
RadioCX:= -27 + C*53
RadioCY:= 489 + L*53
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" RadioCX " y" RadioCY " h13 w13 v" var2 " Checked" var3
}
}
C:= 0
L:= 0
return
;======================================================
AltEquipRadio:
for each, AltSocket in AltSocketList {
varX:= % AltSocket.2
varY:= % AltSocket.3
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3 := % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" varX " y" varY " h13 w13 v" var2 " Checked" var3
}
return
;======================================================
EquipRadio:
for each, Socket in SocketList {
varX:= % Socket.2
varY:= % Socket.3
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3 := % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" varX " y" varY " h13 w13 v" var2 " Checked" var3
}
return
;======================================================
SwapRouting:
If (Swap = "GemSwap2" AND GemSwapTab = 2) OR (Swap = "EquipSwap2" AND EquipSwapTab = 2) {
gosub AltEquipDelete
gosub AltEquipWriteDelete
gosub AltEquipCoord
}
If (Swap = "GemSwap1") {
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Gosub GemSwap2
Return
}
If (Swap = "EquipSwap1") {
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Gosub EquipSwap2
Return
}
If (Swap = "GemSwap2" AND GemSwapTab = 1) {
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Return
}
If (Swap = "EquipSwap2" AND EquipSwapTab = 1) {
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Return
}
If (Swap = "GemSwap2" AND GemSwapTab = 2) {
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab
IniWrite, % Hkey%Hk%%Swap%Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_X
IniWrite, % Hkey%Hk%%Swap%Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_Y
Return
}
If (Swap = "EquipSwap2" AND EquipSwapTab = 2) {
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab
IniWrite, % Hkey%Hk%%Swap%Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_X
IniWrite, % Hkey%Hk%%Swap%Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_Y
Return
}
return
;======================================================End of ConfigType5&6======================================================
Code:
;======================================================Type7======================================================
Type7:
T7:= 1
MouseGetPos, Xpos, Ypos
Loop, % Hkey%Hk%Iterations {
If (Hkey%Hk%Iteration%T7% = "SpellScan") {
Gosub SpellScan
}
If (Hkey%Hk%Iteration%T7% = "ImageSearch") {
gosub T7ImageSearch
}
If (Hkey%Hk%Iteration%T7% = "Spell") {
gosub T7Spell
}
If (Hkey%Hk%Iteration%T7% = "SendInput") {
gosub T7SendInput
}
If (Hkey%Hk%Iteration%T7% = "GetMousePos") {
gosub T7GetMouse
}
If (Hkey%Hk%Iteration%T7% = "GoMousePos") {
gosub T7GoMouse
}
If (Hkey%Hk%Iteration%T7% = "MouseMove") {
gosub T7MouseMove
}
If (Hkey%Hk%Iteration%T7% = "Delay") {
Sleep, % HKey%Hk%DelayIteration%T7%
}
If (Hkey%Hk%Iteration%T7% = "GemSwap") {
gosub T7GemSwap
}
If (Hkey%Hk%Iteration%T7% = "EquipmentSwap") {
gosub T7EquipSwap
}
T7+= 1
}
MouseMove, Xpos, Ypos
Return
T7Routing:
Return
T7ImageSearch:
;BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LuttonState = D
MouseClick, , , , , , U
MouseMove, A_ScreenWidth, A_ScreenHeight
Loop {
ImageSearch, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%, ScanCoordinatesHotkey%Hk%Iteration%T7%_L, ScanCoordinatesHotkey%Hk%Iteration%T7%_T, ScanCoordinatesHotkey%Hk%Iteration%T7%_R, ScanCoordinatesHotkey%Hk%Iteration%T7%_B, % "*" ShadeVariationHotkey%Hk%Iteration%T7% " " ImageNameHotkey%Hk%Iteration%T7% ".png"
If (ErrorLevel = 2) {
MsgBox % "Search Failed for image " ImageNameHotkey%Hk%Iteration%T7%
break
}
If (ErrorLevel = 1) {
MsgBox % "Search could not find image " ImageNameHotkey%Hk%Iteration%T7%
break
}
If (ErrorLevel = 0) {
ToolTip, % HKey%Hk%MouseXPosIteration%T7% ", " HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, 500
break
}
}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
; BlockInput, MouseMoveOff
return
T7Spell:
HKeyHkSpellIterationT7:= HKey%Hk%SpellIteration%T7%
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, KeyX_%Hk%Iteration%T7%, KeyY_%Hk%Iteration%T7%
Sleep, %FrameTime%
MouseClick, , KeyX_%Hk%Iteration%T7%, KeyY_%Hk%Iteration%T7%
Sleep, %FrameTime%
MouseMove, %HKeyHkSpellIterationT7%X, %HKeyHkSpellIterationT7%Y
SetMouseDelay, 40
MouseClick, , %HKeyHkSpellIterationT7%X, %HKeyHkSpellIterationT7%Y
SetMouseDelay, %MouseDelay%
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7SendInput:
HKeyHkSendIterationT7:= HKey%Hk%SendIteration%T7%
SendInput, {%HKeyHkSendIterationT7%}
return
T7GetMouse:
If (Hkey%Hk%GetMousePosToggleIteration%T7% = 1) {
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseGetPos, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
}
return
T7GoMouse:
MouseT7:= HKey%Hk%GoMousePosIteration%T7%
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, HKey%Hk%MouseXPosIteration%MouseT7%, HKey%Hk%MouseYPosIteration%MouseT7%
Tooltip, % "x: " HKey%Hk%MouseXPosIteration%MouseT7% ", y: "HKey%Hk%MouseYPosIteration%MouseT7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7MouseMove:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%
Tooltip, % "x: " HKey%Hk%MouseXPosIteration%T7% ", y: "HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7GemSwap:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %FrameTime%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, Right, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
If (GemSwapTab_%Hk% = 1) {
MouseMove, GemSwap2Hotkey%Hk%Iteration%T7%_X, GemSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap2Hotkey%Hk%Iteration%T7%_X, GemSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
If (GemSwapTab_%Hk% = 2) {
SendInput, {x}
Sleep, %FrameTime%
MouseMove, GemSwap2AltHotkey%Hk%Iteration%T7%_X, GemSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap2AltHotkey%Hk%Iteration%T7%_X, GemSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
SendInput, {x}
Sleep, %FrameTime%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
SendInput, {i}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7EquipSwap:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %FrameTime%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
If (EquipSwapTab_%Hk% = 1) {
MouseMove, EquipSwap2Hotkey%Hk%Iteration%T7%_X, EquipSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap2Hotkey%Hk%Iteration%T7%_X, EquipSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
If (EquipSwapTab_%Hk% = 2) {
SendInput, {x}
Sleep, %FrameTime%
MouseMove, EquipSwap2AltHotkey%Hk%Iteration%T7%_X, EquipSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap2AltHotkey%Hk%Iteration%T7%_X, EquipSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
SendInput, {x}
Sleep, %FrameTime%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
SendInput, {i}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
;======================================================End of Type7======================================================
Code:
;======================================================ConfigType7======================================================
Type7Config:
gosub Type7Load
MouseGetPos, Xpos, Ypos
Type7ConfigRecord:= 0
GuiWidth:= 210
GuiHeight:= 100
gosub GuiSD
Gui, Add, Text, x40 y10, Type 7 configuration
Gui, Add, Edit, x10 y40 w30 h20 vHkey%Hk%Iterations, % Hkey%Hk%Iterations
Gui, Add, Text, x50 y43, % "Iterations Hotkey " Hk
Gui, Add, Button, x10 y70 w90 h20 gType7Config2 Default, Configure
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7
Return
Type7Config2:
gosub GuiSD
IniWrite, % Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations
MouseGetPos, Xpos, Ypos
H:= 1
W:= 1
HMax:= 1
SysGet, SGW, 71
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, x10 y10, Options:
Gui, Add, Text, x10 y40, Choose any of these or skip
Gui, Add, Text, x10 y70,
Gui, Add, Text, x10 y100, ImageSearch
Gui, Add, Text, x10 y130, GetMousePos
Gui, Add, Text, x10 y160, GoMousePos
Gui, Add, Text, x10 y190, SpellScan
Gui, Add, Text, x10 y220, Spell
Gui, Add, Text, x10 y250, SendInput
Gui, Add, Text, x10 y280, MouseMove
Gui, Add, Text, x10 y310, Delay
Gui, Add, Text, x10 y340, GemSwap
Gui, Add, Text, x10 y370, EquipmentSwap
Gui, Add, Text, x10 y400, Add
Gui, Add, Edit, x110 y400 w20 h20 vHkey%Hk%7Iterations
Gui, Add, Text, x140 y403, Iteration(s)
Gui, Add, Button, x10 y400 w90 h20 gType7ConfigAdd, Add
T7:= 1
Loop, % Hkey%Hk%Iterations {
GuiY:= 60 + 30 * H
ScreenHeight:= A_ScreenHeight - 45
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y1:= 8 + 30 * H
Y2:= 5 + 30 * H
GuiWidth:= 160 + 360 * W
If (W = 1) {
GuiHeight:= 70 + 30 * H
ButtonHeight:= 40 + 30 * H
}
If (W > 1) {
GuiHeight:= 70 + 30 * HMax
ButtonHeight:= 40 + 30 * HMax
}
Button1X:= GuiWidth - 300
Button2X:= GuiWidth - 200
Button3X:= GuiWidth - 100
CheckboxX:= GuiWidth - 310
EditButtonX:= GuiWidth - 100
EditX:= GuiWidth - 280
TextX:= GuiWidth - 170
var1= Hkey%Hk%Iteration%T7%Toggle
Gui, Add, Edit, x%EditX% y%Y2% w100 h20 vHkey%Hk%Iteration%T7%, % Hkey%Hk%Iteration%T7%
Gui, Add, Text, x%TextX% y%Y1%, % "Iteration " T7
Gui, Add, Button, x%EditButtonX% y%Y2% w90 h20 gEditT7, %T7%
If (T7 = Hkey%Hk%Iterations) {
If ButtonHeight < 400
ButtonHeight = 400
If GuiHeight < 430
GuiHeight = 430
gosub GuiBuild
Gui, Add, Button, x%Button1X% y%ButtonHeight% w90 h20 gType7ConfigRecord Default, Record
Gui, Add, Button, x%Button2X% y%ButtonHeight% w90 h20 gType7Config3, Configure
Gui, Add, Button, x%Button3X% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Iteration Configuration
Break
}
T7+= 1
H+= 1
}
Return
EditT7:
A_GuiControlT7:= A_GuiControl
T7:= A_GuiControlT7
gosub GuiSD
gosub Type7Write2
Gosub Type7Config4
Return
Type7ConfigRecord:
gosub GuiSD
gosub Type7Write
Gosub Type7Config2
Return
Type7ConfigAdd:
gosub GuiSD
gosub Type7Write2
Hkey%Hk%Iterations+= % Hkey%Hk%7Iterations
Gosub Type7Config2
Return
Type7Config3:
gosub GuiSD
T7 := 1
gosub Type7Write2
T7 := 1
Gosub Type7Config4
Return
Type7Config4:
gosub GuiSD
If (A_GuiControlT7 > 0)
A_GuiControlType7Config4:= A_GuiControlT7
IniRead, Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations
Loop {
If (Hkey%Hk%Iteration%T7% = "ImageSearch") {
Gosub Type7ImageSearch
Break
}
If (Hkey%Hk%Iteration%T7% = "GetMousePos") {
Gosub Type7GetMousePos
Break
}
If (Hkey%Hk%Iteration%T7% = "GoMousePos") {
Gosub Type7GoMousePos
Break
}
If (Hkey%Hk%Iteration%T7% = "SpellScan") {
Gosub Type7LoopAdd
Break
}
If (Hkey%Hk%Iteration%T7% = "Spell") {
Gosub Type7Spell
Break
}
If (Hkey%Hk%Iteration%T7% = "SendInput") {
Gosub Type7Send
Break
}
If (Hkey%Hk%Iteration%T7% = "MouseMove") {
Gosub Type7MouseMove
Break
}
If (Hkey%Hk%Iteration%T7% = "Delay") {
Gosub Type7DelayConfig
Break
}
If (Hkey%Hk%Iteration%T7% = "GemSwap") {
Gosub Type7GemSwap1
Break
}
If (Hkey%Hk%Iteration%T7% = "EquipmentSwap") {
Gosub Type7EquipSwap1
Break
}
If (T7 >= Hkey%Hk%Iterations) {
Hk += 1
Gosub HkTypeConfigLoop
Break
}
}
Return
Type7Msg:
MsgBox, % "Iteration " T7 " = " Hkey%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7LoopAdd:
gosub GuiSD
If (A_GuiControlType7Config4 > 0) {
A_GuiControlT7:= 0
gosub Type7Config2
} Else {
T7+= 1
Gosub Type7Config4
}
Return
Type7LoopSubtract:
gosub GuiSD
A_GuiControlT7:= 0
Loop {
T7-= 1
If (T7 = 0) {
T7:= 1
Gosub Type7Config4
Break
}
}
Return
Type7ImageSearch:
gosub GuiSD
gosub GuiBuild
Gui, Add, Edit, x10 y10 w30 h20 vScanCoordinatesHotkey%Hk%Iteration%T7%_L, % ScanCoordinatesHotkey%Hk%Iteration%T7%_L
Gui, Add, Edit, x50 y10 w30 h20 vScanCoordinatesHotkey%Hk%Iteration%T7%_T, % ScanCoordinatesHotkey%Hk%Iteration%T7%_T
Gui, Add, Edit, x90 y10 W30 H20 vScanCoordinatesHotkey%Hk%Iteration%T7%_R, % ScanCoordinatesHotkey%Hk%Iteration%T7%_R
Gui, Add, Edit, x130 y10 W30 H20 vScanCoordinateHotkey%Hk%Iteration%T7%_B, % ScanCoordinatesHotkey%Hk%Iteration%T7%_B
Gui, Add, Edit, x10 y40 W110 H20 vShadeVariationHotkey%Hk%Iteration%T7%, % ShadeVariationHotkey%Hk%Iteration%T7%
Gui, Add, Edit, x10 y70 w110 h20 vImageNameHotkey%Hk%Iteration%T7%, % ImageNameHotkey%Hk%Iteration%T7%
Gui, Add, Text, x170 y13, Left, Top, Right and Bottom Scan Coordinates
Gui, Add, Text, x130 y43, Scan Color Shade Variation and Optional Parameters
Gui, Add, Text, x130 y73, Scan Image Name
Gui, Add, Button, x310 y100 w90 h20 gType7ImageSearchWrite Default, Define
Gui, Add, Button, x210 y100 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y100 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y100 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Image Scan
Return
Type7ImageSearchWrite:
gosub GuiSD
Hkey%Hk%GetMousePosToggleIteration%T7%:= 1
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GetMousePosToggleIteration%T7%
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_L, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_L
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_T, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_T
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_R, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_R
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_B, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_B
IniWrite, % ImageNameHotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, ScanType7, ImageNameHotkey%Hk%Iteration%T7%
IniWrite, % ShadeVariationHotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, ScanType7, ShadeVariationHotkey%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7GetMousePos:
GuiWidth:= 410
GuiHeight:= 100
gosub GuiBuild
If (Hkey%Hk%MouseXPosIteration%T7% is Integer Hkey%Hk%MouseYPosIteration%T7% is Integer) {
MouseMove, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
} Else {
MouseMove, 960, 540
}
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, x10 y13, Hotkey %Hk% Iteration %T7%: Move the mouse to the position to be saved and press ENTER
Gui, Add, Checkbox, % "x10 y40 h13 w13 vHkey" Hk "GetMousePosToggleIteration" T7 " Checked" Hkey%Hk%GetMousePosToggleIteration%T7%, Cancel Saving and get position during hotkey execution
Gui, Add, Button, x310 y70 w90 h20 gType7GetMousePosWrite Default, Define
Gui, Add, Button, x210 y70 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y70 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Get Mouse Position
Return
Type7GetMousePosWrite:
gosub GuiSD
If (Hkey%Hk%GetMousePosToggleIteration%T7% = 0) {
MouseGetPos, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%Type7MouseYPosIteration%T7%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseXPosIteration%T7%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseYPosIteration%T7%
}
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GetMousePosToggleIteration%T7%
Gosub Type7LoopAdd
Return
Type7GoMousePos:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
Gui, Add, Edit, x200 y10 w20 h20 vHkey%Hk%GoMousePosIteration%T7%, % Hkey%Hk%GoMousePosIteration%T7%
Gui, Add, Text, x10 y13, Move to Mouse Position from Iteration:
Gui, Add, Button, x310 y40 w90 h20 gType7GoMousePosWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%:Mouse Position
Return
Type7GoMousePosWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GoMousePosIteration%T7%
Gosub Type7Config2
Return
Type7MouseMove:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
If (Hkey%Hk%MouseXPosIteration%T7% is Integer) and (Hkey%Hk%MouseYPosIteration%T7% is Integer) {
MouseMove, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
} Else {
MouseMove, 960, 540
}
Gui, Add, Text, x10 y13, Hotkey %Hk% Iteration %T7%: Move the mouse to the position to be saved and press ENTER
Gui, Add, Button, x310 y40 w90 h20 gType7MouseMoveWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Mouse Position
Return
Type7MouseMoveWrite:
gosub GuiSD
MouseGetPos, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseXPosIteration%T7%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseYPosIteration%T7%
Gosub Type7LoopAdd
Return
Type7Spell:
GuiWidth:= 410
GuiHeight:= 140
gosub GuiBuild
Gui, Add, Text, x10 y10, % Type 7 - "Iteration " T7 " Spell Configuration"
Gui, Add, Edit, x10 y40 w110 h20 vHkey%Hk%SpellIteration%T7%, % Hkey%Hk%SpellIteration%T7%
Gui, Add, Text, x130 y43, % "Spell - Hotkey " Hk
Gui, Add, Edit, x10 y70 W70 H20 vHkey%Hk%KeyIteration%T7%, % Hkey%Hk%KeyIteration%T7%
Gui, Add, Text, x90 y73, % "Key - Hotkey " Hk
Gui, Add, Button, x310 y110 w90 h20 gType7SpellWrite Default, Define
Gui, Add, Button, x210 y110 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y110 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y110 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 Spell Configuration
Return
Type7SpellWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, type7HotkeySpells, Hkey%Hk%SpellIteration%T7%
IniWrite, % Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, type7HotkeyKey, Hkey%Hk%KeyIteration%T7%
Gosub Type7Key
Return
Type7Key:
If (Hkey%Hk%KeyIteration%T7% = "Q") {
KeyX_%Hk%Iteration%T7%:= 1440
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "W") {
KeyX_%Hk%Iteration%T7%:= 1495
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "E") {
KeyX_%Hk%Iteration%T7%:= 1550
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "R") {
KeyX_%Hk%Iteration%T7%:= 1605
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "T") {
KeyX_%Hk%Iteration%T7%:= 1655
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "LButton") {
KeyX_%Hk%Iteration%T7%:= 1550
KeyY_%Hk%Iteration%T7%:= 975
}
If (Hkey%Hk%KeyIteration%T7% = "MButton") {
KeyX_%Hk%Iteration%T7%:= 1600
KeyY_%Hk%Iteration%T7%:= 975
}
If (Hkey%Hk%KeyIteration%T7% = "RButton") {
KeyX_%Hk%Iteration%T7%:= 1650
KeyY_%Hk%Iteration%T7%:= 975
}
IniWrite, % KeyX_%Hk%Iteration%T7%, UnrapeKitConfig.ini, Type7KeyCoordinates, KeyX_%Hk%Iteration%T7%
IniWrite, % KeyY_%Hk%Iteration%T7%, UnrapeKitConfig.ini, type7KeyCoordinates, KeyY_%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7Send:
GuiWidth:= 410
GuiHeight:= 110
gosub GuiBuild
Gui, Add, Text, x185 y10, % "Hotkey " Hk
Gui, Add, Edit, x10 y40 w70 h20 vHkey%Hk%SendIteration%T7%, % Hkey%Hk%SendIteration%T7%
Gui, Add, Text, x90 y43, % "Iteration " T7 " Send"
Gui, Add, Button, x310 y80 w90 h20 gType7SendWrite Default, Define
Gui, Add, Button, x210 y80 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y80 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y80 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Send Config
Return
Type7SendWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, type7Send, Hkey%Hk%SendIteration%T7%
Gosub Type7LoopAdd
Return
Type7DelayConfig:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
Gui, Add, Edit, x10 y10 w130 h20 vHkey%Hk%DelayIteration%T7%, % Hkey%Hk%DelayIteration%T7%
Gui, Add, Text, x150 y13, % "Iteration " T7 " Delay"
Gui, Add, Button, x310 y40 w90 h20 gType7DelayWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk
Return
Type7DelayWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, type7Delay, Hkey%Hk%DelayIteration%T7%
Gosub Type7LoopAdd
Return
Type7GemSwap1:
Swap:= "7GemSwap1"
GoSub Type7Swap
Return
Type7GemSwap2:
Swap:= "7GemSwap2"
GoSub Type7Swap
Return
Type7EquipSwap1:
Swap:= "7EquipSwap1"
GoSub Type7Swap
Return
Type7EquipSwap2:
Swap:= "7EquipSwap2"
GoSub Type7Swap
Return
Type7Swap:
Gosub Type7LCAdd
gosub Type7SwapRead1
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 800
If (Swap = "7GemSwap2") {
GemSwapTab:= 1
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight% AltSubmit v7GemSwapTab_%Hk%, 1||2
Gui, Tab, 1
}
If (Swap = "7EquipSwap2") {
EquipSwapTab:= 1
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight% AltSubmit v7EquipSwapTab_%Hk%, 1||2
Gui, Tab, 1
}
Gui, Color, 0x050505
Gui, Add, Picture, x0 y0, InventoryEquip.png
gosub GuiBuild
gosub Type7Radio1
gosub Type7Radio3
Gui, Add, Button, x550 y770 w90 h20 gType7SwapCoord Default, Select
Gui, Add, Button, x450 y770 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x350 y770 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y770 w90 h20 gCancel, Reload
If (Swap = "7GemSwap2") OR (Swap = "7EquipSwap2") {
GuiWidth:= 650
GuiHeight:= 800
gosub GuiBuild
Gui, Tab, 2
gosub Type7Radio2
Gui, Add, Button, x550 y770 w90 h20 gType7SwapCoord Default, Select
Gui, Add, Button, x450 y770 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x350 y770 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y770 w90 h20 gCancel, Reload
}
If (Swap = "7GemSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipped Gem Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
If (Swap = "7EquipSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipment Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
If (Swap = "7GemSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipped Gem Swap - Iteration " T7
If (Swap = "7EquipSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipment Swap - Iteration " T7
Return
Type7LCAdd:
L:= 1
C:= 1
Loop {
IniRead, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Swap%PositionType7, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7SwapCoord:
gosub GuiSD
Gosub Type7LCCoordAdd
Gosub Type7SwapWrite1
Gosub Type7SwapCoord1
gosub Type7SwapRouting
Return
Type7LCCoordAdd:
L:= 1
C:= 1
Loop {
If (RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7% = 1) {
IniWrite, % RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Swap%PositionType7, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
%Swap%Hotkey%Hk%Iteration%T7%_X:= 1240 + (C*53)
%Swap%Hotkey%Hk%Iteration%T7%_Y:= 560 + (L*54)
}
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7Radio1:
L:= 1
C:= 1
RadioCX:= -10
RadioCY:= 459 + L*52
Loop {
RadioCX += 39
var2 = RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
var3:= % var2
Gui, Add, Radio, % "x" RadioCX " y" RadioCY " h13 w13 v" var3 " Checked" var3
If (C = 5) or (c = 9) {
RadioCX += 1
}
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7Radio2:
For _, socket in SocketList1 {
var2 = % socket.name
var3 = %var2%%Swap%AltHotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
return
Type7Radio3:
For _, socket in SocketList1 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
For _, socket in SocketList2 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
For _, socket in SocketList3 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
return
Type7SwapRouting:
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 2) OR (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 2) {
gosub Type7SwapWrite2
gosub Type7SwapCoord2
}
If (Swap = "7GemSwap1") {
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Gosub Type7GemSwap2
}
If (Swap = "7EquipSwap1") {
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Gosub Type7EquipSwap2
}
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 1) {
IniWrite, % 7GemSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7GemSwapTab_%Hk%
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 1) {
IniWrite, % 7EquipSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7EquipSwapTab_%Hk%
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 2) {
IniWrite, % 7GemSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7GemSwapTab_%Hk%
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 2) {
IniWrite, % 7EquipSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7EquipSwapTab_%Hk%
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_Y
Return
}
return
Type7SwapCoord1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
return
Type7SwapCoord2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%AltHotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%AltHotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
Return
Type7SwapRead1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapRead2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapWrite1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapWrite2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
;======================================================End of ConfigType7======================================================
Code:
;======================================================UnrapeKitConfig======================================================
[Configuration]
ScanCount=28
HotkeyLimit=7
[ScreenCapture--------------------------------------------------------------------------------------------------]
SaveHotkey=!s
SaveAsHotkey=^s
CloseHotkey=!f4
YesHotkey=!y
AddressBarHotkey=!d
SaveAsWindowName=Save As
ConfirmSaveAsWindowName=Confirm Save As
SnippingToolWindowName=Snipping Tool
SnippingToolPath=
ScreenCapturePos=1
TempName=OrderToMe
TempLine=3
TempColumn=1
[ScanCoordinates--------------------------------------------------------------------------------------------------]
Name1=FireTrap
Line1=5
FireTrapX=1488
FireTrapY=613
IconToggle1=0
Name2=OrbOfStorms
Line2=1
OrbOfStormsX=1424
OrbOfStormsY=873
IconToggle2=0
TempestShieldX=1422
TempestShieldY=680
Name3=TempestShield
Line3=4
IconToggle3=0
Name4=RollingMagma
Line4=3
IconToggle4=0
RollingMagmaX=1431
RollingMagmaY=750
WitherX=1551
WitherY=812
Name5=Wither
Line5=2
IconToggle5=0
SummonSkeletonsX=1495
SummonSkeletonsY=822
Name6=SummonSkeletons
Line6=4
IconToggle6=1
IconToggle7=1
Name7=RaiseZombie
Line7=4
RaiseZombieX=1495
RaiseZombieY=563
Name8=SummonSkeletons
Line8=5
IconToggle8=1
DetonateDeadX=1490
DetonateDeadY=622
Name9=DetonateDead
Line9=5
IconToggle9=1
ExplosiveTrapX=1555
ExplosiveTrapY=622
Name10=ExplosiveTrap
Line10=2
IconToggle10=1
PurifyingFlameX=1424
PurifyingFlameY=618
Name11=PurifyingFlame
Line11=4
IconToggle11=1
BlightX=1488
BlightY=750
Name12=Blight
Line12=4
IconToggle12=1
Name13=PurifyingFlame
Line13=3
IconToggle13=1
Name14=Blight
Line14=3
IconToggle14=1
Name15=RaiseZombie
Line15=5
IconToggle15=1
Name16=RaiseZombie
Line16=3
IconToggle16=1
Name17=DetonateDead
Line17=2
IconToggle17=1
Name18=DefaultAttack
Line18=6
IconToggle18=1
DefaultAttackX=1430
DefaultAttackY=562
EssenceDrainX=1560
EssenceDrainY=692
Name19=EssenceDrain
Line19=6
IconToggle19=1
Name20=EssenceDrain
Line20=4
IconToggle20=1
Name21=SummonSkeletons
Line21=2
IconToggle21=1
Name22=ExplosiveTrap
Line22=5
IconToggle22=1
ContagionX=1560
ContagionY=563
Name23=Contagion
Line23=3
IconToggle23=1
OrderToMeX=1430
OrderToMeY=692
Name25=OrderToMe
Line25=4
IconToggle25=1
CloseMenuX=1434
CloseMenuY=891
Name26=CloseMenu
Line26=1
IconToggle26=1
Name27=EssenceDrain
Line27=3
IconToggle27=1
Name28=OrderToMe
Line28=3
IconToggle28=1
[BuffIconCoordinates--------------------------------------------------------------------------------------------------]
TempestShieldTimer1X=23
TempestShieldTimer1Y=20
[Delay--------------------------------------------------------------------------------------------------]
Delay=25
FrameTime=20
KeyDelay1=10
KeyDelayPress=10
MouseDelay=10
[Hotkeys=========================================================================================================]
HotkeyConfig=XButton1 & NumLock
ScanConfig=XButton1 & PgUp
SpellScan=XButton1 & PgDn
ScreenCapture=XButton1 & Ins
DelayConfig=XButton1 & Del
Hkey1Toggle=0
Hkey2Toggle=1
Hkey3Toggle=0
Hkey4Toggle=0
Hkey5Toggle=1
Hkey6Toggle=0
Hkey7Toggle=1
Hkey1Type=1
Hkey2Type=2
Hkey3Type=3
Hkey4Type=3
Hkey5Type=5
Hkey6Type=2
Hkey7Type=2
Hkey1Shortcut=Xbutton1 & 1
Hkey2Shortcut=Xbutton1 & R
Hkey3Shortcut=Xbutton1 & LButton
Hkey4Shortcut=Xbutton1 & Mbutton
Hkey5Shortcut=Xbutton1 & Q
Hkey6Shortcut=Xbutton1 & Rbutton
Hkey7Shortcut=Xbutton1 & LButton
[Type1Hotkey2--------------------------------------------------------------------------------------------------]
TriggeredCount2=2
Hkey2T1V=2
Hkey2Key1=R
HKey2CtrlKeyToggle1=0
ScanDelay2=1
Hkey2T1Cooldown1=4000
Hkey2Key2=T
HKey2CtrlKeyToggle2=1
Hkey2T1Cooldown2=4000
Hkey2KeyX=
Hkey2KeyY=
[Type1Hotkey1--------------------------------------------------------------------------------------------------]
Hkey1TriggeredCount=0
Hkey1T1V=2
Hkey1TriggerToggle1=1
Hkey1Spell1=ArcaneCloak
Hkey1Key1=T
Hkey1Key1X=1655
Hkey1Key1Y=1045
Hkey1TriggerToggle2=0
Hkey1Spell2=MoltenShell
Hkey1Key2=T
Hkey1Cooldown2=4000
Hkey1Key2X=1655
Hkey1Key2Y=1045
Hkey1ScanDelay=190
Hkey1Cooldown1=4000
HKey1CtrlKeyToggle1=0
ScanDelay1=10
[Type2Hotkey3--------------------------------------------------------------------------------------------------]
Hkey3Spell1=OrbOfStorms
Hkey3Spell2=FireTrap
Hkey3Key=E
Hkey3MoveToggle=1
Hkey2ShiftToggle=1
Hkey3AltEquiptoggle=1
Hkey3KeyX=1550
Hkey3KeyY=1045
[Type2Hotkey2--------------------------------------------------------------------------------------------------]
Hkey2Spell1=RaiseZombie
Hkey2Spell2=SummonSkeletons
Hkey2Key=R
Hkey2MoveToggle=1
Hkey2ShiftToggle=1
Hkey2AltEquiptoggle=0
Hkey2KeyX=1605
Hkey2KeyY=1045
[Type3Hotkey3--------------------------------------------------------------------------------------------------]
Hkey3Spell1=EssenceDrain
Hkey3Spell2=DefaultAttack
Hkey3Key=LButton
Hkey3KeyX=1550
Hkey3KeyY=975
Hkey3Cast1ShiftToggle=1
Hkey3Cast1Toggle=1
Hkey3Cast2ShiftToggle=1
Hkey3Cast2Toggle=1
Hkey3Cast1Time=67
Hkey3Cast2Time=91
[Type3Hotkey4--------------------------------------------------------------------------------------------------]
Hkey4Spell1=PurifyingFlame
Hkey4Spell2=Blight
Hkey4Cast1Time=45
Hkey4Cast2Time=45
Hkey3Cast1ShiftToggle=1
Hkey4Cast1Toggle=1
Hkey3Cast2ShiftToggle=0
Hkey4Cast2Toggle=0
Hkey4Key=MButton
Hkey4KeyX=1600
Hkey4KeyY=975
[Type5Hotkey5--------------------------------------------------------------------------------------------------]
Hkey5GemSwap1_X=1765
Hkey5GemSwap1_Y=200
Hkey5GemSwapTab=2
Hkey5GemSwap2Alt_X=1355
Hkey5GemSwap2Alt_Y=200
Hkey5GemSwap2AltRightWeaponTopRightSocket=1
Hkey5GemSwap1LeftHandTopCenterSocket=1
[Type6Hotkey5--------------------------------------------------------------------------------------------------]
Hkey6EquipSwap1LeftHandTopCenterSocket=1
Hkey6EquipSwap1_X=1765
Hkey6EquipSwap1_Y=200
Hkey6EquipSwapTab=2
Hkey6EquipSwap2Alt_X=1355
Hkey6EquipSwap2Alt_Y=200
Hkey6EquipSwap2RightWeaponTopRightSocket=1
Hkey6EquipSwap2AltRightWeaponTopRightSocket=1
[Type3Hotkey7--------------------------------------------------------------------------------------------------]
Hkey7Spell1=EssenceDrain
Hkey7Spell2=DefaultAttack
Hkey7Cast1Time=67
Hkey7Cast2Time=67
Hkey3Cast1ShiftToggle=0
Hkey7Cast1Toggle=0
Hkey3Cast2ShiftToggle=0
Hkey7Cast2Toggle=1
Hkey7Key=LButton
Hkey7KeyX=1550
Hkey7KeyY=975
[Type2Hotkey7--------------------------------------------------------------------------------------------------]
Hkey7Spell1=PurifyingFlame
Hkey7Spell2=EssenceDrain
Hkey7Key=LButton
Hkey7MoveToggle=1
Hkey2ShiftToggle=1
Hkey7AltEquiptoggle=0
Hkey7KeyX=1550
Hkey7KeyY=975
Hkey7ShiftToggle=1
[Type2Hotkey6--------------------------------------------------------------------------------------------------]
Hkey6Spell1=OrderToMe
Hkey6Spell2=Contagion
Hkey6Key=RButton
Hkey6MoveToggle=1
Hkey6ShiftToggle=1
Hkey6AltEquiptoggle=0
Hkey6KeyX=1650
Hkey6KeyY=975
Here's the dump file:
Code:
;======================================================Loading======================================================
ToolTip, Loading
;=====================================INITIALIZATION
#s ingleInstance , force
WinActivate Path of Exile
#IfWinActive Path of Exile
#MaxThreadsperHotkey 2
;------------------------------------------Settings
SetTitleMatchMode, 2
CoordMode, Mouse
SetWorkingDir, %A_ScriptDir%
SetBatchLines, -1
SetDefaultMouseSpeed, 1
SetKeyDelay, 20, 20
SetMouseDelay, 20
Hk := 1
T7:= 1
GuiToggle := 0
LineSpacing1 = =========================================================================================================
LineSpacing2 = --------------------------------------------------------------------------------------------------
;------------------------------------------Setup
gosub IniLoad
gosub HotkeyLoadLoop
gosub DelayRead
;------------------------------------------Tooltip
ToolTip, Load Complete
SetTimer, RemoveToolTip, -500
;------------------------------------------Include
#Include , GeneralFunctions.ahk
#Include , IniSettings.ahk
#Include , HotkeyConfig.ahk
#Include , HotkeyRouting.ahk
#Include , DelayConfig.ahk
#Include , ScreenCapture.ahk
#Include , ScanConfig.ahk
#Include , SpellScan.ahk
#Include , ConfigType1.ahk
#Include , ConfigType2.ahk
#Include , ConfigType3.ahk
#Include , ConfigType4.ahk
#Include , ConfigType5&6.ahk
#Include , ConfigType7.ahk
#Include , Type1.ahk
#Include , Type2.ahk
#Include , Type3.ahk
#Include , Type4.ahk
#Include , Type5.ahk
#Include , Type6.ahk
#Include , Type7.ahk
Return
;======================================================End of Loading======================================================
;======================================================GeneralFunctions======================================================
RCtrl & F9::
GuiWidth:= 270
GuiHeight:= 270
MouseGetPos, Xpos, Ypos
gosub GuiBuild
Gui, Add, Text, X10 Y10, Configuration Hotkeys:
Gui, Add, Edit, X10 Y40 H21 W140 vHotkeyConfig, %HotkeyConfig%
Gui, Add, Edit, X10 Y70 H21 W140 vScanConfig, %ScanConfig%
Gui, Add, Edit, X10 Y100 H21 W140 vSpellScan, %SpellScan%
Gui, Add, Edit, X10 Y130 H21 W140 vScreenCapture, %ScreenCapture%
Gui, Add, Edit, X10 Y160 H21 W140 vDelayConfig, %DelayConfig%
Gui, Add, Text, X160 Y43, Hotkey Configuration
Gui, Add, Text, X160 Y73, Scan Configuration
Gui, Add, Text, X160 Y103, Spell Scan
Gui, Add, Text, X160 Y133, Screen Capture
Gui, Add, Text, X160 Y163, Delay Configuration
Gui, Add, Button, x70 y200 w90 h20 gSetupConfig Default, Ok
Gui, Add, Button, x170 y200 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Hotkey Configuration
Return
;======================================================
HotkeyLoadLoop:
gosub hotkeySetupRead
Hk:= 1
Loop, %HotKeyLimit% {
if (Hkey%Hk%Toggle = 0) {
Hotkey, % Hkey%Hk%Shortcut, Hotkey%Hk%
loop, 7 {
if (Hkey%Hk%Type = A_Index) {
gosub Type%A_Index%Load
break
}
}
}
Hk += 1
}
Hk:= 1
return
;======================================================
F4::
WinClose, Path of Exile
return
F7::
return
RCtrl & F10::
Gui, Cancel
Reload
Return
RCtrl & F11:: Pause
RCtrl & F12:: ExitApp
;======================================================
Cancel:
Reload
Return
;======================================================
HotkeyRouting:
loop, 7 {
If (Hkey%Hk%Type = A_Index) {
Gosub Type%A_Index%
Return
}
}
Return
;======================================================
GuiBuild:
if (GuiToggle = 1)
gosub guiSD
GuiToggle := 1
X_Offset := GuiWidth / 2
Y_Offset := GuiHeight / 2
If (Xpos < X_Offset)
Move_X := 0
Else If (Xpos < A_ScreenWidth - X_Offset)
Move_X := Xpos - X_Offset
Else
Move_X := A_ScreenWidth - GuiWidth
If (Ypos < Y_Offset)
Move_Y := 0
Else If (Ypos < A_ScreenHeight - Y_Offset)
Move_Y := Ypos - Y_Offset
Else
Move_Y := A_ScreenHeight - GuiHeight - 30
Gui, -0x80000 AlwaysOnTop
return
;======================================================
SpellCast:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
LButtonState:= GetKeyState(LButton, P)
if (LButtonState = D)
MouseClick, , , , , , U
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseClick
MouseMove, %HkeyHkSpell%X, %HkeyHkSpell%Y
MouseClick
MouseMove, Xpos, Ypos
if (Hkey%Hk%Cast%i%Toggle) {
if (Hkey%Hk%Cast%i%ShiftToggle) {
send, {LShift Down}
}
sleep, %Delay%
SendInput, % "{" Hkey%Hk%Key "}"
if (Hkey%Hk%Cast%i%ShiftToggle)
send, {LShift Up}
}
; if (Hkey%Hk%Cast%i%ShiftToggle) {
; sleep, % CastTime%i%
GetKeyState, LButtonState, LButton, P
if (LButtonState = D) {
MouseClick, , , , , , D
if (Hkey%Hk%Key = LButton)
MouseClick, , , , , , U
}
BlockInput, MouseMoveOff
j:= i
return
;======================================================
KeyWrite:
if (Hkey%Hk%Key = "Q") {
Hkey%Hk%KeyX:= 1440
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "W") {
Hkey%Hk%KeyX:= 1495
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "E") {
Hkey%Hk%KeyX:= 1550
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "R") {
Hkey%Hk%KeyX:= 1605
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "T") {
Hkey%Hk%KeyX:= 1655
Hkey%Hk%KeyY:= 1045
}
if (Hkey%Hk%Key = "LButton") {
Hkey%Hk%KeyX:= 1550
Hkey%Hk%KeyY:= 975
}
if (Hkey%Hk%Key = "MButton") {
Hkey%Hk%KeyX:= 1600
Hkey%Hk%KeyY:= 975
}
if (Hkey%Hk%Key = "RButton") {
Hkey%Hk%KeyX:= 1650
Hkey%Hk%KeyY:= 975
}
IniWrite, % Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX
IniWrite, % Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY
gosub KeywriteRouting
Return
;======================================================
KeyWrite1:
if (Hkey%Hk%Key%TrigN% = "Q") {
Hkey%Hk%Key%TrigN%X:= 1440
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "W") {
Hkey%Hk%Key%TrigN%X:= 1495
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "E") {
Hkey%Hk%Key%TrigN%X:= 1550
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "R") {
Hkey%Hk%Key%TrigN%X:= 1605
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "T") {
Hkey%Hk%Key%TrigN%X:= 1655
Hkey%Hk%Key%TrigN%Y:= 1045
}
if (Hkey%Hk%Key%TrigN% = "LButton") {
Hkey%Hk%Key%TrigN%X:= 1550
Hkey%Hk%Key%TrigN%Y:= 975
}
if (Hkey%Hk%Key%TrigN% = "MButton") {
Hkey%Hk%Key%TrigN%X:= 1600
Hkey%Hk%Key%TrigN%Y:= 975
}
if (Hkey%Hk%Key%TrigN% = "RButton") {
Hkey%Hk%Key%TrigN%X:= 1650
Hkey%Hk%Key%TrigN%Y:= 975
}
IniWrite, % Hkey%Hk%Key%TrigN%X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%X
IniWrite, % Hkey%Hk%Key%TrigN%Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%Y
Return
;======================================================
KeywriteRouting:
if (A_GuiControlHk is Integer) {
Hk := 0
A_GuiControlHk := ""
Gosub HkeyEdit
} else {
Hk += 1
Gosub HkTypeConfigRouting
}
Return
;======================================================
GuiSD:
Gui, Submit
Gui, Destroy
GuiToggle := 0
Return
;======================================================
LoadSocketLists:
SocketList := [ ["6SocketWeaponTopRightSocket", 72, 80 ]
, ["6SocketWeaponTopCenterSocket", 149, 80 ]
, ["6SocketWeaponMiddleRightSocket", 71, 155]
, ["6SocketWeaponMiddleCenterSocket", 149, 155]
, ["6SocketWeaponBottomRightSocket", 72, 230]
, ["6SocketWeaponBottomCenterSocket", 149, 230]
, ["RightWeaponTopSocket", 111, 80 ]
, ["RightWeaponMiddleSocket", 111, 155]
, ["RightWeaponBottomSocket", 111, 230]
, ["RightWeaponTopRightSocket", 84, 118]
, ["RightWeaponTopCenterSocket", 137, 118]
, ["RightWeaponBottomCenterSocket", 137, 193]
, ["LeftHandTopSocket", 523, 80 ]
, ["LeftHandMiddleSocket", 523, 155]
, ["LeftHandBottomSocket", 523, 230]
, ["LeftHandTopCenterSocket", 496, 118]
, ["LeftHandTopLeftSocket", 550, 118]
, ["LeftHandBottomLeftSocket", 550, 193]
, ["LeftHandMiddleCenterSocket", 485, 155]
, ["LeftHandMiddleLeftSocket", 561, 155]
, ["HelmetTopRightSocket", 279, 51 ]
, ["HelmetTopLeftSocket", 355, 51 ]
, ["HelmetBottomRightSocket", 279, 127]
, ["HelmetBottomLeftSocket", 355, 127]
, ["HelmetMiddleRightSocket", 279, 87 ]
, ["HelmetMiddleLeftSocket", 355, 87 ]
, ["HelmetMiddleSocket", 317, 87 ]
, ["GlovesTopRightSocket", 151, 287]
, ["GlovesTopCenterSocket", 224, 287]
, ["GlovesBottomRightSocket", 151, 362]
, ["GlovesBottomCenterSocket", 224, 362]
, ["GlovesMiddleRightSocket", 151, 324]
, ["GlovesMiddleCenterSocket", 224, 324]
, ["GlovesMiddleSocket", 187, 324]
, ["4SocketArmorTopRightSocket", 293, 202]
, ["4SocketArmorTopLeftSocket", 343, 202]
, ["4SocketArmorBottomRightSocket", 293, 265]
, ["4SocketArmorBottomLeftSocket", 343, 265]
, ["6SocketArmorTopRightSocket", 281, 170]
, ["6SocketArmorTopLeftSocket", 355, 170]
, ["6SocketArmorMiddleRightSocket", 281, 233]
, ["6SocketArmorMiddleLeftSocket", 355, 233]
, ["6SocketArmorBottomRightSocket", 281, 296]
, ["6SocketArmorBottomLeftSocket", 355, 296]
, ["1SocketArmorMiddleSocket", 317, 234]
, ["BootsTopCenterSocket", 411, 287]
, ["BootsTopLeftSocket", 484, 287]
, ["BootsBottomCenterSocket", 411, 362]
, ["BootsBottomLeftSocket", 484, 362]
, ["BootsMiddleCenterSocket", 411, 324]
, ["BootsMiddleLeftSocket", 484, 324]
, ["BootsMiddleSocket", 447, 324]
, ["RightFingerSocket", 213, 232]
, ["LeftFingerSocket", 421, 232]
, ["AmuletSocket", 421, 167]
, ["BeltRightSocket", 293, 350]
, ["BeltCenterSocket", 317, 350]
, ["BeltLeftSocket", 343, 350]
, ["Flask1", 218, 440]
, ["Flask2", 270, 440]
, ["Flask3", 322, 440]
, ["Flask4", 375, 440]
, ["Flask5", 427, 440] ]
SocketCoordList := [ ["6SocketWeaponTopRightSocket", 1355, 170]
, ["6SocketWeaponTopCenterSocket", 1405, 170]
, ["6SocketWeaponMiddleRightSocket", 1355, 225]
, ["6SocketWeaponMiddleCenterSocket", 1405, 225]
, ["6SocketWeaponBottomRightSocket", 1355, 280]
, ["6SocketWeaponBottomCenterSocket", 1405, 280]
, ["RightWeaponTopSocket", 1380, 170]
, ["RightWeaponMiddleSocket", 1380, 225]
, ["RightWeaponBottomSocket", 1380, 280]
, ["RightWeaponTopRightSocket", 1355, 200]
, ["RightWeaponTopCenterSocket", 1405, 200]
, ["RightWeaponBottomCenterSocket", 1405, 250]
, ["LeftHandTopSocket", 1795, 170]
, ["LeftHandMiddleSocket", 1795, 225]
, ["LeftHandBottomSocket", 1795, 280]
, ["LeftHandTopCenterSocket", 1765, 200]
, ["LeftHandTopLeftSocket", 1820, 200]
, ["LeftHandBottomLeftSocket", 1820, 250]
, ["LeftHandMiddleCenterSocket", 1770, 225]
, ["LeftHandMiddleLeftSocket", 1820, 225]
, ["HelmetTopRightSocket", 1560, 135]
, ["HelmetTopLeftSocket", 1615, 135]
, ["HelmetBottomRightSocket", 1560, 185]
, ["HelmetBottomLeftSocket", 1615, 185]
, ["HelmetMiddleRightSocket", 1560, 160]
, ["HelmetMiddleLeftSocket", 1615, 160]
, ["HelmetMiddleSocket", 1690, 160]
, ["GlovesTopRightSocket", 1430, 370]
, ["GlovesTopCenterSocket", 1485, 370]
, ["GlovesBottomRightSocket", 1430, 420]
, ["GlovesBottomCenterSocket", 1485, 420]
, ["GlovesMiddleRightSocket", 1430, 395]
, ["GlovesMiddleCenterSocket", 1485, 395]
, ["GlovesMiddleSocket", 1455, 395]
, ["4SocketArmorTopRightSocket", 1560, 275]
, ["4SocketArmorTopLeftSocket", 1615, 275]
, ["4SocketArmorBottomRightSocket", 1560, 333]
, ["4SocketArmorBottomLeftSocket", 1615, 333]
, ["6SocketArmorTopRightSocket", 1560, 250]
, ["6SocketArmorTopLeftSocket", 1615, 250]
, ["6SocketArmorMiddleRightSocket", 1560, 305]
, ["6SocketArmorMiddleLeftSocket", 1615, 305]
, ["6SocketArmorBottomRightSocket", 1560, 360]
, ["6SocketArmorBottomLeftSocket", 1615, 360]
, ["1SocketArmorMiddleSocket", 1585, 305]
, ["BootsTopCenterSocket", 1690, 370]
, ["BootsTopLeftSocket", 1740, 370]
, ["BootsBottomCenterSocket", 1690, 420]
, ["BootsBottomLeftSocket", 1740, 420]
, ["BootsMiddleCenterSocket", 1690, 395]
, ["BootsMiddleLeftSocket", 1740, 395]
, ["BootsMiddleSocket", 1715, 395]
, ["RightFingerSocket", 1485, 305]
, ["LeftFingerSocket", 1690, 305]
, ["AmuletSocket", 1690, 245]
, ["BeltRightSocket", 1565, 420]
, ["BeltCenterSocket", 1585, 420]
, ["BeltLeftSocket", 1605, 420]
, ["Flask1", 1487, 515]
, ["Flask2", 1540, 515]
, ["Flask3", 1592, 515]
, ["Flask4", 1645, 515]
, ["Flask5", 1697, 515] ]
AltSocketList := [ ["6SocketWeaponTopRightSocket", 72, 80, 1355, 170]
, ["6SocketWeaponTopCenterSocket", 149, 80, 1405, 170]
, ["6SocketWeaponMiddleRightSocket", 71, 155, 1355, 225]
, ["6SocketWeaponMiddleCenterSocket", 149, 155, 1405, 225]
, ["6SocketWeaponBottomRightSocket", 72, 230, 1355, 280]
, ["6SocketWeaponBottomCenterSocket", 149, 230, 1405, 280]
, ["RightWeaponTopSocket", 111, 80, 1380, 170]
, ["RightWeaponMiddleSocket", 111, 155, 1380, 225]
, ["RightWeaponBottomSocket", 111, 230, 1380, 280]
, ["RightWeaponTopRightSocket", 84, 118, 1355, 200]
, ["RightWeaponTopCenterSocket", 137, 118, 1405, 200]
, ["RightWeaponBottomCenterSocket", 137, 193, 1405, 250]
, ["LeftHandTopSocket", 523, 80, 1795, 170]
, ["LeftHandMiddleSocket", 523, 155, 1795, 225]
, ["LeftHandBottomSocket", 523, 230, 1795, 280]
, ["LeftHandTopCenterSocket", 496, 118, 1765, 200]
, ["LeftHandTopLeftSocket", 550, 118, 1820, 200]
, ["LeftHandBottomLeftSocket", 550, 193, 1820, 250]
, ["LeftHandMiddleCenterSocket", 485, 155, 1770, 225]
, ["LeftHandMiddleLeftSocket", 561, 155, 1820, 225] ]
return
;======================================================
EquipRead:
for each, Socket in SocketList {
var1 := % socket.1
var2 = Hkey%Hk%%Swap%%var1%
IniRead, %var2%, UnrapeKitConfig.ini, %Section%, %var2%, %A_Space%
}
Return
;======================================================
EquipWriteDelete:
for each, Socket in SocketList {
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
}
}
Return
;======================================================
AltEquipRead:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
IniRead, Hkey%Hk%%Swap%Alt%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%, %A_Space%
}
Return
;======================================================
AltEquipWriteDelete:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%Alt%var1%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt%var1%
}
}
Return
;======================================================
AltEquipDelete:
for each, Socket in SocketList {
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%%var1%
}
Return
;======================================================
EquipCoord:
for each, SocketCoord in SocketCoordList {
var1 := % SocketCoord.1
var2 = Hkey%Hk%%Swap%%var1%
var3:= % %var2%
if (var3 = 1) {
Hkey%Hk%%Swap%_X := % socketCoord.2
Hkey%Hk%%Swap%_Y := % socketCoord.3
}
}
Return
;======================================================
AltEquipCoord:
for each, AltSocket in AltSocketList {
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3:= % %var2%
if (var3 = 1) {
Hkey%Hk%%Swap%Alt_X := % Altsocket.4
Hkey%Hk%%Swap%Alt_Y := % Altsocket.5
}
}
Return
;======================================================
RemoveToolTip:
ToolTip
Return
RemoveToolTip1:
ToolTip,,,, 1
Return
RemoveToolTip2:
ToolTip,,,, 2
return
RemoveToolTip3:
ToolTip,,,, 3
return
RemoveToolTip4:
ToolTip,,,, 4
return
RemoveToolTip5:
ToolTip,,,, 5
return
RemoveToolTip6:
ToolTip,,,, 6
return
RemoveToolTip7:
ToolTip,,,, 7
return
RemoveToolTip8:
ToolTip,,,, 8
return
RemoveToolTip9:
ToolTip,,,, 9
return
RemoveToolTip10:
ToolTip,,,, 10
return
RemoveToolTip11:
ToolTip,,,, 11
return
RemoveToolTip12:
ToolTip,,,, 12
return
RemoveToolTip13:
ToolTip,,,, 13
return
RemoveToolTip14:
ToolTip,,,, 14
return
RemoveToolTip15:
ToolTip,,,, 15
return
RemoveToolTip16:
ToolTip,,,, 16
return
RemoveToolTip17:
ToolTip,,,, 17
return
RemoveToolTip18:
ToolTip,,,, 18
return
RemoveToolTip19:
ToolTip,,,, 19
return
RemoveToolTip20:
ToolTip,,,, 20
return
;======================================================End of GeneralFunctions======================================================
;======================================================IniSettings======================================================
IniLoad:
IniRead, ScanCount, UnrapeKitConfig.ini, Configuration, ScanCount, %A_Space%
IniRead, HotkeyLimit, UnrapeKitConfig.ini, Configuration, HotkeyLimit, %A_Space%
IniRead, HotkeyConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, HotkeyConfig, %A_Space%
IniRead, ScanConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScanConfig, %A_Space%
IniRead, SpellScan, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, SpellScan, %A_Space%
IniRead, ScreenCapture, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScreenCapture, %A_Space%
IniRead, DelayConfig, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, DelayConfig, %A_Space%
IniRead, CaptureName, UnrapeKitConfig.ini, Scan, CaptureName, %A_Space%
Hotkey, %HotkeyConfig%, HotkeyConfig
Hotkey, %ScanConfig%, ScanConfig
Hotkey, %SpellScan%, SpellScan
Hotkey, %ScreenCapture%, ScreenCapture
Hotkey, %DelayConfig%, DelayConfig
return
;======================================================
SetupConfig:
gosub GuiSD
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
IniWrite, %HotkeyConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, HotkeyConfig
IniWrite, %ScanConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScanConfig
IniWrite, %SpellScan%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, SpellScan
IniWrite, %ScreenCapture%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, ScreenCapture
IniWrite, %DelayConfig%, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, DelayConfig
Hotkey, %HotkeyConfig%, HotkeyConfig
Hotkey, %ScanConfig%, ScanConfig
Hotkey, %SpellScan%, SpellScan
Hotkey, %ScreenCapture%, ScreenCapture
Hotkey, %DelayConfig%, DelayConfig
Reload
Return
;======================================================
HotkeySetupRead:
Loop, %HotKeyLimit% {
IniRead, Hkey%A_Index%Toggle, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Toggle, %A_Space%
IniRead, Hkey%A_Index%Type, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Type, %A_Space%
IniRead, Hkey%A_Index%Shortcut, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%A_Index%Shortcut, %A_Space%
}
return
;======================================================
LoadScanSettings:
IniRead, ScreenCapturePos, UnrapeKitConfig.ini, %Section%, ScreenCapturePos, %A_Space%
IniRead, SaveHotkey, UnrapeKitConfig.ini, %Section%, SaveHotkey, %A_Space%
IniRead, SaveAsHotkey, UnrapeKitConfig.ini, %Section%, SaveAsHotkey, %A_Space%
IniRead, CloseHotkey, UnrapeKitConfig.ini, %Section%, CloseHotkey, %A_Space%
IniRead, YesHotkey, UnrapeKitConfig.ini, %Section%, YesHotkey, %A_Space%
IniRead, AddressBarHotkey, UnrapeKitConfig.ini, %Section%, AddressBarHotkey, %A_Space%
IniRead, SaveAsWindowName, UnrapeKitConfig.ini, %Section%, SaveAsWindowName, %A_Space%
IniRead, ConfirmSaveAsWindowName, UnrapeKitConfig.ini, %Section%, ConfirmSaveAsWindowName, %A_Space%
IniRead, SnippingToolWindowName, UnrapeKitConfig.ini, %Section%, SnippingToolWindowName, %A_Space%
IniRead, SnippingToolPath, UnrapeKitConfig.ini, %Section%, SnippingToolPath, %A_Space%
return
;======================================================
ScanReadLoad:
Loop, %ScanCount% {
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%, %A_Space%
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%, %A_Space%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%, %A_Space%
NameN:= % Name%A_Index%
IconToggleN:= % IconToggle%A_Index%
LineN:= % Line%A_Index%
CaptureName%A_Index%:= % Name%A_Index% "" Line%A_Index%
IniRead, %NameN%X, UnrapeKitConfig.ini, %Section%, %NameN%X, %A_Space%
IniRead, %NameN%Y, UnrapeKitConfig.ini, %Section%, %NameN%Y, %A_Space%
}
return
;======================================================
WriteScanSettings:
IniWrite, %SaveAsHotkey%, UnrapeKitConfig.ini, %Section%, SaveAsHotkey
IniWrite, %CloseHotkey%, UnrapeKitConfig.ini, %Section%, CloseHotkey
IniWrite, %YesHotkey%, UnrapeKitConfig.ini, %Section%, YesHotkey
IniWrite, %AddressBarHotkey%, UnrapeKitConfig.ini, %Section%, AddressBarHotkey
IniWrite, %SaveAsWindowName%, UnrapeKitConfig.ini, %Section%, SaveAsWindowName
IniWrite, %ConfirmSaveAsWindowName%, UnrapeKitConfig.ini, %Section%, ConfirmSaveAsWindowName
IniWrite, %SnippingToolWindowName%, UnrapeKitConfig.ini, %Section%, SnippingToolWindowName
IniWrite, %SnippingToolPath%, UnrapeKitConfig.ini, %Section%, SnippingToolPath
return
;======================================================
DelayRead:
IniRead, Delay, UnrapeKitConfig.ini, Delay%LineSpacing2%, Delay, %A_Space%
IniRead, FrameTime, UnrapeKitConfig.ini, Delay%LineSpacing2%, FrameTime, %A_Space%
IniRead, KeyDelay1, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelay1, %A_Space%
IniRead, KeyDelayPress, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelayPress, %A_Space%
IniRead, MouseDelay, UnrapeKitConfig.ini, Delay%LineSpacing2%, MouseDelay, %A_Space%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
SetMouseDelay, %MouseDelay%
return
;======================================================
Type1Load:
Section = Type1Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V, %A_Space%
If (Hkey%Hk%T1V = 1) {
IniRead, Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount, %A_Space%
IniRead, Hkey%Hk%ScanDelay, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanDelay
Loop {
IniRead, Hkey%Hk%Spell%A_Index%, UnrapeKitConfig.ini, % Section, Hkey%Hk%Spell%A_Index%, %A_Space%
Spell:= Hkey%Hk%Spell%A_Index%
IniRead, %Spell%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell%X, %A_Space%
IniRead, %Spell%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell%Y, %A_Space%
IniRead, Hkey%Hk%TriggerToggle%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggerToggle%A_Index%, %A_Space%
Iniread, Hkey%Hk%Key%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%, %A_Space%
IniRead, Hkey%Hk%Key%A_Index%X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%X, %A_Space%
IniRead, Hkey%Hk%Key%A_Index%Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%Y, %A_Space%
IniRead, Hkey%Hk%Cooldown%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%A_Index%, %A_Space%
If (A_Index > Hkey%Hk%TriggeredCount)
Break
}
}
If (Hkey%Hk%T1V = 2) {
TrigN:= 1
Iniread, T1%Hk%, UnrapeKitConfig.ini, %Section%, T1%Hk%, %A_Space%
Iniread, Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount, %A_Space%
IniRead, ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%, %A_Space%
Loop, % (Hkey%Hk%TriggeredCount + 1) {
Iniread, HHkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%, %A_Space%
Iniread, Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%, %A_Space%
Iniread, HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%, %A_Space%
Iniread, Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%, %A_Space%
}
TrigN:= 1
}
If (Hkey%Hk%T1V = 3) {
TrigN:= 1
Iniread, TriggeredCount%Hk%, UnrapeKitConfig.ini, %Section%, TriggeredCount%Hk%, %A_Space%
IniRead, ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%, %A_Space%
Loop, % (TriggeredCount%Hk% + 1) {
Iniread, HHkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%, %A_Space%
Iniread, Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%, %A_Space%
Iniread, HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%, %A_Space%
Iniread, Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%, %A_Space%
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
Type2Load:
Section = Type2Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1, %A_Space%
IniRead, Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2, %A_Space%
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
IniRead, Hkey%Hk%MoveToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MoveToggle, %A_Space%
IniRead, Hkey%Hk%ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShiftToggle, %A_Space%
IniRead, Hkey%Hk%AltEquiptoggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%AltEquiptoggle, %A_Space%
Spell1:= Hkey%Hk%Spell1
Spell2:= Hkey%Hk%Spell2
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type3Load:
Section = Type3Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1, %A_Space%
IniRead, Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2, %A_Space%
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
IniRead, Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time, %A_Space%
IniRead, Hkey%Hk%Cast2Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Time, %A_Space%
IniRead, Hkey%Hk%Cast1ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1ShiftToggle, %A_Space%
IniRead, Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle, %A_Space%
IniRead, Hkey%Hk%Cast2Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Toggle, %A_Space%
IniRead, Hkey%Hk%Cast2ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2ShiftToggle, %A_Space%
Spell1:= Hkey%Hk%Spell1
Spell2:= Hkey%Hk%Spell2
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type4Load:
Section = Type4Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniRead, Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniRead, Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniRead, Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key, %A_Space%
IniRead, Hkey%Hk%KeyX, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX, %A_Space%
IniRead, Hkey%Hk%KeyY, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY, %A_Space%
Spell1:= Hkey%Hk%Spell1
IniRead, %Spell1%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%X, %A_Space%
IniRead, %Spell1%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell1%Y, %A_Space%
IniRead, %Spell2%X, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%X, %A_Space%
IniRead, %Spell2%Y, UnrapeKitConfig.ini, ScanCoordinates%LineSpacing2%, %Spell2%Y, %A_Space%
return
;======================================================
Type5Load:
Section = Type5Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab, %A_Space%
IniRead, Hkey%Hk%GemSwap1_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1_X, %A_Space%
IniRead, Hkey%Hk%GemSwap1_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Alt_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Alt_Y, %A_Space%
return
;======================================================
Type6Load:
Section = Type6Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab, %A_Space%
IniRead, Hkey%Hk%EquipSwap1_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap1_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Alt_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Alt_Y, %A_Space%
return
;======================================================
Type7Load:
Section = Type7Hotkey%Hk%--------------------------------------------------------------------------------------------------
IniRead, Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations, %A_Space%
IniRead, Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, SwapTabs, Hkey%Hk%GemSwapTab, %A_Space%
IniRead, Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, SwapTabs, Hkey%Hk%EquipSwapTab, %A_Space%
T7:= 1
Loop, % Hkey%Hk%Iterations {
IniRead, Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%DelayIteration%T7%, %A_Space%
IniRead, Hkey%Hk%Iteration%T7%Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%Toggle, %A_Space%
IniRead, Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%, %A_Space%
IniRead, Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SpellIteration%T7%, %A_Space%
IniRead, Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyIteration%T7%, %A_Space%
IniRead, Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SendIteration%T7%, %A_Space%
IniRead, Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseXPosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseYPosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GoMousePosIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GetMousePosToggleIteration%T7%, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_L, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_L, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_T, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_T, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_R, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_R, %A_Space%
IniRead, Hkey%Hk%ScanCoordinatesIteration%T7%_B, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_B, %A_Space%
IniRead, Hkey%Hk%ImageNameIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ImageNameIteration%T7%, %A_Space%
IniRead, Hkey%Hk%ShadeVariationIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShadeVariationIteration%T7%, %A_Space%
IniRead, Hkey%Hk%GemSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%GemSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%GemSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%EquipSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_X, %A_Space%
IniRead, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, %A_Space%
IniRead, Hkey%Hk%KeyX_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX_Iteration%T7%, %A_Space%
IniRead, Hkey%Hk%KeyY_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY_Iteration%T7%, %A_Space%
T7 += 1
}
T7:= 1
return
;======================================================
Type7Write:
IniWrite, % Hkey%Hk%Iterations, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iterations, %A_Space%
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab, %A_Space%
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab, %A_Space%
T7:= 1
Loop, % Hkey%Hk%Iterations {
IniWrite, % Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%DelayIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%Iteration%T7%Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%Toggle, %A_Space%
IniWrite, % Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SpellIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%SendIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseXPosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MouseYPosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GoMousePosIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GetMousePosToggleIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_L, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_L, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_T, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_T, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_R, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_R, %A_Space%
IniWrite, % Hkey%Hk%ScanCoordinatesIteration%T7%_B, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanCoordinatesIteration%T7%_B, %A_Space%
IniWrite, % Hkey%Hk%ImageNameIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ImageNameIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%ShadeVariationIteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShadeVariationIteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%GemSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap1Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%GemSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwap2AltIteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap1Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap1Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap1Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2Iteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2Iteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2Iteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2AltIteration%T7%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_X, %A_Space%
IniWrite, % Hkey%Hk%EquipSwap2AltIteration%T7%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwap2AltIteration%T7%_Y, %A_Space%
IniWrite, % Hkey%Hk%KeyX_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyX_Iteration%T7%, %A_Space%
IniWrite, % Hkey%Hk%KeyY_Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%KeyY_Iteration%T7%, %A_Space%
T7 += 1
}
T7:= 1
return
;======================================================
Type7Write2:
Loop, % Hkey%Hk%Iterations {
IniWrite, % Hkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Iteration%T7%
}
return
;======================================================End of IniSettings======================================================
;======================================================HotkeyConfig======================================================
HotkeyConfig:
MouseGetPos, Xpos, Ypos
GuiWidth:= 210
GuiHeight:= 100
gosub GuiBuild
Gui, Add, Text, x10 y10, Hotkeys wanted:
Gui, Add, Text, x50 y33, 200 Hotkeys Maximum
Gui, Add, Edit, x10 y30 w30 h20 vHotkeyLimit, %HotkeyLimit%
Gui, Add, Button, x10 y70 w90 h20 gHkeyEdit Default, Hotkeys
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Hotkey Count
Return
;======================================================
HkeyEdit:
gosub GuiSD
if (HotkeyLimit < 1 or HotkeyLimit > 200) {
msgbox Invalid entry: reloading script
SetTimer, RemoveToolTip2, -1000
Reload
}
gosub GuiSD
IniWrite, %HotkeyLimit%, UnrapeKitConfig.ini, Configuration, HotkeyLimit
H:= 1
W:= 1
HMax:= 1
Hk:= 1
MouseGetPos, Xpos, Ypos
SysGet, SGW, 71
Gui, -0x80000 AlwaysOnTop
Loop, %HotkeyLimit% {
GuiY:= 120 + 30 * H
ScreenHeight:= A_ScreenHeight - 45
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y0:= 14 + 30 * H
Y1:= 13 + 30 * H
Y2:= 10 + 30 * H
GuiWidth:= 610 * W
If (W = 1) {
GuiHeight:= 80 + 30 * H
ButtonHeight:= 50 + 30 * H
ButtonTxtHeight:= 53 + 30 * H
}
If (W > 1) {
GuiHeight:= 80 + 30 * HMax
ButtonHeight:= 50 + 30 * HMax
ButtonTxtHeight:= 53 + 30 * HMax
}
Button1X:= GuiWidth - 300
Button2X:= GuiWidth - 200
Button3X:= GuiWidth - 100
Text1X:= GuiWidth - 550
Radio0X:= GuiWidth - 590
loop, 7 {
Radio%A_Index%X:= GuiWidth - (560 - (40 * A_Index))
}
EditX:= GuiWidth - 240
EditButtonX:= GuiWidth -100
Radio0Txt:= GuiWidth - 600
loop, 7 {
Radio%A_Index%Txt:= GuiWidth - (570 - (40 * A_Index))
}
EditTxt:= GuiWidth - 220
EditButtonTxt:= GuiWidth -85
Gui, Add, Text, x%Radio0Txt% y20,Disable Index
loop, 7 {
RadioTxt:= Radio%A_Index%Txt
Gui, Add, Text, x%RadioTxt% y20,Type %A_Index%
}
Gui, Add, Text, x%EditTxt% y20, Hotkey Shortcut
Gui, Add, Text, x%EditButtonTxt% y20, Hotkey Edit
Gui, Add, Text, x%Text1X% y%Y1%, %Hk%
Gui, Add, checkbox, % "X" Radio0x " Y" Y0 " h13 w13 vHkey" Hk "Toggle Checked" Hkey%Hk%Toggle
loop, 7 {
RadioX := Radio%A_Index%X
if (Hkey%Hk%Type = A_Index) {
HkeyType := 1
} else {
HkeyType := 0
}
Gui, Add, Radio, % "x" RadioX " y" Y1 " h13 w13 vHkey" Hk "Type" A_Index " Checked" HkeyType, A_Index
}
Gui, Add, Edit, x%EditX% y%Y2% w120 h20 vHkey%Hk%Shortcut, % Hkey%Hk%Shortcut
Gui, Add, Button, x%EditButtonX% y%Y2% w90 h20 gEditHk, %Hk%
If (Hk = HotkeyLimit) {
gosub GuiBuild
Gui, Add, Button, x10 y%ButtonHeight% w90 H20 gHkAdd, Add
Gui, Add, Text, x110 y%ButtonTxtHeight%,Add
Gui, Add, Edit, x140 y%ButtonHeight% w20 h20 vHotkeyAdd
Gui, Add, Text, x170 y%ButtonTxtHeight%,Hotkey(s)
Gui, Add, Button, x%Button1X% y%ButtonHeight% w90 h20 gRecordHk Default, Record
Gui, Add, Button, x%Button2X% y%ButtonHeight% w90 h20 gSetHk, Configure
Gui, Add, Button, x%Button3X% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Hotkey Configuration
Break
}
H+= 1
Hk+= 1
}
Hk := 0
Return
;======================================================
RecordWriteHk:
loop, 7 {
if (Hkey%Hk%Type%A_Index% = 1) {
Hkey%Hk%Type := A_Index
IniWrite, % Hkey%Hk%Toggle, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Toggle
IniWrite, % Hkey%Hk%Type, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Type
IniWrite, % Hkey%Hk%Shortcut, UnrapeKitConfig.ini, Hotkeys%LineSpacing1%, Hkey%Hk%Shortcut
if (Hkey%Hk%Shortcut != "" AND Hkey%Hk%Toggle = 1) {
Hotkey, % Hkey%Hk%Shortcut, Hotkey%Hk%
}
}
}
return
;======================================================
RecordHk:
gosub GuiSD
Hk:= 1
RecordToggle:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
Hk:= 1
gosub HkeyEdit
Return
;======================================================
HkAdd:
gosub GuiSD
HotkeyLimit+= %HotkeyAdd%
Hk:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
gosub HkeyEdit
Return
SetHk:
gosub GuiSD
Hk:= 1
Loop, %HotkeyLimit% {
gosub RecordWriteHk
Hk+= 1
}
Hk:= 1
gosub HkTypeConfigLoop
Return
;======================================================
EditHk:
A_GuiControlHk:= A_GuiControl
Hk:= A_GuiControl
If (Hkey%Hk%Toggle = 0)
Hkey%Hk%Toggle = 1
gosub GuiSD
gosub HkTypeConfigRouting
gosub RecordWriteHk
Return
;======================================================
HkTypeConfigLoop:
Loop, HotkeyLimit {
If (Hkey%Hk%Toggle = 0) {
gosub HkTypeConfigRouting
break
}
}
Reload
Return
;======================================================
HkTypeConfigRouting:
loop, 7 {
If (Hkey%Hk%Type = A_Index) {
Gosub ConfigType%A_Index%
Break
}
}
Return
;======================================================End of HotkeyConfig======================================================
;======================================================HotkeyRouting======================================================
Hotkey1:
Hk:= 1
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey2:
Hk:= 2
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey3:
Hk:= 3
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey4:
Hk:= 4
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey5:
Hk:= 5
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey6:
Hk:= 6
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey7:
Hk:= 7
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey8:
Hk:= 8
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey9:
Hk:= 9
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey10:
Hk:= 10
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey11:
Hk:= 11
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey12:
Hk:= 12
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey13:
Hk:= 13
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey14:
Hk:= 14
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey15:
Hk:= 15
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey16:
Hk:= 16
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey17:
Hk:= 17
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey18:
Hk:= 18
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey19:
Hk:= 19
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey20:
Hk:= 20
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey21:
Hk:= 21
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey22:
Hk:= 22
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey23:
Hk:= 23
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey24:
Hk:= 24
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey25:
Hk:= 25
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey26:
Hk:= 26
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey27:
Hk:= 27
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey28:
Hk:= 28
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey29:
Hk:= 29
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey30:
Hk:= 30
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey31:
Hk:= 31
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey32:
Hk:= 32
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey33:
Hk:= 33
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey34:
Hk:= 34
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey35:
Hk:= 35
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey36:
Hk:= 36
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey37:
Hk:= 37
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey38:
Hk:= 38
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey39:
Hk:= 39
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey40:
Hk:= 40
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey41:
Hk:= 41
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey42:
Hk:= 42
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey43:
Hk:= 43
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey44:
Hk:= 44
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey45:
Hk:= 45
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey46:
Hk:= 46
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey47:
Hk:= 47
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey48:
Hk:= 48
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey49:
Hk:= 49
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey50:
Hk:= 50
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey51:
Hk:= 51
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey52:
Hk:= 52
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey53:
Hk:= 53
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey54:
Hk:= 54
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey55:
Hk:= 55
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey56:
Hk:= 56
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey57:
Hk:= 57
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey58:
Hk:= 58
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey59:
Hk:= 59
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey60:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey61:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey62:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey63:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey64:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey65:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey66:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey67:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey68:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey69:
Hk:= 60
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey70:
Hk:= 70
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey71:
Hk:= 71
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey72:
Hk:= 72
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey73:
Hk:= 73
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey74:
Hk:= 74
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey75:
Hk:= 75
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey76:
Hk:= 76
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey77:
Hk:= 77
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey78:
Hk:= 78
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey79:
Hk:= 79
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey80:
Hk:= 80
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey81:
Hk:= 81
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey82:
Hk:= 82
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey83:
Hk:= 83
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey84:
Hk:= 84
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey85:
Hk:= 85
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey86:
Hk:= 86
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey87:
Hk:= 87
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey88:
Hk:= 88
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey89:
Hk:= 89
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey90:
Hk:= 90
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey91:
Hk:= 91
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey92:
Hk:= 92
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey93:
Hk:= 93
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey94:
Hk:= 94
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey95:
Hk:= 95
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey96:
Hk:= 96
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey97:
Hk:= 97
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey98:
Hk:= 98
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey99:
Hk:= 99
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey100:
Hk:= 100
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey101:
Hk:= 101
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey102:
Hk:= 102
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey103:
Hk:= 103
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey104:
Hk:= 104
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey105:
Hk:= 105
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey106:
Hk:= 106
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey107:
Hk:= 107
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey108:
Hk:= 108
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey109:
Hk:= 109
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey110:
Hk:= 110
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey111:
Hk:= 111
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey112:
Hk:= 112
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey113:
Hk:= 113
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey114:
Hk:= 114
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey115:
Hk:= 115
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey116:
Hk:= 116
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey117:
Hk:= 117
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey118:
Hk:= 118
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey119:
Hk:= 119
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey120:
Hk:= 120
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey121:
Hk:= 121
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey122:
Hk:= 122
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey123:
Hk:= 123
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey124:
Hk:= 124
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey125:
Hk:= 125
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey126:
Hk:= 126
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey127:
Hk:= 127
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey128:
Hk:= 128
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey129:
Hk:= 129
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey130:
Hk:= 130
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey131:
Hk:= 131
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey132:
Hk:= 132
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey133:
Hk:= 133
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey134:
Hk:= 134
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey135:
Hk:= 135
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey136:
Hk:= 136
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey137:
Hk:= 137
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey138:
Hk:= 138
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey139:
Hk:= 139
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey140:
Hk:= 140
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey141:
Hk:= 141
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey142:
Hk:= 142
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey143:
Hk:= 143
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey144:
Hk:= 144
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey145:
Hk:= 145
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey146:
Hk:= 146
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey147:
Hk:= 147
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey148:
Hk:= 148
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey149:
Hk:= 149
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey150:
Hk:= 150
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey151:
Hk:= 151
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey152:
Hk:= 152
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey153:
Hk:= 153
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey154:
Hk:= 154
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey155:
Hk:= 155
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey156:
Hk:= 156
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey157:
Hk:= 157
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey158:
Hk:= 158
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey159:
Hk:= 159
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey160:
Hk:= 160
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey170:
Hk:= 170
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey171:
Hk:= 171
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey172:
Hk:= 172
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey173:
Hk:= 173
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey174:
Hk:= 174
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey175:
Hk:= 175
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey176:
Hk:= 176
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey177:
Hk:= 177
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey178:
Hk:= 178
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey179:
Hk:= 179
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey180:
Hk:= 180
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey181:
Hk:= 181
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey182:
Hk:= 182
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey183:
Hk:= 183
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey184:
Hk:= 184
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey185:
Hk:= 185
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey186:
Hk:= 186
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey187:
Hk:= 187
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey188:
Hk:= 188
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey189:
Hk:= 189
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey190:
Hk:= 190
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey191:
Hk:= 191
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey192:
Hk:= 192
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey193:
Hk:= 193
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey194:
Hk:= 194
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey195:
Hk:= 195
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey196:
Hk:= 196
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey197:
Hk:= 197
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey198:
Hk:= 198
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey199:
Hk:= 199
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
Hotkey200:
Hk:= 200
; Msgbox, % "Hotkey " Hk " is " Hkey%Hk%Shortcut
Gosub HotkeyRouting
Return
;======================================================End of HotkeyRouting======================================================
;======================================================DelayConfig======================================================
DelayConfig:
MouseGetPos, Xpos, Ypos
GuiWidth:= 220
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y13, Server Latency (ms)
Gui, Add, Edit, x140 y10 w30 h20 vDelay, %Delay%
Gui, Add, Text, x10 y43, Maximum Frame Time (Ms)
Gui, Add, Edit, x140 y40 w30 h20 vFrameTime, %FrameTime%
Gui, Add, Text, x10 y73, Keyboard Delays (Ms)
Gui, Add, Edit, x140 y70 w30 h20 vKeyDelay1, %KeyDelay1%
Gui, Add, Edit, x180 y70 w30 h20 vKeyDelayPress, %KeyDelayPress%
Gui, Add, Text, x10 y103, Mouse Delay (Ms)
Gui, Add, Edit, x140 y100 w30 h20 vMouseDelay, %MouseDelay%
Gui, Add, Button, x20 y130 w90 h20 gDelayConfigRecord Default, Record
Gui, Add, Button, x120 y130 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Delay configuration
Return
;======================================================
DelayWrite:
gosub GuiSD
IniWrite, %Delay%, UnrapeKitConfig.ini, Delay%LineSpacing2%, Delay
IniWrite, %FrameTime%, UnrapeKitConfig.ini, Delay%LineSpacing2%, FrameTime
IniWrite, %KeyDelay1%, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelay1
IniWrite, %KeyDelayPress%, UnrapeKitConfig.ini, Delay%LineSpacing2%, KeyDelayPress
IniWrite, %MouseDelay%, UnrapeKitConfig.ini, Delay%LineSpacing2%, MouseDelay
return
;======================================================
DelayConfigRecord:
gosub DelayWrite
Reload
Return
;======================================================
Delay:
MouseGetPos, Xpos, Ypos
GuiWidth:= 220
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y13, Server Latency (ms)
Gui, Add, Edit, x140 y10 w30 h20 vDelay, %Delay%
Gui, Add, Text, x10 y43, Maximum Frame Time (Ms)
Gui, Add, Edit, x140 y40 w30 h20 vFrameTime, %FrameTime%
Gui, Add, Text, x10 y73, Keyboard Delays (Ms)
Gui, Add, Edit, x140 y70 w30 h20 vKeyDelay1, %KeyDelay1%
Gui, Add, Edit, x180 y70 w30 h20 vKeyDelayPress, %KeyDelayPress%
Gui, Add, Text, x10 y103, Mouse Delay (Ms)
Gui, Add, Edit, x140 y100 w30 h20 vMouseDelay, %MouseDelay%
Gui, Add, Button, x20 y130 w90 h20 gDelayRecord Default, Record
Gui, Add, Button, x120 y130 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Server Latency
Return
;======================================================
DelayRecord:
gosub DelayWrite
Return
;======================================================End of DelayConfig======================================================
;======================================================ScreenCapture======================================================
ScreenCapture:
C1_X:= 1443
C2_X:= 1508
C3_X:= 1573
L1_Y:= 900
L2_Y:= 835
L3_Y:= 770
L4_Y:= 705
L5_Y:= 640
L6_Y:= 575
L7_Y:= 510
Section = ScreenCapture--------------------------------------------------------------------------------------------------
GuiWidth:= 310
GuiHeight:= 150
gosub LoadScanSettings
MouseGetPos, Xpos, Ypos
gosub GuiBuild
Gui, Add, Text, x10 y10, Controls for capture and UI coordinates.
Gui, Add, Text, x10 y30, Spell menu suffix: line number bottom to top.
Gui, Add, Text, x10 y50, keyboard shortcut suffix: "_MButton"', "_R"', etc
Gui, Add, Text, x10 y70, Buff icons: manual Printscreen with suffix "Timer1" to "Timer8"
Gui, Add, Checkbox, x10 y90 VScreenCapturePos Checked%ScreenCapturePos%, Checked: spell menu, unchecked: keyboard shortcuts.
Gui, Add, Button, x10 y120 w90 gCaptureControls, PrtSc controls
Gui, Add, Button, x110 y120 w90 gCancel, Cancel
Gui, Add, Button, x210 y120 w90 gScreenCapture1 Default, Continue
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, Capture Gui positioning
Return
;======================================================
CaptureControls:
gosub GuiSD
IniWrite, %ScreenCapturePos%, UnrapeKitConfig.ini, %Section%, ScreenCapturePos
GuiWidth:= 300
GuiHeight:= 380
gosub GuiBuild
Gui, Add, Text, x10 y10 w280, Enter the Windows hotkeys for your specific language here
Gui, Add, Text, x10 y25 w280, Hotkey syntax: ^ (Ctrl), ! (Alt), + (Shift), # (Win).
Gui, Add, Text, x10 y40 w280, Examples: ^!c for Ctrl+Alt+C
Gui, Add, Edit, x10 y70 w100 h20 vSaveHotkey, % SaveHotkey
Gui, Add, Text, % "x" 120 " y" 73, SaveHotkey
Gui, Add, Edit, x10 y100 w100 h20 vSaveAsHotkey, % SaveAsHotkey
Gui, Add, Text, % "x" 120 " y" 103, SaveAsHotkey
Gui, Add, Edit, x10 y130 w100 h20 vCloseHotkey, % CloseHotkey
Gui, Add, Text, % "x" 120 " y" 133, CloseHotkey
Gui, Add, Edit, x10 y160 w100 h20 vYesHotkey, % YesHotkey
Gui, Add, Text, % "x" 120 " y" 163, YesHotkey
Gui, Add, Edit, x10 y190 w100 h20 vAddressBarHotkey, % AddressBarHotkey
Gui, Add, Text, % "x" 120 " y" 193, AddressBarHotkey
Gui, Add, Edit, x10 y220 w100 h20 vSaveAsWindowName, % SaveAsWindowName
Gui, Add, Text, % "x" 120 " y" 223, SaveAsWindowName
Gui, Add, Edit, x10 y250 w100 h20 vConfirmSaveAsWindowName, % ConfirmSaveAsWindowName
Gui, Add, Text, % "x" 120 " y" 253, ConfirmSaveAsWindowName
Gui, Add, Edit, x10 y280 w100 h20 vSnippingToolWindowName, % SnippingToolWindowName
Gui, Add, Text, % "x" 120 " y" 283, SnippingToolWindowName
Gui, Add, Edit, x10 y310 w100 h20 vSnippingToolPath, % SnippingToolPath
Gui, Add, Text, % "x" 120 " y" 313, SnippingToolPath
; Run on PowerShell as admin: "Get-AppXPackage *Microsoft.ScreenSketch* -AllUsers" , then paste the directory on a browser to navigate to the correct directory (these might not work well though).
Gui, Add, Button, x10 y350 w135 gCaptureSave Default, Save and Continue
Gui, Add, Button, x155 y350 w135 gCancel, Cancel
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, Language Settings and top-left snip coordinates
Return
;======================================================
CaptureSave:
gosub GuiSD
gosub WriteScanSettings
gosub ScreenCapture
Return
;======================================================
ScreenCapture1:
if (ScreenCapturePos = 1) {
IniRead, TempName, UnrapeKitConfig.ini, %Section%, TempName
IniRead, TempLine, UnrapeKitConfig.ini, %Section%, TempLine
IniRead, TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
N := ScanCount + 1
GuiWidth:= 210
GuiHeight:= 130
gosub GuiBuild
Gui, Add, Text, x10 y10 w190, lines: 1 to 7`, columns: 1 to 3
Gui, Add, Text, x10 y40, name line Column
Gui, Add, Edit, x10 y60 w120 h20 vTempName, %TempName%
Gui, Add, Edit, x+10 w20 h20 vTempLine, %TempLine%
Gui, Add, Edit, x+10 w20 h20 vTempColumn, %TempColumn%
Gui, Add, Button, x10 y100 w90 h20 gCaptureSave1 Default, Ok
Gui, Add, Button, x110 y100 w90 h20 gCancel, Reload
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, name`, menu line and column coordinates
}
if (ScreenCapturePos = 0) {
IniRead, TempName, UnrapeKitConfig.ini, %Section%, TempName
IniRead, TempLine, UnrapeKitConfig.ini, %Section%, TempLine
IniRead, TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
N := ScanCount + 1
GuiWidth:= 210
GuiHeight:= 160
gosub GuiBuild
Gui, Add, Text, x10 y10 w190, column is the shortcut: : "_LButton"'
Gui, Add, Text, x10 y50, name Keyboard shortcut
Gui, Add, Edit, x10 y7 w120 h20 vTempName, %TempName%
Gui, Add, Edit, x+10 w70 h20 vTempLine, %TempLine%
Gui, Add, Button, x10 y100 w90 h20 gCaptureSave1 Default, Ok
Gui, Add, Button, x110 y100 w90 h20 gCancel, Reload
Gui, Show, % "w" GuiWidth " h" GuiHeight " X" Move_X " Y" Move_Y, name', keyboard shortcut
}
return
;======================================================
CaptureSave1:
gosub GuiSD
IniWrite, % TempName, UnrapeKitConfig.ini, %Section%, TempName
IniWrite, % TempLine, UnrapeKitConfig.ini, %Section%, TempLine
CaptureName := TempName TempLine
if (ScreenCapturePos = 1) {
IniWrite, % TempColumn, UnrapeKitConfig.ini, %Section%, TempColumn
gosub SpellMenuUp
} else {
Gosub SnippingTool
}
return
;======================================================
SpellMenuUp:
loop {
sleep, 50
ImageSearch,,, C1_X - 10, L1_Y - 10, C3_X + 10, L1_Y + 10, *10 CloseMenu1.png
; pixelsearch,,, 1439, 495, 1439, 495, 0x6490AB, 0, fast
if (ErrorLevel = 0) {
break
} else {
click,, 1440, 1037
sleep, 300
}
}
Gosub SnippingTool
return
;======================================================
SnippingTool:
if (ScreenCapturePos = 1) {
loop, 3 {
if (TempColumn = A_Index) {
CaptureX:= % C%A_Index%_X
break
}
}
loop, 7 {
if (TempLine = A_Index) {
CaptureY:= % L%A_Index%_Y
break
}
}
} else {
if (TempColumn = "Q") {
CaptureX:= 1438
CaptureY:= 1047
}
if (TempColumn = "W") {
CaptureX:= 1494
CaptureY:= 1047
}
if (TempColumn = "E") {
CaptureX:= 1550
CaptureY:= 1047
}
if (TempColumn = "R") {
CaptureX:= 1606
CaptureY:= 1047
}
if (TempColumn = "T") {
CaptureX:= 1662
CaptureY:= 1047
}
if (TempColumn = "LButton") {
CaptureX:= 1549
CaptureY:= 978
}
if (TempColumn = "MButton") {
CaptureX:= 1605
CaptureY:= 978
}
if (TempColumn = "RButton") {
CaptureX:= 1660
CaptureY:= 978
}
}
CenterDistance:= 13
CaptureX1:= CaptureX - CenterDistance
CaptureX2:= CaptureX + CenterDistance
CaptureY1:= CaptureY - CenterDistance
CaptureY2:= CaptureY + CenterDistance
SendInput {PrintScreen}
sleep, 500
Send, #+s
sleep, 400
BlockInput, MouseMove
MouseClickDrag, L, CaptureX1, CaptureY1, CaptureX2, CaptureY2, 2
sleep, 100
BlockInput, MouseMoveOff
sleep, 100
; run C:\Program Files\WindowsApps\Microsoft.ScreenSketch_11.2407.3.0_x64__8wekyb3d8bbwe\SnippingTool\SnippingTool.exe
sleep, 100
Mousemove, 1750, 800, 2
sleep, 500
MouseClick, L
sleep, 1000
WinActivate, %SnippingToolWindowName%
WinMaximize, %SnippingToolWindowName%
; WinActivate, Snipping Tool
; WinMaximize, Snipping Tool
sleep, 300
MouseClick, L, 150, 20
sleep, 300
tooltip, Send, %SaveAsHotkey%
Send, %SaveAsHotkey%
sleep, 300
tooltip, WinWait, %SaveAsWindowName%
WinWait, %SaveAsWindowName%
sleep, 300
tooltip, SendInput %CaptureName%.png
SendInput %CaptureName%.png
sleep, 300
tooltip, Send, %AddressBarHotkey%
Send, %AddressBarHotkey%
sleep, 300
tooltip, SendInput %A_ScriptDir%
SendInput %A_ScriptDir%
sleep, 300
tooltip, SendInput {Enter}
SendInput {Enter}
sleep, 300
Send, %SaveHotkey%
; Send, !s
sleep, 300
IfWinExist, %ConfirmSaveAsWindowName%
{
Send, %YesHotkey%
ImageRepeat := 1
} else {
ImageRepeat := 0
}
sleep, 300
; Send, !F4
; MouseClick, L, 1910, 10
; WinClose, Snipping Tool
WinClose, %SnippingToolWindowName%
if (ScreenCapturePos = 1) {
gosub Cooldown1
} else {
gosub Icon1
}
return
;======================================================
Icon1:
CaptureX1 -= 5
CaptureY1 -= 5
CaptureX2 += 5
CaptureY2 += 5
SetMouseDelay, %MouseDelay%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
tooltip, gosub Icon2
SetTimer, RemoveToolTip, -500
gosub Icon2
return
;======================================================
Icon2:
ImageSearch, %CaptureName%X, %CaptureName%Y, %CaptureX1%, %CaptureY1%, %CaptureX2%, %CaptureY2%, *10 %CaptureName%.png
if (ErrorLevel = 2) {
ToolTip, Could Not perform scan
}
else if (ErrorLevel = 1) {
ToolTip, Could Not Find Scan %CaptureName%.png
} else {
ToolTip, %CaptureName%.png found
}
SetTimer, RemoveToolTip, -1000
Section = BuffIconCoordinates--------------------------------------------------------------------------------------------------
IniWrite, % CaptureX1, UnrapeKitConfig.ini, %Section%, %CaptureName%X
IniWrite, % CaptureY1, UnrapeKitConfig.ini, %Section%, %CaptureName%Y
return
;======================================================
Cooldown1:
if (CaptureX1 >= 1410 and CaptureX2 <= 1605 and CaptureY1 >= 410 and CaptureY2 <= 925) {
CaptureX1 -= 5
CaptureY1 -= 5
CaptureX2 += 5
CaptureY2 += 5
SetMouseDelay, %MouseDelay%
SetKeyDelay, %KeyDelay1%, %KeyDelayPress%
tooltip, gosub Cooldown2
SetTimer, RemoveToolTip, -500
gosub Cooldown2
} Else {
tooltip, Capture coordinates out of bounds
SetTimer, RemoveToolTip, -1000
reload
}
return
;======================================================
Cooldown2:
if (ImageRepeat = 1) {
Loop, 8 { ; replaces a hotkey capture
if (CaptureName = TempName%A_Index%) {
N := A_Index
break
}
}
} else {
ScanCount += 1
N := ScanCount
}
Name%N%:= TempName
Line%N%:= TempLine
IconToggle%N%:= 1
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
gosub Cooldown3
return
;======================================================
Cooldown3:
Mousemove, 1600, 1000, 2
Sleep, 100
MouseClick
Sleep, 1000
ImageSearch, %TempName%X, %TempName%Y, %CaptureX1%, %CaptureY1%, %CaptureX2%, %CaptureY2%, *10 %CaptureName%.png
if (ErrorLevel = 2) {
ToolTip, Could Not perform scan
}
else if (ErrorLevel = 1) {
ToolTip, Could Not Find Scan %CaptureName%.png
} else {
ToolTip, %CaptureName%.png found
}
SetTimer, RemoveToolTip, -1000
Section = ScanCoordinates--------------------------------------------------------------------------------------------------
IniWrite, % CaptureX1, UnrapeKitConfig.ini, %Section%, %TempName%X
IniWrite, % CaptureY1, UnrapeKitConfig.ini, %Section%, %TempName%Y
IniWrite, % Name%N%, UnrapeKitConfig.ini, %Section%, Name%N%
IniWrite, % Line%N%, UnrapeKitConfig.ini, %Section%, Line%N%
IniWrite, % IconToggle%N%, UnrapeKitConfig.ini, %Section%, IconToggle%N%
return
;======================================================End of ScreenCapture======================================================
;======================================================ScanConfig======================================================
ScanConfig:
Section = ScanCoordinates%LineSpacing2%
IniRead, ScanCount, UnrapeKitConfig.ini, Configuration, ScanCount
MouseGetPos, Xpos, Ypos
GuiWidth:= 210
GuiHeight:= 100
gosub GuiBuild
Gui, Add, Text, x10 y5 w200 h26, Icons Count:
Gui, Add, Text, x10 y33 w120 h26, Scans:
Gui, Add, Edit, x145 y30 w30 h21 vScanCount, %ScanCount%
Gui, Add, Button, x10 y70 w90 h20 gScanDefinitions Default, Definitions
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Scan Count
Return
;======================================================
ScanDefinitions:
gosub GuiSD
IniWrite, %ScanCount%, UnrapeKitConfig.ini, Configuration, ScanCount
Loop, %ScanCount% {
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
NameN:= % Name%A_Index%
LineN:= % Line%A_Index%
}
H:= 1
W:= 1
HMax:= 1
SysGet, SGW, 71
MouseGetPos, Xpos, Ypos
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, X5 Y10, Toggle SpellName Line# (Bottom to Top)
Loop, %ScanCount% {
GuiY:= 50 + 30 * H
ScreenHeight:= A_ScreenHeight - 95
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y1:= 18 + 30 * H
Y2:= 15 + 30 * H
GuiWidth:= 240 * W
If (W = 1) {
GuiHeight:= 105 + 30 * H
AddHeight:= 48 + 30 * H
AddButtonHeight:= 45 + 30 * H
ButtonHeight:= 75 + 30 * H
}
If (W > 1) {
GuiHeight:= 105 + 30 * HMax
AddHeight:= 48 + 30 * HMax
AddButtonHeight:= 45 + 30 * HMax
ButtonHeight:= 75 + 30 * HMax
}
Button1Width:= GuiWidth - 200
Button2Width:= GuiWidth - 100
TextWidth:= GuiWidth - 215
CheckboxWidth:= GuiWidth - 230
NameWidth:= GuiWidth - 200
LineWidth:= GuiWidth - 60
Gui, Add, Text, x%TextWidth% Y%Y1%, %A_Index%
Gui, Add, Checkbox, % " x" CheckboxWidth " y" Y1 " h13 w13 vIconToggle" A_Index " Checked" IconToggle%A_Index%
Gui, Add, Edit, x%NameWidth% y%Y2% w130 h20 vName%A_Index%, % Name%A_Index%
Gui, Add, Edit, x%LineWidth% y%Y2% w50 h20 vLine%A_Index%, % Line%A_Index%
If (A_Index = ScanCount) {
X_Offset:= GuiWidth/2
Y_Offset:= GuiHeight/2
X_Limit:= A_ScreenWidth - X_Offset
Y_Limit:= A_ScreenHeight - Y_Offset
Mouse_X:= Xpos - X_Offset
Mouse_Y:= Ypos - Y_Offset
If Xpos between 0 and %X_Offset%
Move_X:= 0
If Xpos between %X_Offset% and %X_Limit%
Move_X:= Mouse_X
If Xpos between %X_Limit% and %A_ScreenWidth%
Move_X:= A_ScreenWidth - GuiWidth
If Ypos between 0 and %Y_Offset%
Move_Y:= 0
If Ypos between %Y_Offset% and %Y_Limit%
Move_Y:= Mouse_Y
If Ypos between %Y_Limit% and %A_ScreenHeight%
Move_Y:= A_ScreenHeight - GuiHeight - 30
Gui, Add, Button, x10 y%AddButtonHeight% w90 h20 gAddScan, Add
Gui, Add, Text, x110 y%AddHeight%, Add
Gui, Add, Edit, x140 y%AddButtonHeight% w30 h20 vXDefinitions
Gui, Add, Text, x180 y%AddHeight%, Definition(s)
Gui, Add, Button, x%Button1Width% y%ButtonHeight% w90 h20 gScanWrite Default, Record
Gui, Add, Button, x%Button2Width% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Scan Configuration
Break
}
H+= 1
}
Return
;======================================================
AddScan:
gosub, GuiSD
N:= 1
Loop, %ScanCount% {
IniWrite, % IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniWrite, % Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniWrite, % Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
N+=1
}
ScanCount+= %XDefinitions%
Gosub ScanDefinitions
Return
;======================================================
ScanWrite:
gosub, GuiSD
Loop, %ScanCount% {
IniWrite, % IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
IniWrite, % Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniWrite, % Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
}
Gosub SpellScan
Return
;======================================================End of ScanConfig======================================================
;======================================================SpellScan======================================================
SpellScan:
Section = ScanCoordinates--------------------------------------------------------------------------------------------------
ScanToolTip:= ""
ScanMessage:= ""
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton
If LButtonState = D
MouseClick, , , , , , U
MouseMove, 1660, 1025 ; t
MouseClick, , 1660, 1025 ; t
ToolTipIndex:= 1
Loop, %ScanCount% {
IniRead, IconToggle%A_Index%, UnrapeKitConfig.ini, %Section%, IconToggle%A_Index%
If (IconToggle%A_Index% = 1) {
ToolTipIndex += 1
IniRead, Name%A_Index%, UnrapeKitConfig.ini, %Section%, Name%A_Index%
IniRead, Line%A_Index%, UnrapeKitConfig.ini, %Section%, Line%A_Index%
NameN:= % Name%A_Index%
LineN:= % Line%A_Index%
CaptureName%A_Index%:= % Name%A_Index% "" Line%A_Index%
sleep, %Delay%
;sleep, 50
ImageSearch, %NameN%X, %NameN%Y, 1410, 410, 1605, 925, *10 %NameN%%LineN%.png
If(ErrorLevel = 0) {
ScanMessage:= % CaptureName%A_Index% ":= " %NameN%X "x, " %NameN%Y "y `n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -9500
IniWrite, % %NameN%X, UnrapeKitConfig.ini, %Section%, %NameN%X
IniWrite, % %NameN%Y, UnrapeKitConfig.ini, %Section%, %NameN%Y
}
If(ErrorLevel = 1) {
ScanMessage:= % "----------------------`n" CaptureName%A_Index% " not found `n----------------------`n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -5000
}
If(ErrorLevel = 2) {
ScanMessage:= % CaptureName%A_Index% ": Error `n"
ScanToolTip.= ScanMessage
Tooltip, % ScanToolTip, 1700, 1050, 5
SetTimer, RemoveToolTip5, -5000
}
}
}
Send, {Esc}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
MouseMove, Xpos, Ypos
SetTimer, RemoveTooltip, -1000
BlockInput, MouseMoveOff
Return
;======================================================End of SpellScan======================================================
;======================================================Type1======================================================
Type1:
If (Hkey%Hk%T1V = 1) {
Gosub V1Loop
return
}
If (Hkey%Hk%T1V = 2) or (Hkey%Hk%T1V = 3){
Loop {
If (HKey%Hk%Key%A_Index% = "LButton") {
HKey%Hk%Tx%A_Index%:= 1549
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "MButton") {
HKey%Hk%Tx%A_Index%:= 1604
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "RButton") {
HKey%Hk%Tx%A_Index%:= 1660
HKey%Hk%Ty%A_Index%:= 952
}
If (HKey%Hk%Key%A_Index% = "Q") {
HKey%Hk%Tx%A_Index%:= 1438
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "W") {
HKey%Hk%Tx%A_Index%:= 1493
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "E") {
HKey%Hk%Tx%A_Index%:= 1549
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "R") {
HKey%Hk%Tx%A_Index%:= 1605
HKey%Hk%Ty%A_Index%:= 1021
}
If (HKey%Hk%Key%A_Index% = "T") {
HKey%Hk%Tx%A_Index%:= 1661
HKey%Hk%Ty%A_Index%:= 1021
}
PixelGetColor, HKey%Hk%color%A_Index%, HKey%Hk%Tx%A_Index%, HKey%Hk%Ty%A_Index%
if (A_Index = (HKey%Hk%TriggeredCount + 1))
break
}
If (Hkey%Hk%T1V = 2) {
HKey%Hk%TrigN:= 1
Gosub V2Loop
return
}
If (Hkey%Hk%T1V = 3){
HKey%Hk%TrigN:= 1
Gosub V3Loop
return
}
return
}
Return
;======================================================
V1Loop:
HkV1:= Hk
HKey%HkV1%TrigN:= 1
TrigNV1:= 1
HKey%HkV1%Trig:= 0
TrigV1:= 0
HKey%HkV1%TickToggle%TrigN%:= false
HKey%HkV1%KeyToggle:= !HKey%HkV1%KeyToggle
While (HKey%HkV1%KeyToggle) {
if (Hkey%HkV1%TriggerToggle%TrigNV1%) and (HKey%HkV1%KeyToggle) {
gosub BuffScan
if (HKey%HkV1%Cooldown%TrigNV1% < A_TickCount - HKey%HkV1%Tick%TrigNV1%) and (HKey%HkV1%KeyToggle) {
Gosub, Shortcut1
HKey%HkV1%Tick%TrigNV1% := A_TickCount
}
}
if (HKey%HkV1%TrigNV1 > HKey%HkV1%TriggeredCount) and (HKey%HkV1%KeyToggle)
HKey%HkV1%TrigNV1:= 0
HKey%HkV1%TrigNV1+= 1
Sleep, % HKey%HkV1%ScanDelay
}
if !(HKey%HkV1%KeyToggle) {
ToolTip, Toggled off, HKey%HkV1%Timerx - 20, HKey%HkV1%TimerY + 40, 2
SetTimer, RemoveTooltip2, -3000
}
HKey%HkV1%TrigNV1:= 1
Return
;======================================================
BuffScan:
loop, 8 {
ImageSearch, HKey%HkV1%TimerX, HKey%HkV1%TimerY, 0, 0, 1000, 90, % "*10 " HKey%HkV1%Spell%TrigNV1% "Timer" A_Index ".png"
If (ErrorLevel = 0) {
ToolTip, % "Timer" A_Index, HKey%HkV1%Timerx - 20, HKey%HkV1%TimerY + 40, 2
SetTimer, RemoveTooltip2, -100
HKey%HkV1%Tick%TrigNV1%:= A_TickCount
TrigV1:= A_Index
break
} else {
; ToolTip, not found, Timerx - 20, TimerY + 60, 3
; SetTimer, RemoveTooltip3, % - 50
if (A_Index = 8) {
break
}
}
}
SetTimer, RemoveTooltip, 2
Return
;======================================================
Shortcut1:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
BlockInput, MouseMove
send, {LCtrl Down}
loop {
sleep, %Delay%
Send % "{" HKey%HkV1%Key%TrigNV1% "}"
ImageSearch, HKey%HkV1%TimerX, HKey%HkV1%TimerY, 0, 0, 1000, 90, % "*10 " HKey%HkV1%Spell%TrigNV1% "Timer" TrigV1 ".png"
If (ErrorLevel = 0)
break
if (A_Index = 8) {
break
}
}
send, {LCtrl Up}
BlockInput, MouseMoveoff
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , D
MouseMove, Xpos, Ypos
BlockInput, MouseMoveOff
Return
;======================================================
V2Loop:
HkV2:= Hk
HKey%HkV2%TrigN:= 1
TrigNV2:= 1
HKey%HkV2%KeyToggle:= !HKey%HkV2%KeyToggle
While HKey%HkV2%KeyToggle {
sleep, %Delay%
;sleep, 50
PixelSearch, , , HKey%HkV2%Tx%TrigNV2%, HKey%HkV2%Ty%TrigNV2%, HKey%HkV2%Tx%TrigNV2%, HKey%HkV2%Ty%TrigNV2%, HKey%HkV2%Color%TrigNV2%, 0
If (ErrorLevel = 0) {
gosub SendShortcut2
}
}
ToolTip, Toggled off, HKey%HkV2%Tx%TrigNV2% - 20, HKey%HkV2%Tx%TrigNV2% + 40, 3
SetTimer, RemoveTooltip3, -3000
Return
;======================================================
SendShortcut2:
Cooldown:= % Hkey%HkV2%Cooldown%TrigNV2%
Tooltip, % "Ctrl-" HKey%HkV2%Key%TrigNV2% " Toggle: " HKey%HkV2%CtrlKeyToggle%TrigNV2% "`nCooldown = " Hkey%HkV2%Cooldown%TrigNV2% , 1880, 950
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
BlockInput, on
if ((HKey%HkV2%CtrlKeyToggle%TrigNV2%) = 1) {
send, {LCtrl Down}
sleep, %Delay%
;sleep, 50
}
Send % "{" HKey%HkV2%Key%TrigNV2% "}"
if ((HKey%HkV2%CtrlKeyToggle%TrigNV2%) = 1) {
send, {LCtrl up}
}
BlockInput, off
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , D
sleep % Hkey%HkV2%Cooldown%TrigNV2%
HKey%HkV2%TrigNV2++
if (HKey%HkV2%TrigNV2 > ((HKey%HkV2%TriggeredCount) + 1)) {
HKey%HkV2%TrigNV2:= 1
}
Return
;======================================================
;======================================================
V3Loop:
TrigN:= 1
HKeyHkT1Spell1:= HKey%HkT1%Spell1
HKeyHkT1KeyTrigN:= % HKey%HkT1%Key%TrigN%
HKey%HkT1%KeyToggle%TrigN%:= !HKey%HkT1%KeyToggle%TrigN%
Tooltip, % "Toggle State : " HKey%HkT1%KeyToggle%TrigN% "`nCtrl-" HKeyHkT1KeyTrigN "`nToggle: " HKey%HkT1%CtrlKeyToggle%TrigN%, 1880, 1050
SetTimer, RemoveToolTip, -500
While HKey%HkT1%KeyToggle%TrigN% {
ImageSearch, T1X, T1Y, 0, 0, 1000, 80, % "*40 " HKey%HkT1%Spell%TrigN% "Timer" A_Index ".png"
; If (ErrorLevel = 2) {
; msgbox, error
; }
; If (ErrorLevel = 1) {
; msgbox, not found
; }
If (ErrorLevel = 0) {
Tooltip, found at %T1X%x %T1Y%Y, T1X, T1Y +40
SetTimer, RemoveToolTip, -1000
i:= A_Index
loop {
ImageSearch, , , T1X -5, T1Y -5, T1X + 50, T1Y + 50, % "*40 " HKey%HkT1%Spell%TrigN% "Timer" i ".png"
If (ErrorLevel = 1) {
Tooltip, HKey%HkT1%Spell%TrigN%: %Cooldown%ms, T1X, T1Y +40
SetTimer, RemoveToolTip, -1000
GoSub SendShortcut3
break
}
}
}
if (A_Index = 8)
break
}
Return
;======================================================
SendShortcut3:
HKeyHkT1KeyTrigN:= HKey%HkT1%Key%TrigN%
Sleep, %Cooldown%
BlockInput, on
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
If (HKey%HkT1%CtrlKeyToggle%TrigN% = 0) {
BlockInput, on
send, {%HKeyHkT1KeyTrigN%}
BlockInput, off
}
If (HKey%HkT1%CtrlKeyToggle%TrigN% = 1) {
BlockInput, on
Send, {Ctrl Down}
sleep, 40
Send, {%HKeyHkT1KeyTrigN%}{Ctrl Up}
BlockInput, off
}
If LButtonState = D
MouseClick, , , , , , D
BlockInput, Off
; loop {
; If (HKey%HkT1%CtrlKeyToggle = 1) {
; GetKeyState, CtrlState, Ctrl, P
; If CtrlState = D
; Send, {Ctrl Up}
; Send, {Ctrl down}
; Sleep, 50
; }
; GetKeyState, LButtonState, LButton, P
; If LButtonState = D
; MouseClick, , , , , , U
; send, {%HKeyHkT1KeyTrigN%}
; If LButtonState = D
; MouseClick, , , , , , D
; Send, {Ctrl Up}
; ImageSearch, , , T1X -5, T1Y -5, T1X + 50, T1Y + 50, % HKey%HkT1%Spell%TrigN% "Timer" i ".png"
; If (ErrorLevel = 0) {
; Break
; }
; }
return
;======================================================End of Type1======================================================
;======================================================ConfigType1======================================================
ConfigType1:
Section := "Type1Hotkey" . Hk . "" . LineSpacing2
gosub Type1Load
GuiWidth:= 250
GuiHeight:= 60
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - Type 1"
Gui, Add, Button, x10 y30 w50 h20 gV1, v1
Gui, Add, Button, x70 y30 w50 h20 gV2, v2
Gui, Add, Button, x130 y30 w50 h20 gV3, v3
if (Hkey%Hk%T1V = 1) {
Gui, Add, Button, x10 y30 w50 h20 gV1 Default, v1
} else if (Hkey%Hk%T1V = 2) {
Gui, Add, Button, x70 y30 w50 h20 gV2 Default, v2
} else {
Gui, Add, Button, x130 y30 w50 h20 gV3 Default, v3
}
Gui, Add, Button, x190 y30 w50 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Auto Caster
Return
;============================================================================================================
V1:
Hkey%Hk%T1V:= 1
gosub GuiSD
Gui, Add, Text, 0x80 x10 y10, Additional Spells:
Gui, Add, Edit, x100 y7 w40 h20 vHkey%Hk%TriggeredCount, % Hkey%Hk%TriggeredCount
Gui, Add, Text, x160 y10, Scan Delay:
Gui, Add, Edit, x230 y7 w40 h20 vHkey%Hk%ScanDelay, % Hkey%Hk%ScanDelay
Loop {
Y1:= 30 * A_Index + 33
Y2:= 30 * A_Index + 30
Y3:= 30 * A_Index + 3
Y4:= 30 * A_Index
Gui, Add, Text, x20 y40, Toggle Spell Name Shortcut Key Cooldown (ms)
Gui, Add, Text, x10 y%Y1%, %A_Index%
Gui, Add, Checkbox, % "x30 y" Y1 " h13 w13 vHkey" Hk "TriggerToggle" A_Index " Checked" Hkey%Hk%TriggerToggle%A_Index%
Gui, Add, Edit, x51 y%Y2% w140 h20 vHkey%Hk%Spell%A_Index%, % Hkey%Hk%Spell%A_Index%
Gui, Add, Edit, x201 y%Y2% w70 h20 vHkey%Hk%Key%A_Index%, % Hkey%Hk%Key%A_Index%
Gui, Add, Edit, x281 y%Y2% w40 h20 vHkey%Hk%Cooldown%A_Index%, % Hkey%Hk%Cooldown%A_Index%
If (A_Index > Hkey%Hk%TriggeredCount) {
GuiWidth:= 350
GuiHeight:= 100 + 30 * A_Index
ButtonHeight:= 30 * A_Index + 70
gosub Guibuild
Gui, Add, Button, x50 y%ButtonHeight% w90 h20 gTriggeredAdd1, Add
Gui, Add, Button, x150 y%ButtonHeight% w90 h20 gTriggeredWrite1 Default, Record
Gui, Add, Button, x250 y%ButtonHeight% w90 h20 gCancel, Cancel
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk " (" Hkey%Hk%Shortcut ")"
Break
}
}
Return
;======================================================
TriggeredAdd1:
gosub GuiSD
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
gosub V1
Return
;======================================================
TriggeredWrite1:
gosub GuiSD
IniWrite, % Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
IniWrite, % Hkey%Hk%ScanDelay, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ScanDelay
Loop {
IniWrite, % Hkey%Hk%TriggerToggle%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggerToggle%A_Index%
IniWrite, % Hkey%Hk%Spell%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%A_Index%
IniWrite, % Hkey%Hk%Key%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%A_Index%
IniWrite, % Hkey%Hk%Cooldown%A_Index%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%A_Index%
HKey%Hk%TrigN:= A_Index
Gosub KeyWrite1
If (A_Index > Hkey%Hk%TriggeredCount)
Break
}
Return
;============================================================================================================
V2:
gosub GuiSD
Hkey%Hk%T1V:= 2
TrigN:= 1
GuiWidth:= 210
GuiHeight:= 200
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut%TrigN% " - V2"
HKeyHkT1CtrlKeyToggleTrigN := HKey%HkT1%CtrlKeyToggle%TrigN%
Gui, Add, Checkbox, % "x10 y43 h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Text, x30 y43, Ctrl
Gui, Add, Edit, x60 y40 w70 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x140 y43, Shortcut
Gui, Add, Edit, x10 y70 w30 h20 vScanDelay%Hk%, % ScanDelay%Hk%
Gui, Add, Text, x50 y73, Scan Loop Delay, ms
Gui, Add, Edit, x10 y100 w30 h20 vHkey%Hk%Cooldown%TrigN%, % Hkey%Hk%Cooldown%TrigN%
Gui, Add, Text, x50 y103, Spell 1 Cooldown, ms
Gui, Add, Edit, x10 y130 w40 h20 vHkey%Hk%TriggeredCount, % Hkey%Hk%TriggeredCount
Gui, Add, Text, x60 y133, Extra Triggered Spells
Gui, Add, Button, x10 y160 w90 h20 gTriggered2 Default, Define
Gui, Add, Button, x110 y160 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Auto Caster
Return
;======================================================
Triggered2:
gosub GuiSD
T1%Hk%:= 2
IniWrite, % Hkey%Hk%TriggeredCount, UnrapeKitConfig.ini, %Section%, Hkey%Hk%TriggeredCount
IniWrite, % Hkey%Hk%T1V, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1V
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%
IniWrite, % Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%
If (TriggeredCount%Hk% = 0) {
gosub TriggeredWrite2
} else {
TrigN:= 2
Loop {
Y1:= 30 * TrigN - 27
Y2:= 30 * TrigN - 30
Y3:= 30 * TrigN + 3
Y4:= 30 * TrigN
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut ": Additional shortcuts"
Gui, Add, Text, x10 y%Y1%, % "Ctrl"
Gui, Add, Checkbox, % "x30 y" Y1 " h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Text, x50 y%Y1%, % " key" TrigN ":"
Gui, Add, Edit, x90 y%Y2% w60 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x170 y%Y1%, % " Cooldown"
Gui, Add, Edit, x230 y%Y2% w40 h20 vHkey%Hk%Cooldown%TrigN%, % Hkey%Hk%Cooldown%TrigN%
Gui, Add, Text, x275 y%Y1%, ms
If (A_Index = Hkey%Hk%TriggeredCount) {
GuiWidth:= 300
GuiHeight:= 40 + 30 * TrigN
ButtonHeight:= 30 * TrigN + 10
gosub Guibuild
Gui, Add, Button, x100 y%ButtonHeight% w90 h20 gTriggeredWrite2 Default, Record
Gui, Add, Button, x200 y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%,
Break
}
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
TriggeredWrite2:
gosub GuiSD
IniWrite, % Hkey%Hk%Key1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key1
TrigN:= 2
Loop, % TriggeredCount%Hk% {
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % Hkey%Hk%Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cooldown%TrigN%
TrigN+=1
}
TrigN:= 1
Gosub KeyWrite1
Return
;============================================================================================================
V3:
gosub GuiSD
Hkey%Hk%T1V:= 3
TrigN:= 1
GuiWidth:= 210
GuiHeight:= 230
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, Toggle for Ctrl hotkey
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell%TrigN%, % Hkey%Hk%Spell%TrigN%
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Checkbox, % "x10 y73 h13 w13 vHKey" Hk "CtrlKeyToggle" TrigN " Checked" HKey%Hk%CtrlKeyToggle%TrigN%
Gui, Add, Edit, x30 y70 w70 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x110 y73, Shortcut Key
Gui, Add, Edit, x10 y100 w30 h20 vScanDelay%Hk%, % ScanDelay%Hk%
Gui, Add, Text, x50 y103, Scan Loop Delay, ms
Gui, Add, Edit, x10 y130 w30 h20 vHkey%Hk%T1Cooldown%TrigN%, % Hkey%Hk%T1Cooldown%TrigN%
Gui, Add, Text, x50 y133, Spell 1 Cooldown, ms
Gui, Add, Edit, x10 y160 w40 h20 vTriggeredCount%Hk%, % TriggeredCount%Hk%
Gui, Add, Text, x60 y163, Extra Triggered Spells
Gui, Add, Button, x10 y190 w90 h20 gTriggered3 Default, Define
Gui, Add, Button, x110 y190 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - V3"
Return
;======================================================
Triggered3:
gosub GuiSD
IniWrite, % Hkey%HkT1%T1V, UnrapeKitConfig.ini, %Section%, Hkey%HkT1%T1V
IniWrite, % TriggeredCount%Hk%, UnrapeKitConfig.ini, %Section%, TriggeredCount%Hk%
IniWrite, % Hkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%Hk%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%Hk%CtrlKeyToggle%TrigN%
IniWrite, % ScanDelay%Hk%, UnrapeKitConfig.ini, %Section%, ScanDelay%Hk%
IniWrite, % Hkey%Hk%T1Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1Cooldown%TrigN%
If (TriggeredCount%Hk% = 0) {
gosub TriggeredWrite3
} else {
TrigN:= 2
Loop {
Y1:= 30 * TrigN - 27
Y2:= 30 * TrigN - 30
Y3:= 30 * TrigN + 3
Y4:= 30 * TrigN
Gui, Add, Text, 0x80 x10 y10, Toggle for Ctrl hotkey
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell%TrigN%, % Hkey%Hk%Spell%TrigN%
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Checkbox, % "x10 y" Y2 " h13 w13 vHKey" HkT1 "CtrlKeyToggle" TrigN " Checked" HKey%HkT1%CtrlKeyToggle%TrigN%
Gui, Add, Edit, x41 y%Y2% w140 h20 vHkey%Hk%Key%TrigN%, % Hkey%Hk%Key%TrigN%
Gui, Add, Text, x191 y%Y1%, % "Spell " TrigN ", Cooldown" (Toggle for Ctrl)
Gui, Add, Edit, x291 y%Y2% w40 h20 vHkey%Hk%T1Cooldown%TrigN%, % Hkey%Hk%T1Cooldown%TrigN%
Gui, Add, Text, x341 y%Y1%, ms
If (A_Index = TriggeredCount%Hk%) {
GuiWidth:= 370
GuiHeight:= 40 + 30 * TrigN
ButtonHeight:= 30 * TrigN + 10
gosub Guibuild
Gui, Add, Button, x170 y%ButtonHeight% w90 h20 gTriggeredWrite3 Default, Record
Gui, Add, Button, x270 y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, W%GuiWidth% H%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk ": " Hkey%Hk%Shortcut ": Additional shortcuts"
Break
}
TrigN+= 1
}
TrigN:= 1
}
Return
;======================================================
TriggeredWrite3:
gosub GuiSD
TrigN:= 2
Loop, % Hkey%Hk%TriggeredCount {
IniWrite, % Hkey%Hk%Spell%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell%TrigN%
IniWrite, % Hkey%Hk%Key%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key%TrigN%
IniWrite, % HKey%HkT1%CtrlKeyToggle%TrigN%, UnrapeKitConfig.ini, %Section%, HKey%HkT1%CtrlKeyToggle%TrigN%
IniWrite, % Hkey%Hk%T1Cooldown%TrigN%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%T1Cooldown%TrigN%
TrigN+=1
}
TrigN:= 1
Gosub KeyWrite1
Return
;======================================================End of ConfigType1======================================================
;======================================================Type2======================================================
Type2:
HkeyHkSpell1:= Hkey%Hk%Spell1
HkeyHkSpell2:= Hkey%Hk%Spell2
HkeyHkKey:= Hkey%Hk%Key
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
if LButtonState = D
MouseClick, , , , , , U
if (Hkey%Hk%AltEquiptoggle)
Send, {X}
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
sleep, %Delay%
MouseClick, , Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseMove, %HkeyHkSpell1%X, %HkeyHkSpell1%Y
sleep, %Delay%
MouseClick, , %HkeyHkSpell1%X, %HkeyHkSpell1%Y
if (Hkey%Hk%MoveToggle)
MouseMove, Xpos, Ypos
if (Hkey%Hk%ShiftToggle) {
Send, {LShift Down}
sleep, 50
}
SendInput, % "{" Hkey%Hk%Key "}"
if (Hkey%Hk%ShiftToggle)
Send, {LShift Up}
MouseMove, Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseClick, , Hkey%Hk%KeyX, Hkey%Hk%KeyY
MouseMove, %HkeyHkSpell2%X, %HkeyHkSpell2%Y
MouseClick, , %HkeyHkSpell2%X, %HkeyHkSpell2%Y
if (Hkey%Hk%AltEquiptoggle)
Send, {X}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState2, LButton, P
if LButtonState2 = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type2======================================================
;======================================================ConfigType2======================================================
ConfigType2:
Section = Type2Hotkey%Hk%--------------------------------------------------------------------------------------------------
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 210
gosub GuiBuild
Gui, Add, Text, 0x80 x10 y10, % "Hotkey " Hk ": " Hkey%Hk%Shortcut " - Type 2"
Gui, Add, Edit, x30 y40 W110 h20 vHkey%Hk%Spell1, % Hkey%Hk%Spell1
Gui, Add, Text, x160 y43, Spell 1
Gui, Add, Edit, x30 y70 W110 h20 vHkey%Hk%Spell2, % Hkey%Hk%Spell2
Gui, Add, Text, x160 y73, Spell 2
Gui, Add, Edit, x10 y100 W70 h20 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Text, x90 y103, Shortcut Key
Gui, Add, Checkbox, % "x10 y130 h13 w13 vHkey" Hk "MoveToggle Checked" Hkey%Hk%MoveToggle
Gui, Add, Text, x30 y130, replace cursor
Gui, Add, Checkbox, % "x+10 y130 h13 w13 vHkey" Hk "ShiftToggle Checked" Hkey%Hk%ShiftToggle
Gui, Add, Text, x+10 y130, Hold Shift
Gui, Add, Checkbox, % " x10 y160 vHkey" Hk "AltEquiptoggle checked" Hkey%Hk%AltEquiptoggle, Alternate equipment
Gui, Add, Button, x10 y180 w90 h20 gWrite2 Default, Define
Gui, Add, Button, x110 y180 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Swap Caster
Return
;======================================================
Write2:
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
IniWrite, % Hkey%Hk%MoveToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%MoveToggle
IniWrite, % Hkey%Hk%ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%ShiftToggle
IniWrite, % Hkey%Hk%AltEquiptoggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%AltEquiptoggle
Gosub KeyWrite
Return
;======================================================End of ConfigType2======================================================
;======================================================Type3======================================================
Type3:
HkeyHkKey:= Hkey%Hk%Key
Hkey%Hk%Keytoggle:= !Hkey%Hk%Keytoggle
CastTime1:= Hkey%Hk%Cast1Time + Delay + 2 * FrameTime
CastTime2:= Hkey%Hk%Cast2Time + Delay + 2 * FrameTime
if Hkey%Hk%Keytoggle {
HkeyHkSpell:= Hkey%Hk%Spell1
i:= 1
gosub SpellCast
}
if !Hkey%Hk%Keytoggle {
HkeyHkSpell:= Hkey%Hk%Spell2
i:= 2
gosub SpellCast
}
Return
;======================================================End of Type3======================================================
;======================================================ConfigType3======================================================
ConfigType3:
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 220
gosub GuiBuild
Gui, Add, Text, 0x80 x70 y10, Spell Cast Time
Gui, Add, Text, x10 y43, 1
Gui, Add, Edit, x20 y40 W140 h20 vHkey%Hk%Spell1, % Hkey%Hk%Spell1
Gui, Add, Edit, x170 y40 W30 vHkey%Hk%Cast1Time, % Hkey%Hk%Cast1Time
Gui, Add, Text, x10 y73, 2
Gui, Add, Edit, x20 y70 W140 vHkey%Hk%Spell2, % Hkey%Hk%Spell2
Gui, Add, Edit, x170 y70 W30 vHkey%Hk%Cast2Time, % Hkey%Hk%Cast2Time
Gui, Add, Text, x10 y103, Shortcut key
Gui, Add, Edit, x90 y100 W70 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Checkbox, % "x10 y130 h13 w13 vHkey" Hk "Cast1ShiftToggle Checked" Hkey%Hk%Cast1ShiftToggle
Gui, Add, Text, x+10 y130, Shift
Gui, Add, Checkbox, % "x+10 y130 h13 w13 vHkey" Hk "Cast1Toggle Checked" Hkey%Hk%Cast1Toggle
Gui, Add, Text, x+10 y130, Cast Spell 1
Gui, Add, Checkbox, % "x10 y160 h13 w13 vHkey" Hk "Cast2ShiftToggle Checked" Hkey%Hk%Cast2ShiftToggle
Gui, Add, Text, x+10 y160, Shift
Gui, Add, Checkbox, % "x+10 y160 h13 w13 vHkey" Hk "Cast2Toggle Checked" Hkey%Hk%Cast2Toggle
Gui, Add, Text, x+10 y160, Cast Spell 2
Gui, Add, Button, x10 y190 w90 h20 gWrite3 Default, Define
Gui, Add, Button, x110 y190 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk " Type 3: " Hkey%Hk%Shortcut
Return
;======================================================
Write3:
Section = Type3Hotkey%Hk%--------------------------------------------------------------------------------------------------
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Spell2, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell2
IniWrite, % Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniWrite, % Hkey%Hk%Cast2Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Time
IniWrite, % Hkey%Hk%Cast1ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1ShiftToggle
IniWrite, % Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniWrite, % Hkey%Hk%Cast2ShiftToggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2ShiftToggle
IniWrite, % Hkey%Hk%Cast2Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast2Toggle
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
Gosub KeyWrite
Return
;======================================================End of ConfigType3======================================================
;======================================================Type4======================================================
Type4:
HkeyHkSpell:= Hkey%Hk%Spell1
CastTime1:= Hkey%Hk%Cast1Time + Delay + 2 * FrameTime
ImageSearch, , , 1575, 1020, 1630, 1075, % "*10 " HKey%Hk%Spell1 "_" Hkey%Hk%Key ".png"
If ErrorLevel = 0
SendInput, "{" Hkey%Hk%Key "}"
If (ErrorLevel = 1) {
gosub SpellCast
}
Return
;======================================================End of Type4======================================================
;======================================================End of ConfigType4======================================================
ConfigType4:
SysGet, SGW, 71
GuiWidth:= 210
GuiHeight:= 170
gosub GuiBuild
Gui, Add, Text, 0x80 x70 y10, Spell Cast Time
Gui, Add, Edit, x10 y40 w140 h20 vHkey%Hk%Spell1T4, % Hkey%Hk%Spell1
Gui, Add, Edit, x160 y40 W30 vHkey%Hk%Cast1Time, % Hkey%Hk%Cast1Time
Gui, Add, Text, x10 y73, Shortcut key
Gui, Add, Edit, x90 y70 W70 vHkey%Hk%Key, % Hkey%Hk%Key
Gui, Add, Checkbox, % "x10 y100 h13 w13 vHkey" Hk "Cast1Toggle Checked" Hkey%Hk%Cast1Toggle
Gui, Add, Text, x40 y100, Cast Spell 1
Gui, Add, Button, x10 y140 w90 h20 gWrite4 Default, Define
Gui, Add, Button, x110 y140 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, "Hotkey " Hk " Type 4: " Hkey%Hk%Shortcut
Return
;======================================================
Write4:
Section = Type4Hotkey%Hk%--------------------------------------------------------------------------------------------------
gosub GuiSD
IniWrite, % Hkey%Hk%Spell1, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Spell1
IniWrite, % Hkey%Hk%Cast1Time, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Time
IniWrite, % Hkey%Hk%Cast1Toggle, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Cast1Toggle
IniWrite, % Hkey%Hk%Key, UnrapeKitConfig.ini, %Section%, Hkey%Hk%Key
Gosub KeyWrite
Return
;======================================================End of ConfigType4======================================================
;======================================================Type5======================================================
Type5:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %Delay%
MouseClick, Right, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
Sleep, %Delay%
if (Hkey%Hk%GemSwapTab = 1) {
MouseMove, Hkey%Hk%GemSwap2_X, Hkey%Hk%GemSwap2_Y
MouseClick, Left, Hkey%Hk%GemSwap2_X, Hkey%Hk%GemSwap2_Y
MouseMove, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
MouseClick, Left, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
}
if (Hkey%Hk%GemSwapTab = 2) {
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%GemSwap2Alt_X, Hkey%Hk%GemSwap2Alt_Y
MouseClick, , Hkey%Hk%GemSwap2Alt_X, Hkey%Hk%GemSwap2Alt_Y
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
MouseClick, , Hkey%Hk%GemSwap1_X, Hkey%Hk%GemSwap1_Y
}
SendInput, {i}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type5======================================================
;======================================================Type6======================================================
Type6:
MouseGetPos, Xpos, Ypos
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %Delay%
MouseClick, Right, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
Sleep, %Delay%
if (Hkey%Hk%EquipSwapTab = 1) {
MouseMove, Hkey%Hk%EquipSwap2_X, Hkey%Hk%EquipSwap2_Y
MouseClick, Left, Hkey%Hk%EquipSwap2_X, Hkey%Hk%EquipSwap2_Y
MouseMove, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
MouseClick, Left, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
}
if (Hkey%Hk%EquipSwapTab = 2) {
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%EquipSwap2Alt_X, Hkey%Hk%EquipSwap2Alt_Y
MouseClick, , Hkey%Hk%EquipSwap2Alt_X, Hkey%Hk%EquipSwap2Alt_Y
SendInput, {x}
Sleep, %Delay%
MouseMove, Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
MouseClick, , Hkey%Hk%EquipSwap1_X, Hkey%Hk%EquipSwap1_Y
}
SendInput, {i}
MouseMove, Xpos, Ypos
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
Return
;======================================================End of Type6======================================================
;======================================================ConfigType5&6======================================================
ConfigType5:
Section:= "Type5Hotkey5--------------------------------------------------------------------------------------------------"
Gosub GemSwap1
Return
ConfigType6:
Section:= "Type6Hotkey5--------------------------------------------------------------------------------------------------"
Gosub EquipSwap1
Return
GemSwap1:
Swap:= "GemSwap1"
Gosub Swap1
Return
GemSwap2:
Swap:= "GemSwap2"
Gosub Swap2
return
EquipSwap1:
Swap:= "EquipSwap1"
GoSub Swap1
Return
EquipSwap2:
Swap:= "EquipSwap2"
GoSub Swap2
Return
;======================================================
Swap1:
Gosub InvRead
gosub LoadSocketLists
gosub EquipRead
gosub AltEquipRead
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 830
If (Swap = "GemSwap1") {
Hkey%Hk%GemSwapTab:= 1
}
If (Swap = "EquipSwap2") {
Hkey%Hk%EquipSwapTab:= 1
}
Gui, Add, Picture, x3 y27, InventoryEquip.png
Gui, Color, 0x050505
gosub GuiBuild
gosub InvRadio
gosub EquipRadio
Gui, Add, Button, x550 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x450 y800 w90 h20 gSwapCoord Default, Select
If (Swap = "GemSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipped Gem Swap"
If (Swap = "EquipSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipment Swap"
Return
;======================================================
Swap2:
Gosub InvRead
gosub LoadSocketLists
gosub EquipRead
gosub AltEquipRead
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 830
If (Swap = "GemSwap2") {
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight%, 1||2
}
If (Swap = "EquipSwap2") {
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight%, 1||2
}
Gui, Tab, 1
Gui, Add, Picture, x0 y27, InventoryEquip.png
Gui, Color, 0x050505
gosub GuiBuild
gosub InvRadio
gosub EquipRadio
Gui, Add, Button, x550 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x450 y800 w90 h20 gSwapCoord Default, Select
Gui, Tab, 2
gosub GuiTab
Gui, Add, Picture, x33 y30, AlternateEquipment.png
Gui, Color, 0x050505
gosub AltEquipRadio
Gui, Add, Button, x50 y800 w90 h20 gCancel, Reload
Gui, Add, Button, x150 y800 w90 h20 gSwapCoord Default, Select
Gui, Tab
if (Swap = "GemSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipped Gem Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
if (Swap = "EquipSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Equipment Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
Return
;======================================================
GuiTab:
if (Swap = "GemSwap2") {
Hkey%Hk%GemSwapTab:= 2
GemSwapTab:= Hkey%Hk%GemSwapTab
}
if (Swap = "EquipSwap2") {
Hkey%Hk%EquipSwapTab:= 2
EquipSwapTab:= Hkey%Hk%EquipSwapTab
}
Return
;======================================================
SwapCoord:
gosub guiSD
Gosub InvWriteDelete
gosub EquipWriteDelete
gosub EquipCoord
gosub SwapRouting
Return
;======================================================
InvRead:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
IniRead, Hkey%Hk%%Swap%RadioL%L%C%C%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%, %A_Space%
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
}
}
C:= 0
L:= 0
Return
;======================================================
InvWriteDelete:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
if (var3 = 1) {
IniWrite, % Hkey%Hk%%Swap%RadioL%L%C%C%, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%
} else {
IniDelete, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%RadioL%L%C%C%
}
Hkey%Hk%%Swap%X:= 1240 + (C*53)
Hkey%Hk%%Swap%Y:= 560 + (L*54)
}
}
C:= 0
L:= 0
Return
;======================================================
InvRadio:
L:= 0
Loop, 5 {
L+= 1
C:= 0
loop, 12 {
C += 1
RadioCX:= -27 + C*53
RadioCY:= 489 + L*53
var2 = Hkey%Hk%%Swap%RadioL%L%C%C%
var3:= % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" RadioCX " y" RadioCY " h13 w13 v" var2 " Checked" var3
}
}
C:= 0
L:= 0
return
;======================================================
AltEquipRadio:
for each, AltSocket in AltSocketList {
varX:= % AltSocket.2
varY:= % AltSocket.3
var1 := % AltSocket.1
var2 = Hkey%Hk%%Swap%Alt%var1%
var3 := % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" varX " y" varY " h13 w13 v" var2 " Checked" var3
}
return
;======================================================
EquipRadio:
for each, Socket in SocketList {
varX:= % Socket.2
varY:= % Socket.3
var1 := % Socket.1
var2 = Hkey%Hk%%Swap%%var1%
var3 := % %var2%
if (var3 = "")
var3 := 0
Gui, Add, Radio, % "x" varX " y" varY " h13 w13 v" var2 " Checked" var3
}
return
;======================================================
SwapRouting:
If (Swap = "GemSwap2" AND GemSwapTab = 2) OR (Swap = "EquipSwap2" AND EquipSwapTab = 2) {
gosub AltEquipDelete
gosub AltEquipWriteDelete
gosub AltEquipCoord
}
If (Swap = "GemSwap1") {
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Gosub GemSwap2
Return
}
If (Swap = "EquipSwap1") {
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Gosub EquipSwap2
Return
}
If (Swap = "GemSwap2" AND GemSwapTab = 1) {
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Return
}
If (Swap = "EquipSwap2" AND EquipSwapTab = 1) {
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab
IniWrite, % Hkey%Hk%%Swap%_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_X
IniWrite, % Hkey%Hk%%Swap%_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%_Y
Return
}
If (Swap = "GemSwap2" AND GemSwapTab = 2) {
IniWrite, % Hkey%Hk%GemSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%GemSwapTab
IniWrite, % Hkey%Hk%%Swap%Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_X
IniWrite, % Hkey%Hk%%Swap%Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_Y
Return
}
If (Swap = "EquipSwap2" AND EquipSwapTab = 2) {
IniWrite, % Hkey%Hk%EquipSwapTab, UnrapeKitConfig.ini, %Section%, Hkey%Hk%EquipSwapTab
IniWrite, % Hkey%Hk%%Swap%Alt_X, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_X
IniWrite, % Hkey%Hk%%Swap%Alt_Y, UnrapeKitConfig.ini, %Section%, Hkey%Hk%%Swap%Alt_Y
Return
}
return
;======================================================End of ConfigType5&6======================================================
;======================================================Type7======================================================
Type7:
T7:= 1
MouseGetPos, Xpos, Ypos
Loop, % Hkey%Hk%Iterations {
If (Hkey%Hk%Iteration%T7% = "SpellScan") {
Gosub SpellScan
}
If (Hkey%Hk%Iteration%T7% = "ImageSearch") {
gosub T7ImageSearch
}
If (Hkey%Hk%Iteration%T7% = "Spell") {
gosub T7Spell
}
If (Hkey%Hk%Iteration%T7% = "SendInput") {
gosub T7SendInput
}
If (Hkey%Hk%Iteration%T7% = "GetMousePos") {
gosub T7GetMouse
}
If (Hkey%Hk%Iteration%T7% = "GoMousePos") {
gosub T7GoMouse
}
If (Hkey%Hk%Iteration%T7% = "MouseMove") {
gosub T7MouseMove
}
If (Hkey%Hk%Iteration%T7% = "Delay") {
Sleep, % HKey%Hk%DelayIteration%T7%
}
If (Hkey%Hk%Iteration%T7% = "GemSwap") {
gosub T7GemSwap
}
If (Hkey%Hk%Iteration%T7% = "EquipmentSwap") {
gosub T7EquipSwap
}
T7+= 1
}
MouseMove, Xpos, Ypos
Return
T7Routing:
Return
T7ImageSearch:
;BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LuttonState = D
MouseClick, , , , , , U
MouseMove, A_ScreenWidth, A_ScreenHeight
Loop {
ImageSearch, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%, ScanCoordinatesHotkey%Hk%Iteration%T7%_L, ScanCoordinatesHotkey%Hk%Iteration%T7%_T, ScanCoordinatesHotkey%Hk%Iteration%T7%_R, ScanCoordinatesHotkey%Hk%Iteration%T7%_B, % "*" ShadeVariationHotkey%Hk%Iteration%T7% " " ImageNameHotkey%Hk%Iteration%T7% ".png"
If (ErrorLevel = 2) {
MsgBox % "Search Failed for image " ImageNameHotkey%Hk%Iteration%T7%
break
}
If (ErrorLevel = 1) {
MsgBox % "Search could not find image " ImageNameHotkey%Hk%Iteration%T7%
break
}
If (ErrorLevel = 0) {
ToolTip, % HKey%Hk%MouseXPosIteration%T7% ", " HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, 500
break
}
}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
; BlockInput, MouseMoveOff
return
T7Spell:
HKeyHkSpellIterationT7:= HKey%Hk%SpellIteration%T7%
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, KeyX_%Hk%Iteration%T7%, KeyY_%Hk%Iteration%T7%
Sleep, %FrameTime%
MouseClick, , KeyX_%Hk%Iteration%T7%, KeyY_%Hk%Iteration%T7%
Sleep, %FrameTime%
MouseMove, %HKeyHkSpellIterationT7%X, %HKeyHkSpellIterationT7%Y
SetMouseDelay, 40
MouseClick, , %HKeyHkSpellIterationT7%X, %HKeyHkSpellIterationT7%Y
SetMouseDelay, %MouseDelay%
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7SendInput:
HKeyHkSendIterationT7:= HKey%Hk%SendIteration%T7%
SendInput, {%HKeyHkSendIterationT7%}
return
T7GetMouse:
If (Hkey%Hk%GetMousePosToggleIteration%T7% = 1) {
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseGetPos, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
}
return
T7GoMouse:
MouseT7:= HKey%Hk%GoMousePosIteration%T7%
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, HKey%Hk%MouseXPosIteration%MouseT7%, HKey%Hk%MouseYPosIteration%MouseT7%
Tooltip, % "x: " HKey%Hk%MouseXPosIteration%MouseT7% ", y: "HKey%Hk%MouseYPosIteration%MouseT7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7MouseMove:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
MouseMove, HKey%Hk%MouseXPosIteration%T7%, HKey%Hk%MouseYPosIteration%T7%
Tooltip, % "x: " HKey%Hk%MouseXPosIteration%T7% ", y: "HKey%Hk%MouseYPosIteration%T7%
SetTimer, RemoveToolTip, -500
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7GemSwap:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %FrameTime%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, Right, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
If (GemSwapTab_%Hk% = 1) {
MouseMove, GemSwap2Hotkey%Hk%Iteration%T7%_X, GemSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap2Hotkey%Hk%Iteration%T7%_X, GemSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
If (GemSwapTab_%Hk% = 2) {
SendInput, {x}
Sleep, %FrameTime%
MouseMove, GemSwap2AltHotkey%Hk%Iteration%T7%_X, GemSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap2AltHotkey%Hk%Iteration%T7%_X, GemSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
SendInput, {x}
Sleep, %FrameTime%
MouseMove, GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , GemSwap1Hotkey%Hk%Iteration%T7%_X, GemSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
SendInput, {i}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
return
T7EquipSwap:
BlockInput, MouseMove
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , U
SendInput, {i}
Sleep, %FrameTime%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
If (EquipSwapTab_%Hk% = 1) {
MouseMove, EquipSwap2Hotkey%Hk%Iteration%T7%_X, EquipSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap2Hotkey%Hk%Iteration%T7%_X, EquipSwap2Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
If (EquipSwapTab_%Hk% = 2) {
SendInput, {x}
Sleep, %FrameTime%
MouseMove, EquipSwap2AltHotkey%Hk%Iteration%T7%_X, EquipSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap2AltHotkey%Hk%Iteration%T7%_X, EquipSwap2AltHotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
SendInput, {x}
Sleep, %FrameTime%
MouseMove, EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, 40
MouseClick, , EquipSwap1Hotkey%Hk%Iteration%T7%_X, EquipSwap1Hotkey%Hk%Iteration%T7%_Y
SetMouseDelay, %MouseDelay%
}
SendInput, {i}
GetKeyState, LButtonState, LButton, P
If LButtonState = D
MouseClick, , , , , , D
BlockInput, MouseMoveOff
;======================================================End of Type7======================================================
;======================================================ConfigType7======================================================
returnType7Config:
gosub Type7Load
MouseGetPos, Xpos, Ypos
Type7ConfigRecord:= 0
GuiWidth:= 210
GuiHeight:= 100
gosub GuiSD
Gui, Add, Text, x40 y10, Type 7 configuration
Gui, Add, Edit, x10 y40 w30 h20 vHkey%Hk%Iterations, % Hkey%Hk%Iterations
Gui, Add, Text, x50 y43, % "Iterations Hotkey " Hk
Gui, Add, Button, x10 y70 w90 h20 gType7Config2 Default, Configure
Gui, Add, Button, x110 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7
Return
Type7Config2:
gosub GuiSD
IniWrite, % Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations
MouseGetPos, Xpos, Ypos
H:= 1
W:= 1
HMax:= 1
SysGet, SGW, 71
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, x10 y10, Options:
Gui, Add, Text, x10 y40, Choose any of these or skip
Gui, Add, Text, x10 y70,
Gui, Add, Text, x10 y100, ImageSearch
Gui, Add, Text, x10 y130, GetMousePos
Gui, Add, Text, x10 y160, GoMousePos
Gui, Add, Text, x10 y190, SpellScan
Gui, Add, Text, x10 y220, Spell
Gui, Add, Text, x10 y250, SendInput
Gui, Add, Text, x10 y280, MouseMove
Gui, Add, Text, x10 y310, Delay
Gui, Add, Text, x10 y340, GemSwap
Gui, Add, Text, x10 y370, EquipmentSwap
Gui, Add, Text, x10 y400, Add
Gui, Add, Edit, x110 y400 w20 h20 vHkey%Hk%7Iterations
Gui, Add, Text, x140 y403, Iteration(s)
Gui, Add, Button, x10 y400 w90 h20 gType7ConfigAdd, Add
T7:= 1
Loop, % Hkey%Hk%Iterations {
GuiY:= 60 + 30 * H
ScreenHeight:= A_ScreenHeight - 45
If (GuiY > ScreenHeight) {
W+= 1
HMax:= H
H= 1
}
Y1:= 8 + 30 * H
Y2:= 5 + 30 * H
GuiWidth:= 160 + 360 * W
If (W = 1) {
GuiHeight:= 70 + 30 * H
ButtonHeight:= 40 + 30 * H
}
If (W > 1) {
GuiHeight:= 70 + 30 * HMax
ButtonHeight:= 40 + 30 * HMax
}
Button1X:= GuiWidth - 300
Button2X:= GuiWidth - 200
Button3X:= GuiWidth - 100
CheckboxX:= GuiWidth - 310
EditButtonX:= GuiWidth - 100
EditX:= GuiWidth - 280
TextX:= GuiWidth - 170
var1= Hkey%Hk%Iteration%T7%Toggle
Gui, Add, Edit, x%EditX% y%Y2% w100 h20 vHkey%Hk%Iteration%T7%, % Hkey%Hk%Iteration%T7%
Gui, Add, Text, x%TextX% y%Y1%, % "Iteration " T7
Gui, Add, Button, x%EditButtonX% y%Y2% w90 h20 gEditT7, %T7%
If (T7 = Hkey%Hk%Iterations) {
If ButtonHeight < 400
ButtonHeight = 400
If GuiHeight < 430
GuiHeight = 430
gosub GuiBuild
Gui, Add, Button, x%Button1X% y%ButtonHeight% w90 h20 gType7ConfigRecord Default, Record
Gui, Add, Button, x%Button2X% y%ButtonHeight% w90 h20 gType7Config3, Configure
Gui, Add, Button, x%Button3X% y%ButtonHeight% w90 h20 gCancel, Reload
Gui, Show, x%Move_X% y%Move_Y% w%GuiWidth% h%GuiHeight%, Iteration Configuration
Break
}
T7+= 1
H+= 1
}
Return
EditT7:
A_GuiControlT7:= A_GuiControl
T7:= A_GuiControlT7
gosub GuiSD
gosub Type7Write2
Gosub Type7Config4
Return
Type7ConfigRecord:
gosub GuiSD
gosub Type7Write
Gosub Type7Config2
Return
Type7ConfigAdd:
gosub GuiSD
gosub Type7Write2
Hkey%Hk%Iterations+= % Hkey%Hk%7Iterations
Gosub Type7Config2
Return
Type7Config3:
gosub GuiSD
T7 := 1
gosub Type7Write2
T7 := 1
Gosub Type7Config4
Return
Type7Config4:
gosub GuiSD
If (A_GuiControlT7 > 0)
A_GuiControlType7Config4:= A_GuiControlT7
IniRead, Hkey%Hk%Iterations, UnrapeKitConfig.ini, Type7Hotkey%Hk%, Hkey%Hk%Iterations
Loop {
If (Hkey%Hk%Iteration%T7% = "ImageSearch") {
Gosub Type7ImageSearch
Break
}
If (Hkey%Hk%Iteration%T7% = "GetMousePos") {
Gosub Type7GetMousePos
Break
}
If (Hkey%Hk%Iteration%T7% = "GoMousePos") {
Gosub Type7GoMousePos
Break
}
If (Hkey%Hk%Iteration%T7% = "SpellScan") {
Gosub Type7LoopAdd
Break
}
If (Hkey%Hk%Iteration%T7% = "Spell") {
Gosub Type7Spell
Break
}
If (Hkey%Hk%Iteration%T7% = "SendInput") {
Gosub Type7Send
Break
}
If (Hkey%Hk%Iteration%T7% = "MouseMove") {
Gosub Type7MouseMove
Break
}
If (Hkey%Hk%Iteration%T7% = "Delay") {
Gosub Type7DelayConfig
Break
}
If (Hkey%Hk%Iteration%T7% = "GemSwap") {
Gosub Type7GemSwap1
Break
}
If (Hkey%Hk%Iteration%T7% = "EquipmentSwap") {
Gosub Type7EquipSwap1
Break
}
If (T7 >= Hkey%Hk%Iterations) {
Hk += 1
Gosub HkTypeConfigLoop
Break
}
}
Return
Type7Msg:
MsgBox, % "Iteration " T7 " = " Hkey%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7LoopAdd:
gosub GuiSD
If (A_GuiControlType7Config4 > 0) {
A_GuiControlT7:= 0
gosub Type7Config2
} Else {
T7+= 1
Gosub Type7Config4
}
Return
Type7LoopSubtract:
gosub GuiSD
A_GuiControlT7:= 0
Loop {
T7-= 1
If (T7 = 0) {
T7:= 1
Gosub Type7Config4
Break
}
}
Return
Type7ImageSearch:
gosub GuiSD
gosub GuiBuild
Gui, Add, Edit, x10 y10 w30 h20 vScanCoordinatesHotkey%Hk%Iteration%T7%_L, % ScanCoordinatesHotkey%Hk%Iteration%T7%_L
Gui, Add, Edit, x50 y10 w30 h20 vScanCoordinatesHotkey%Hk%Iteration%T7%_T, % ScanCoordinatesHotkey%Hk%Iteration%T7%_T
Gui, Add, Edit, x90 y10 W30 H20 vScanCoordinatesHotkey%Hk%Iteration%T7%_R, % ScanCoordinatesHotkey%Hk%Iteration%T7%_R
Gui, Add, Edit, x130 y10 W30 H20 vScanCoordinateHotkey%Hk%Iteration%T7%_B, % ScanCoordinatesHotkey%Hk%Iteration%T7%_B
Gui, Add, Edit, x10 y40 W110 H20 vShadeVariationHotkey%Hk%Iteration%T7%, % ShadeVariationHotkey%Hk%Iteration%T7%
Gui, Add, Edit, x10 y70 w110 h20 vImageNameHotkey%Hk%Iteration%T7%, % ImageNameHotkey%Hk%Iteration%T7%
Gui, Add, Text, x170 y13, Left, Top, Right and Bottom Scan Coordinates
Gui, Add, Text, x130 y43, Scan Color Shade Variation and Optional Parameters
Gui, Add, Text, x130 y73, Scan Image Name
Gui, Add, Button, x310 y100 w90 h20 gType7ImageSearchWrite Default, Define
Gui, Add, Button, x210 y100 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y100 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y100 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Image Scan
Return
Type7ImageSearchWrite:
gosub GuiSD
Hkey%Hk%GetMousePosToggleIteration%T7%:= 1
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GetMousePosToggleIteration%T7%
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_L, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_L
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_T, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_T
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_R, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_R
IniWrite, % ScanCoordinatesHotkey%Hk%Iteration%T7%_B, UnrapeKitConfig.ini, ScanType7, ScanCoordinatesHotkey%Hk%Iteration%T7%_B
IniWrite, % ImageNameHotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, ScanType7, ImageNameHotkey%Hk%Iteration%T7%
IniWrite, % ShadeVariationHotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, ScanType7, ShadeVariationHotkey%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7GetMousePos:
GuiWidth:= 410
GuiHeight:= 100
gosub GuiBuild
If (Hkey%Hk%MouseXPosIteration%T7% is Integer Hkey%Hk%MouseYPosIteration%T7% is Integer) {
MouseMove, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
} Else {
MouseMove, 960, 540
}
Gui, -0x80000 AlwaysOnTop
Gui, Add, Text, x10 y13, Hotkey %Hk% Iteration %T7%: Move the mouse to the position to be saved and press ENTER
Gui, Add, Checkbox, % "x10 y40 h13 w13 vHkey" Hk "GetMousePosToggleIteration" T7 " Checked" Hkey%Hk%GetMousePosToggleIteration%T7%, Cancel Saving and get position during hotkey execution
Gui, Add, Button, x310 y70 w90 h20 gType7GetMousePosWrite Default, Define
Gui, Add, Button, x210 y70 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y70 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y70 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Get Mouse Position
Return
Type7GetMousePosWrite:
gosub GuiSD
If (Hkey%Hk%GetMousePosToggleIteration%T7% = 0) {
MouseGetPos, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%Type7MouseYPosIteration%T7%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseXPosIteration%T7%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseYPosIteration%T7%
}
IniWrite, % Hkey%Hk%GetMousePosToggleIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GetMousePosToggleIteration%T7%
Gosub Type7LoopAdd
Return
Type7GoMousePos:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
Gui, Add, Edit, x200 y10 w20 h20 vHkey%Hk%GoMousePosIteration%T7%, % Hkey%Hk%GoMousePosIteration%T7%
Gui, Add, Text, x10 y13, Move to Mouse Position from Iteration:
Gui, Add, Button, x310 y40 w90 h20 gType7GoMousePosWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%:Mouse Position
Return
Type7GoMousePosWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%GoMousePosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%GoMousePosIteration%T7%
Gosub Type7Config2
Return
Type7MouseMove:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
If (Hkey%Hk%MouseXPosIteration%T7% is Integer) and (Hkey%Hk%MouseYPosIteration%T7% is Integer) {
MouseMove, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
} Else {
MouseMove, 960, 540
}
Gui, Add, Text, x10 y13, Hotkey %Hk% Iteration %T7%: Move the mouse to the position to be saved and press ENTER
Gui, Add, Button, x310 y40 w90 h20 gType7MouseMoveWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 - Hotkey %Hk% Iteration %T7%: Mouse Position
Return
Type7MouseMoveWrite:
gosub GuiSD
MouseGetPos, Hkey%Hk%MouseXPosIteration%T7%, Hkey%Hk%MouseYPosIteration%T7%
IniWrite, % Hkey%Hk%MouseXPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseXPosIteration%T7%
IniWrite, % Hkey%Hk%MouseYPosIteration%T7%, UnrapeKitConfig.ini, type7MousePos, Hkey%Hk%MouseYPosIteration%T7%
Gosub Type7LoopAdd
Return
Type7Spell:
GuiWidth:= 410
GuiHeight:= 140
gosub GuiBuild
Gui, Add, Text, x10 y10, % Type 7 - "Iteration " T7 " Spell Configuration"
Gui, Add, Edit, x10 y40 w110 h20 vHkey%Hk%SpellIteration%T7%, % Hkey%Hk%SpellIteration%T7%
Gui, Add, Text, x130 y43, % "Spell - Hotkey " Hk
Gui, Add, Edit, x10 y70 W70 H20 vHkey%Hk%KeyIteration%T7%, % Hkey%Hk%KeyIteration%T7%
Gui, Add, Text, x90 y73, % "Key - Hotkey " Hk
Gui, Add, Button, x310 y110 w90 h20 gType7SpellWrite Default, Define
Gui, Add, Button, x210 y110 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y110 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y110 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Type 7 Spell Configuration
Return
Type7SpellWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%SpellIteration%T7%, UnrapeKitConfig.ini, type7HotkeySpells, Hkey%Hk%SpellIteration%T7%
IniWrite, % Hkey%Hk%KeyIteration%T7%, UnrapeKitConfig.ini, type7HotkeyKey, Hkey%Hk%KeyIteration%T7%
Gosub Type7Key
Return
Type7Key:
If (Hkey%Hk%KeyIteration%T7% = "Q") {
KeyX_%Hk%Iteration%T7%:= 1440
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "W") {
KeyX_%Hk%Iteration%T7%:= 1495
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "E") {
KeyX_%Hk%Iteration%T7%:= 1550
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "R") {
KeyX_%Hk%Iteration%T7%:= 1605
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "T") {
KeyX_%Hk%Iteration%T7%:= 1655
KeyY_%Hk%Iteration%T7%:= 1045
}
If (Hkey%Hk%KeyIteration%T7% = "LButton") {
KeyX_%Hk%Iteration%T7%:= 1550
KeyY_%Hk%Iteration%T7%:= 975
}
If (Hkey%Hk%KeyIteration%T7% = "MButton") {
KeyX_%Hk%Iteration%T7%:= 1600
KeyY_%Hk%Iteration%T7%:= 975
}
If (Hkey%Hk%KeyIteration%T7% = "RButton") {
KeyX_%Hk%Iteration%T7%:= 1650
KeyY_%Hk%Iteration%T7%:= 975
}
IniWrite, % KeyX_%Hk%Iteration%T7%, UnrapeKitConfig.ini, Type7KeyCoordinates, KeyX_%Hk%Iteration%T7%
IniWrite, % KeyY_%Hk%Iteration%T7%, UnrapeKitConfig.ini, type7KeyCoordinates, KeyY_%Hk%Iteration%T7%
Gosub Type7LoopAdd
Return
Type7Send:
GuiWidth:= 410
GuiHeight:= 110
gosub GuiBuild
Gui, Add, Text, x185 y10, % "Hotkey " Hk
Gui, Add, Edit, x10 y40 w70 h20 vHkey%Hk%SendIteration%T7%, % Hkey%Hk%SendIteration%T7%
Gui, Add, Text, x90 y43, % "Iteration " T7 " Send"
Gui, Add, Button, x310 y80 w90 h20 gType7SendWrite Default, Define
Gui, Add, Button, x210 y80 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y80 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y80 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, Send Config
Return
Type7SendWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%SendIteration%T7%, UnrapeKitConfig.ini, type7Send, Hkey%Hk%SendIteration%T7%
Gosub Type7LoopAdd
Return
Type7DelayConfig:
GuiWidth:= 410
GuiHeight:= 70
gosub GuiBuild
Gui, Add, Edit, x10 y10 w130 h20 vHkey%Hk%DelayIteration%T7%, % Hkey%Hk%DelayIteration%T7%
Gui, Add, Text, x150 y13, % "Iteration " T7 " Delay"
Gui, Add, Button, x310 y40 w90 h20 gType7DelayWrite Default, Define
Gui, Add, Button, x210 y40 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x110 y40 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y40 w90 h20 gCancel, Reload
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % "Hotkey " Hk
Return
Type7DelayWrite:
gosub GuiSD
IniWrite, % Hkey%Hk%DelayIteration%T7%, UnrapeKitConfig.ini, type7Delay, Hkey%Hk%DelayIteration%T7%
Gosub Type7LoopAdd
Return
Type7GemSwap1:
Swap:= "7GemSwap1"
GoSub Type7Swap
Return
Type7GemSwap2:
Swap:= "7GemSwap2"
GoSub Type7Swap
Return
Type7EquipSwap1:
Swap:= "7EquipSwap1"
GoSub Type7Swap
Return
Type7EquipSwap2:
Swap:= "7EquipSwap2"
GoSub Type7Swap
Return
Type7Swap:
Gosub Type7LCAdd
gosub Type7SwapRead1
SysGet, SGW, 71
GuiWidth:= 650
GuiHeight:= 800
If (Swap = "7GemSwap2") {
GemSwapTab:= 1
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight% AltSubmit v7GemSwapTab_%Hk%, 1||2
Gui, Tab, 1
}
If (Swap = "7EquipSwap2") {
EquipSwapTab:= 1
Gui, Add, Tab2, w%GuiWidth% h%GuiHeight% AltSubmit v7EquipSwapTab_%Hk%, 1||2
Gui, Tab, 1
}
Gui, Color, 0x050505
Gui, Add, Picture, x0 y0, InventoryEquip.png
gosub GuiBuild
gosub Type7Radio1
gosub Type7Radio3
Gui, Add, Button, x550 y770 w90 h20 gType7SwapCoord Default, Select
Gui, Add, Button, x450 y770 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x350 y770 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y770 w90 h20 gCancel, Reload
If (Swap = "7GemSwap2") OR (Swap = "7EquipSwap2") {
GuiWidth:= 650
GuiHeight:= 800
gosub GuiBuild
Gui, Tab, 2
gosub Type7Radio2
Gui, Add, Button, x550 y770 w90 h20 gType7SwapCoord Default, Select
Gui, Add, Button, x450 y770 w90 h20 gType7LoopAdd, Skip
Gui, Add, Button, x350 y770 w90 h20 gType7LoopSubtract, Go Back
Gui, Add, Button, x10 y770 w90 h20 gCancel, Reload
}
If (Swap = "7GemSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipped Gem Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
If (Swap = "7EquipSwap2")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipment Swap: Ctrl + Tab/PgUp/PgDn To Alternate Equipment"
If (Swap = "7GemSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipped Gem Swap - Iteration " T7
If (Swap = "7EquipSwap1")
Gui, Show, w%GuiWidth% h%GuiHeight% X%Move_X% Y%Move_Y%, % Hkey%Hk%Shortcut " - Type 7: Equipment Swap - Iteration " T7
Return
Type7LCAdd:
L:= 1
C:= 1
Loop {
IniRead, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Swap%PositionType7, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7SwapCoord:
gosub GuiSD
Gosub Type7LCCoordAdd
Gosub Type7SwapWrite1
Gosub Type7SwapCoord1
gosub Type7SwapRouting
Return
Type7LCCoordAdd:
L:= 1
C:= 1
Loop {
If (RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7% = 1) {
IniWrite, % RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%, UnrapeKitConfig.ini, %Swap%PositionType7, RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
%Swap%Hotkey%Hk%Iteration%T7%_X:= 1240 + (C*53)
%Swap%Hotkey%Hk%Iteration%T7%_Y:= 560 + (L*54)
}
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7Radio1:
L:= 1
C:= 1
RadioCX:= -10
RadioCY:= 459 + L*52
Loop {
RadioCX += 39
var2 = RadioL%L%C%C%%Swap%Hotkey%Hk%Iteration%T7%
var3:= % var2
Gui, Add, Radio, % "x" RadioCX " y" RadioCY " h13 w13 v" var3 " Checked" var3
If (C = 5) or (c = 9) {
RadioCX += 1
}
If (C = 12) {
C:= 0
L+= 1
If (L > 5)
Break
}
C+= 1
}
C:= 1
L:= 1
Return
Type7Radio2:
For _, socket in SocketList1 {
var2 = % socket.name
var3 = %var2%%Swap%AltHotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
return
Type7Radio3:
For _, socket in SocketList1 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
For _, socket in SocketList2 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
For _, socket in SocketList3 {
var2 = % socket.name
var3 = %var2%%Swap%Hotkey%Hk%Iteration%T7%
RadioCX:= % socket.x
RadioCY:= % socket.y
Gui, Add, Radio, % "x" RadioCX " y"RadioCY " w13 h13 v" var3 " Checked" var3
}
return
Type7SwapRouting:
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 2) OR (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 2) {
gosub Type7SwapWrite2
gosub Type7SwapCoord2
}
If (Swap = "7GemSwap1") {
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Gosub Type7GemSwap2
}
If (Swap = "7EquipSwap1") {
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Gosub Type7EquipSwap2
}
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 1) {
IniWrite, % 7GemSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7GemSwapTab_%Hk%
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 1) {
IniWrite, % 7EquipSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7EquipSwapTab_%Hk%
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%Hotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%Hotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7GemSwap2" AND 7GemSwapTab_%Hk% = 2) {
IniWrite, % 7GemSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7GemSwapTab_%Hk%
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_Y
Return
}
If (Swap = "7EquipSwap2" AND 7EquipSwapTab_%Hk% = 2) {
IniWrite, % 7EquipSwapTab_%Hk%, UnrapeKitConfig.ini, SwapTabs, 7EquipSwapTab_%Hk%
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_X, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_X
IniWrite, % %Swap%AltHotkey%Hk%Iteration%T7%_Y, UnrapeKitConfig.ini, %Swap%CoordinatesType7, %Swap%AltHotkey%Hk%Iteration%T7%_Y
Return
}
return
Type7SwapCoord1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%Hotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%Hotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
return
Type7SwapCoord2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
var4:= % var3
If (var4 = 1) {
%Swap%AltHotkey%Hk%Iteration%T7%_X:= % socket.coordX
%Swap%AltHotkey%Hk%Iteration%T7%_Y:= % socket.coordY
}
}
Return
Type7SwapRead1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapRead2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
IniRead, %var3%, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapWrite1:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList2 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
for _, socket in SocketList3 {
var2:= % socket.name
var3= %var2%%Swap%Hotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
Type7SwapWrite2:
for _, socket in SocketList1 {
var2:= % socket.name
var3= %var2%%Swap%AltHotkey%Hk%Iteration%T7%
var4:= % var3
if (var4 = 1)
IniWrite, % var4, UnrapeKitConfig.ini, %Swap%PositionType7, %var3%, %A_Space%
}
return
;======================================================End of ConfigType7======================================================