diff --git a/Lailloken UI.ahk b/Lailloken UI.ahk
index cef0bdb5..7a0e77d3 100644
--- a/Lailloken UI.ahk
+++ b/Lailloken UI.ahk
@@ -14,7 +14,6 @@
SetWorkingDir %A_ScriptDir%
DllCall("SetThreadDpiAwarenessContext", "ptr", -3, "ptr")
-;ComObjError(0)
OnMessage(0x0204, "RightClick")
StringCaseSense, Locale
SetKeyDelay, 100
@@ -28,12 +27,17 @@ OnExit("Exit")
Menu, Tray, Tip, Lailloken UI
Menu, Tray, Icon, img\GUI\tray.ico
-vars := {}, ini := IniBatchRead("ini\config.ini")
+vars := {}
+If FileExist("ini\") && !FileExist("ini\file check.ini") ;check ini-files for incorrect file-encoding
+ IniIntegrityCheck()
+ini := IniBatchRead("ini\config.ini")
If ini.versions["apply update"]
+{
UpdateCheck(2)
+ IniDelete, ini\config.ini, versions, apply update
+}
Else If ini.settings["update auto-check"]
UpdateCheck()
-IniDelete, ini\config.ini, versions, apply update
Init_vars()
Startup()
Init_screenchecks()
@@ -73,9 +77,15 @@ SetTimer, LogLoop, 1000
If (check := ini.versions["reload settings"])
{
- Settings_menu(check)
+ Settings_menu(check,, 0)
IniDelete, ini\config.ini, Versions, reload settings
}
+If vars.ini_integrity
+{
+ MsgBox, % "The tool tried to fix misconfigured config-files in order to resolve an AHK bug, but there was an error.`n`nTo fix this manually, you have to open the files listed below (left) in a text-editor and copy their contents into the fixed files (right), replacing everything inside:`n`n" vars.ini_integrity "`n`nThis list is also stored in ""ini\file check.ini"" in case you want to do it later.`nIf you skip this manual fix, you'll have to reconfigure those features that rely on the files listed above."
+ Reload
+ ExitApp
+}
Return
#Include modules\betrayal-info.ahk
@@ -142,12 +152,8 @@ Exit()
If (vars.system.timeout != 0) ;script exited before completing startup routines: return here to prevent storing corrupt/incomplete data in ini-files
Return
- If (Json.Dump(vars.betrayal.board) != "{}")
- {
- IniRead, ini, ini\betrayal info.ini, settings, board
- If (ini != Json.Dump(vars.betrayal.board))
- IniWrite, % """" Json.Dump(vars.betrayal.board) """", ini\betrayal info.ini, settings, board
- }
+ If IsObject(vars.betrayal.board) && (vars.betrayal.board0 != Json.Dump(vars.betrayal.board))
+ IniWrite, % """" Json.Dump(vars.betrayal.board) """", ini\betrayal info.ini, settings, board
timer := vars.leveltracker.timer
If IsNumber(timer.current_split) && (timer.current_split != timer.current_split0)
IniWrite, % vars.leveltracker.timer.current_split, ini\leveling tracker.ini, % "current run" settings.leveltracker.profile, time
@@ -246,15 +252,16 @@ HelpToolTip(HWND_key)
h := settings.general.fHeight
}
HWND_key := StrReplace(HWND_key, "|"), check := SubStr(HWND_key, 1, InStr(HWND_key, "_") - 1), control := SubStr(HWND_key, InStr(HWND_key, "_") + 1)
- HWND_checks := {"cheatsheets": "cheatsheet_menu", "maptracker": "maptracker_logs", "maptrackernotes": "maptrackernotes_edit", "notepad": 0, "leveltracker": "leveltracker_screencap", "snip": 0, "lab": 0, "searchstrings": "searchstrings_menu" ;cont
- , "updater": "update_notification", "geartracker": 0, "seed-explorer": "legion"}
+ If (check = "donation")
+ check := "settings", donation := 1
+ HWND_checks := {"cheatsheets": "cheatsheet_menu", "maptracker": "maptracker_logs", "maptrackernotes": "maptrackernotes_edit", "notepad": 0, "leveltracker": "leveltracker_screencap", "snip": 0, "lab": 0, "searchstrings": "searchstrings_menu", "updater": "update_notification", "geartracker": 0, "seed-explorer": "legion"}
If (check != "settings")
WinGetPos, xWin, yWin, wWin,, % "ahk_id "vars.hwnd[(HWND_checks[check] = 0) ? check : HWND_checks[check]].main
If (check = "lab" && InStr(control, "square"))
vars.help.lab[control] := [vars.lab.compass.rooms[StrReplace(control, "square")].name], vars.help.lab[control].1 .= (vars.help.lab[control].1 = vars.lab.room.2) ? " (" LangTrans("lab_movemarker") ")" : ""
- database := !IsObject(vars.help[check][control]) ? vars.help2 : vars.help
+ database := donation ? vars.settings.donations : !IsObject(vars.help[check][control]) ? vars.help2 : vars.help
- tooltip_width := (check = "settings") ? vars.settings.w - vars.settings.wSelection : (wWin - 2) * (check = "cheatsheets" && vars.cheatsheet_menu.type = "advanced" || check = "seed-explorer" ? 0.5 : 1)
+ tooltip_width := (check = "settings") ? vars.settings.w - vars.settings.wSelection : (wWin - 2) * (check = "cheatsheets" && vars.cheatsheet_menu.type = "advanced" ? 0.5 : 1)
If !tooltip_width
Return
@@ -280,7 +287,7 @@ HelpToolTip(HWND_key)
}
}
Else
- For index, text in database[check][control]
+ For index, text in (donation ? database[control].2 : database[check][control])
{
font := InStr(text, "(/bold)") ? "bold" : "", font .= InStr(text, "(/underline)") ? (font ? " " : "") "underline" : "", font := !font ? "norm" : font
Gui, %GUI_name%: Font, % font
@@ -354,11 +361,47 @@ IniBatchRead(file, section := "", encoding := "1200")
Return ini
}
+IniIntegrityCheck()
+{
+ local
+ global vars
+
+ If !FileExist("ini backup\")
+ FileCopyDir, ini, ini backup, 1
+ Loop, Files, ini\*.ini
+ {
+ If InStr(A_LoopFileName, " backup")
+ Continue
+ FileRead, check, *P1200 %A_LoopFilePath%
+ If !InStr(check, "[") || !InStr(check, "]")
+ {
+ FileRead, check, *P65001 %A_LoopFilePath%
+ If (StrLen(check) > 0) && (!InStr(check, "[") || !InStr(check, "]"))
+ {
+ FileMove, % A_LoopFilePath, % StrReplace(A_LoopFilePath, ".ini", " backup.ini"), 1
+ vars.ini_integrity .= (Blank(vars.ini_integrity) ? "" : "`n") "`t" StrReplace(A_LoopFilePath, ".ini", " backup.ini") " -> " A_LoopFilePath
+ }
+ Else
+ {
+ FileDelete, % A_LoopFilePath
+ If InStr(check, "[") && InStr(check, "]")
+ FileAppend, % check, % A_LoopFilePath, CP1200
+ }
+ }
+ }
+ IniWrite, % A_Now, ini\file check.ini, check, timestamp
+ If vars.ini_integrity
+ IniWrite, % StrReplace(vars.ini_integrity, "`t"), ini\file check.ini, errors
+}
+
Init_client()
{
local
global vars, settings
+ If !FileExist("ini\config.ini")
+ IniWrite, % "", ini\config.ini, settings
+
If !WinExist("ahk_exe GeForceNOW.exe") && !WinExist("ahk_exe boosteroid.exe") ;if client is not a streaming client
{
;load client-config location and double-check
@@ -407,12 +450,13 @@ Init_client()
}
;check if client's window settings have changed since the previous session
- If (ini.settings.fullscreen != vars.client.fullscreen)
+ If ini.settings.fullscreen && (ini.settings.fullscreen != vars.client.fullscreen)
{
IniWrite, % vars.client.fullscreen, ini\config.ini, Settings, fullscreen
IniWrite, 0, ini\config.ini, Settings, remove window-borders
IniDelete, ini\config.ini, Settings, custom-resolution
IniDelete, ini\config.ini, Settings, custom-width
+ ini.settings["custom-width"] := ini.settings["custom-resolution"] := "", ini.settings["remove window-borders"] := 0
}
}
Else vars.client.stream := 1, vars.client.fullscreen := "true"
@@ -459,7 +503,7 @@ Init_client()
}
}
- WinGetPos, x, y, w, h, ahk_group poe_window ;get the initial offsets, widths, and heights (separately saved as x0, y0, etc. because of potential recalculation later on)
+ WinGetPos, x, y, w, h, ahk_group poe_window
vars.client.x_offset := (vars.client.fullscreen = "false" && !vars.client.borderless) ? vars.system.xborder : 0
xTarget := (vars.client.docked = "left") ? vars.monitor.x - vars.client.x_offset : (vars.client.docked = "center") ? vars.monitor.x + (vars.monitor.w - w) / 2 : vars.monitor.x + vars.monitor.w - (w - vars.client.x_offset)
yTarget := (vars.client.docked2 = "top") ? vars.monitor.y : (vars.client.docked2 = "center") ? vars.monitor.y + (vars.monitor.h - h)/2 : vars.monitor.y + vars.monitor.h - (h - (vars.client.borderless ? 0 : vars.system.yBorder))
@@ -514,6 +558,8 @@ Init_geforce()
local
global vars, settings
+ If !FileExist("ini\geforce now.ini")
+ IniWrite, % "", ini\geforce now.ini, settings
vars.pixelsearch.variation := LLK_IniRead("ini\geforce now.ini", "Settings", "pixel-check variation", 10)
vars.imagesearch.variation := LLK_IniRead("ini\geforce now.ini", "Settings", "image-check variation", 25)
}
@@ -564,7 +610,7 @@ Init_general()
settings.updater := {"update_check": !Blank(check := ini.settings["update auto-check"]) ? check : 0}
- vars.pics := {"global": {"help": LLK_ImageCache("img\GUI\help.png")}, "maptracker": {}, "stashninja": {}}
+ vars.pics := {"global": {"help": LLK_ImageCache("img\GUI\help.png")}, "iteminfo": {}, "legion": {}, "leveltracker": {}, "maptracker": {}, "stashninja": {}}
}
Init_vars()
@@ -774,7 +820,7 @@ Loop_main()
tick_helptooltips += 1
If !Mod(tick_helptooltips, 3) || check_help
{
- If check_help && (vars.general.active_tooltip != vars.general.cMouse) && (database[check][control].Count() || InStr(control, "update changelog") || check = "lab" && !(vars.lab.mismatch || vars.lab.outdated) && InStr(control, "square")) && !WinExist("ahk_id "vars.hwnd.screencheck_info.main)
+ If check_help && (vars.general.active_tooltip != vars.general.cMouse) && (database[check][control].Count() || InStr(control, "update changelog") || check = "lab" && !(vars.lab.mismatch || vars.lab.outdated) && InStr(control, "square") || check = "donation" && vars.settings.donations[control].2.Count()) && !WinExist("ahk_id "vars.hwnd.screencheck_info.main)
HelpTooltip(check_help)
Else If (!check_help || WinExist("ahk_id "vars.hwnd.screencheck_info.main)) && WinExist("ahk_id "vars.hwnd.help_tooltips.main)
LLK_Overlay(vars.hwnd.help_tooltips.main, "destroy"), vars.general.active_tooltip := "", vars.hwnd.help_tooltips.main := ""
@@ -985,7 +1031,7 @@ SnippingTool(mode := 0)
WinSet, trans, 100
vars.hwnd.snip := {"main": hwnd}
- Gui, snip: Add, Picture, % "x"settings.general.fWidth*5 " y"settings.general.fHeight*2 " h"settings.general.fHeight " w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, snip: Add, Picture, % "x"settings.general.fWidth*5 " y"settings.general.fHeight*2 " h"settings.general.fHeight " w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.snip.help := vars.hwnd.help_tooltips["snip_about"] := hwnd
If vars.snip.w
Gui, snip: Show, % "x" vars.snip.x " y" vars.snip.y " w" vars.snip.w - vars.system.xBorder*2 " h" vars.snip.h - vars.system.caption - vars.system.yBorder*2
@@ -1710,7 +1756,7 @@ LLK_Overlay(guiHWND, mode := "show", NA := 1, gui_name0 := "")
vars.GUI.RemoveAt(A_LoopField)
}
-LLK_PanelDimensions(array, fSize, ByRef width, ByRef height, align := "left", header_offset := 0, margins := 1)
+LLK_PanelDimensions(array, fSize, ByRef width, ByRef height, align := "left", header_offset := 0, margins := 1, min_width := 0)
{
local
global vars
@@ -1719,7 +1765,21 @@ LLK_PanelDimensions(array, fSize, ByRef width, ByRef height, align := "left", he
Gui, panel_dimensions: Margin, 0, 0
Gui, panel_dimensions: Color, Black
Gui, panel_dimensions: Font, % "s"fSize + header_offset " cWhite", % vars.system.font
- width := 0, height := 0
+ width := min_width ? 9999 : 0, height := 0, string := array.1
+
+ If min_width
+ {
+ array := []
+ Loop, % Max(LLK_InStrCount(string, " "), 1)
+ {
+ outer := A_Index, new_string := ""
+ Loop, Parse, string, %A_Space%
+ new_string .= A_LoopField . (outer = A_Index ? "`n" : " ")
+ If (SubStr(new_string, 0) = "`n")
+ new_string := SubStr(new_string, 1, -1)
+ array.Push(new_string)
+ }
+ }
For index, val in array
{
@@ -1730,11 +1790,14 @@ LLK_PanelDimensions(array, fSize, ByRef width, ByRef height, align := "left", he
Gui, panel_dimensions: Font, % "norm s"fSize
WinGetPos,,, w, h, ahk_id %hwnd%
height := (h > height) ? h : height
- width := (w > width) ? w : width
+ width := (min_width && w < width || !min_width && w > width) ? w : width
+ min_string := (w = width) ? val : min_string
}
Gui, panel_dimensions: Destroy
;width := Format("{:0.0f}", width* 1.25)
+ If min_width
+ Return min_string
While Mod(width, 2)
width += 1
While Mod(height, 2)
diff --git a/README.md b/README.md
index ea337c9e..d9e70444 100644
--- a/README.md
+++ b/README.md
@@ -5,12 +5,10 @@ A light-weight AHK script with UI and QoL features for Path of Exile, emphasizin
## Download & Setup
| [![img](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_autohotkey.png)](https://www.autohotkey.com/) | [![img](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_guide.png)](https://github.com/Lailloken/Lailloken-UI/wiki) | [![img](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_download.png)](https://github.com/Lailloken/Lailloken-UI/archive/refs/heads/main.zip) | [![img](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_releases.png)](https://github.com/Lailloken/Lailloken-UI/releases) |
|---|---|---|---|
-
## Contributions
| [![image](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_translations.png)](https://github.com/Lailloken/Lailloken-UI/discussions/326) | [![image](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_issues.png)](https://github.com/Lailloken/Lailloken-UI/issues/339) | ![image](https://raw.githubusercontent.com/Lailloken/Lailloken-UI/main/img/readme/_code.png) |
|---|---|---|
-
## Context: What is this project?
show
@@ -27,7 +25,6 @@ A light-weight AHK script with UI and QoL features for Path of Exile, emphasizin
- I view this as a personal toolkit rather than a product, so certain aspects may seem rough around the edges (or simply unconventional) when compared to other PoE-related projects
-
## Transparency Notice / Things you should know
show
@@ -50,7 +47,6 @@ A light-weight AHK script with UI and QoL features for Path of Exile, emphasizin
- (weak) annecdotal evidence: I have not been banned, nor have I heard of anyone else being banned
-
## Main Features
\* = based on a user-request
@@ -158,6 +154,8 @@ A light-weight AHK script with UI and QoL features for Path of Exile, emphasizin
- `stash-ninja` uses price-data provided by [poe.ninja](https://poe.ninja/), and bulk-exchange support was implemented with [BocikPG](https://github.com/BocikPG)'s help
- `seed-explorer` uses a custom version of the timeless-jewel databases provided via [TimelessJewelData](https://github.com/KeshHere/TimelessJewelData)
+
+- [GDI+ Library for AutoHotkey](https://github.com/marius-sucan/AHK-GDIp-Library-Compilation), [GDI+ ImageSearch](https://github.com/MasterFocus/AutoHotkey/blob/master/Functions/Gdip_ImageSearch/Gdip_ImageSearch.ahk), [OCR with UWP API](https://www.autohotkey.com/boards/viewtopic.php?t=72674) enable advanced screen/image-related features
### (Temporarily-)retired / Legacy Features:
diff --git a/data/changelog.json b/data/changelog.json
index 035325d7..e279c0d8 100644
--- a/data/changelog.json
+++ b/data/changelog.json
@@ -1,4 +1,11 @@
[
+ [
+ ["1.54.1", 15401],
+ "fix: autohotkey bug caused ini-files to be misconfigured (you may have to update manually, check the full changelog)",
+ "fix: pinned mods in the map-info settings didn't work correctly",
+ "settings: restructured tabs and a bit",
+ "clone-frames: restructured settings, streamlined setup"
+ ],
[
["1.54.0", 15400],
"hotfix 1: map-tracker's image-check failed when it was the only active check",
diff --git a/data/english/UI.txt b/data/english/UI.txt
index 23f7beca..beb99e94 100644
--- a/data/english/UI.txt
+++ b/data/english/UI.txt
@@ -61,6 +61,7 @@
ms_betrayal-info = "betrayal-info"
ms_cheat-sheets = "cheat-sheets"
ms_clone-frames = "clone-frames"
+ ms_donations = "donations"
ms_hotkeys = "hotkeys"
ms_item-info = "item-info"
ms_leveling tracker = "act-tracker"
@@ -161,6 +162,8 @@
global_price = "price"
global_all = "all"
global_confirm = "confirm"
+ global_mouse = "l#m#r" ;## left, middle, right mouse-button
+ global_coordinates = "coordinates"
mechanic_bestiary = "bestiary"
mechanic_betrayal = "betrayal"
@@ -515,8 +518,8 @@
;## these strings are displayed/required in the "general" section of the settings menu
m_general_settings = "script settings:"
m_general_kill = "exit x minutes after closing the game:"
- m_general_browser = "enable browser features"
- m_general_capslock = "enable capslock-toggling" ;## by default, AHK will toggle capslock to off whenever it sends key-strokes
+ m_general_browser = "browser features"
+ m_general_capslock = "capslock-toggling" ;## by default, AHK will toggle capslock back and forth whenever it sends key-strokes
m_general_character = "active character:"
m_general_level = "lvl"
m_general_client = "game-client settings:"
@@ -542,7 +545,7 @@
m_general_start = "start test"
m_general_admin = "restart script as admin"
m_general_toolbar = "toolbar-size:"
- m_general_hidetoolbar = "permanently hide the toolbar"
+ m_general_hidetoolbar = "hide the toolbar when not in use"
diff --git a/data/english/help tooltips.json b/data/english/help tooltips.json
index 36af5311..15c16f28 100644
--- a/data/english/help tooltips.json
+++ b/data/english/help tooltips.json
@@ -6,7 +6,7 @@
],
"browser features": [
"enables additional features when accessing 3rd-party websites via the script",
- "examples:\n-> chrome calculator: auto-paste stats\n-> poe.db cluster jewels: auto-highlight type"
+ "examples:\n-> chrome calculator: auto-paste stats\n-> poe.db cluster jewels: auto-highlight type\n-> poelab.com: import layout"
],
"capslock toggling": [
"only uncheck this box if something outside of this script is bound to capslock",
@@ -18,8 +18,7 @@
"the script will restart upon selection"
],
"toolbar hide": [
- "permanently hides the button-toolbar. hold tab or move the cursor to the area to make it appear",
- "this is primarily a compatibility setting to improve variable refresh-rate (g-sync, freesync) support by hiding overlays as much as possible"
+ "permanently hides the toolbar until you hold tab or hover the cursor over its previous position"
],
"font-size": [
"– and + can be held down, the middle button resets the size"
@@ -49,22 +48,21 @@
],
"client filler": [
"blacks out the empty screen area around the client window and makes it unclickable",
- "this black area can be used to place overlays outside the client area and also prevents misclicks on background windows"
+ "this black area can be used to place overlays outside the client area, and it also prevents misclicks on background windows"
],
"window position": [
"the client has to be docked to a specific spot to ensure that overlays are positioned correctly",
- "pick a preferred position, the client will be placed there automatically every time"
+ "pick a preferred position, and the client will be placed there automatically every time"
],
"black bars": [
"the client's aspect ratio is limited to 24:10 and there will be black bars if it's wider",
- "this option repositions the script's overlays and screen-checks to compensate for this"
+ "this option repositions the script's overlays and screen-checks to compensate for that"
],
"window borders": [
- "removes borders around the client window",
- "mostly relevant for 32:9 monitor users"
+ "removes borders around the client window"
],
"write permissions": [
- "troubleshoot write permission issues on your system if the script can't create/edit files",
+ "use this to troubleshoot write-permission issues on your system if the script can't create/edit files",
"when these issues are detected, an error message will appear and ask you to run this test",
"if the test results show errors, move the script-folder to a different location or restart the script as admin, then re-run the test"
],
@@ -145,15 +143,15 @@
"enters edit-mode, which activates the section below and allows you to adjust the frame's settings"
],
"cloneframes delete": [
- "long-click to delete the clone-frame"
+ "long-click to delete this clone-frame"
],
"cloneframes toggle": [
- "enables/disables the clone-frame"
+ "enable/disable this clone-frame"
],
"cloneframes corners": [
- "edit-mode adds colored corners to the source and target frame",
- "f-keys: snap the corresponding corner to the cursor's position",
- "hitting esc or exits edit-mode"
+ "in edit-mode, source and target frames have colored corners that correspond to a mouse-button (boxes on the right)",
+ "click a button to move the corner to the cursor's current position, press or click to exit edit-mode",
+ "you can also adjust the values below for fine-tuning and more control"
],
"cloneframes scroll": [
"for fine-tuning, scroll the mouse-wheel to adjust this value by 1"
@@ -216,7 +214,7 @@
],
"iteminfo league-start": [
"adds a section where the item's stats are compared to your current gear",
- "this section replaces the base info section and requires the pixel-check to be set up correctly in the menu"
+ "this section replaces the base-stats section and requires the pixel-check to be set up correctly in the menu"
],
"iteminfo base-info": [
"adds a section that shows how the item's stats compare to the best-in-class stats",
@@ -235,11 +233,11 @@
"click a box to open the color-palette, right click to reset"
],
"iteminfo override": [
- "undesired mods will always be highlighted like t6, except fractured ones"
+ "undesired mods will always be highlighted like t6 ones, except fractured ones"
],
"iteminfo rules": [
- "single-click solution to mark larger mod groups as un/desired",
- "the name specifies which mods are affected, the color whether they'll be set to un/desired"
+ "single-click solution to mark larger mod groups as (un)desired",
+ "the name specifies which mods are affected, the color whether they'll be set to (un)desired"
],
"lang unavailable": [
"this feature is currently not available on non-english clients"
@@ -264,8 +262,7 @@
"automatically hides the overlay after a delay (except when in towns)",
"delay: x seconds after switching guide pages",
"whenever it switches pages, the overlay will be shown again and the delay will be restarted",
- "it will also be shown while holding tab",
- "this is primarily a compatibility setting to improve variable refresh-rate (g-sync, freesync) support by hiding overlays as much as possible"
+ "it will also be shown while holding tab"
],
"leveltracker fade mouse": [
"overlay will be shown while hovering the cursor over its previous area",
@@ -275,7 +272,7 @@
"notifies you when new gear can be equipped (the guide button will show a green number)",
"accessed by right-clicking the guide button in the toolbar",
"while the panel is open, omni-click items to add them to the list",
- "requires specifying your character name in the settings"
+ "you have to specify your character-name in the section of the settings first"
],
"leveltracker expbar": [
"slightly moves the guide-overlay up so it doesn't cover the exp-bar"
@@ -323,7 +320,7 @@
"if a hint is marked with a book icon, you can hold tab to see an illustration"
],
"leveltracker hotkeys enable": [
- "allows you switch guide-pages via customizable hotkeys"
+ "allows you to switch guide-pages via customizable hotkeys"
],
"leveltracker hotkeys": [
"type in a key-name and press ",
@@ -343,8 +340,7 @@
],
"maptracker hide": [
"hides the panel instead of just graying it out whenever tracking is paused (by right-clicking the button in the toolbar)",
- "check the toolbar-button to see the state of the tracker (it's also grayed out when paused)",
- "this is primarily a compatibility setting to improve variable refresh-rate (g-sync, freesync) support by hiding overlays as much as possible"
+ "check the toolbar-button to see the state of the tracker (it's also grayed out when paused)"
],
"maptracker mechanics": [
"logs certain mechanics you encounter while mapping"
@@ -376,7 +372,7 @@
],
"maptracker loot-tracker": [
"items you ctrl-click into the stash will be logged",
- "ctrl-rightclick will remove previously added items one by one",
+ "ctrl-right-click will remove previously added items one by one (similar to ctrl-z in text editing)",
"requires the image-check to be set up correctly in the menu"
],
"maptracker kill-tracker": [
@@ -401,7 +397,7 @@
"click to open the color-palette, right-click to reset to default"
],
"maptracker color leagues": [
- "used to highlight dates that correspond with a league",
+ "used to highlight dates within a certain league",
"click to open the color-palette, right-click to reset to default"
],
"mapinfo enable": [
@@ -440,7 +436,7 @@
"quantity, rarity, pack size, maps, scarabs, currency"
],
"mapinfo mod settings": [
- "below, you can customize the tiering of specific map mods, without requiring maps that have them",
+ "below, you can customize the tiering of specific map mods",
"hover over mods and press number keys 1-4 to apply highlighting, or space to strike them out",
"use the mod search to find mods, click the – and + buttons to (un)pin mods for quick access"
],
@@ -477,8 +473,7 @@
],
"notepad opacity": [
"the opacity of inactive widgets (when tab is not held down)",
- "0 = inactive widgets are hidden",
- "zero opacity is primarily a compatibility setting to improve variable refresh-rate (g-sync, freesync) support by hiding overlays as much as possible"
+ "0 = inactive widgets are hidden"
],
"lab enable": [
"simple lab layout overlay and tracker for casual runs",
@@ -561,8 +556,8 @@
"3rd-party website for regex-strings"
],
"searchstrings about": [
- "regex-strings are grouped into use-cases, e.g. gwennen, vendor, stash",
- "when pressing the omni-key, the script detects the right use-case and displays a context-menu with strings to choose from",
+ "search-strings are grouped into use-cases, e.g. gwennen, harvest, vendor",
+ "when pressing the omni-key, the script detects the right use-case and displays a list with entries to choose from",
"this detection requires manual image calibration for each use-case"
],
"searchstrings calibrate": [
@@ -617,7 +612,7 @@
"also shows exalt-equivalent prices when hovering over highlighted items or pricing items"
],
"stash bulk": [
- "right-clicking an item in a tab will open an additional panel for bulk-sale management",
+ "right-clicking an item in a tab will open an additional panel for (bulk-)sale management",
"it will only show poe.ninja prices initially:\nclick a currency icon to view open listings on the bulk exchange, or right-click it to refresh the data",
"pick a price from the list, and the panel will offer applicable bulk configurations to scroll through and pick from"
],
@@ -651,7 +646,7 @@
],
"update check": [
"checks for updates on script launch and in the background while running",
- "if there is an update available, the toolbar will turn green"
+ "if there is an update available, the main toolbar will turn green"
],
"update hotfix": [
"a hotfix release is available, you can download it below",
@@ -849,7 +844,7 @@
],
"logviewer header e-exp": [
"effective exp gained in a map (i.e. after penalties), based on your level and the monsters'",
- "you have to specify your character's name in the section of the settings menu first"
+ "you have to specify your character's name in the section of the settings first"
],
"logviewer search deaths": [
"supported inputs:\n\"x\" (exact value), \"x-y\" (between x and y), or \"x+\" (x or higher)"
@@ -971,13 +966,13 @@
},
"searchstrings": {
"config entry-about": [
- "use-cases have their own entries that will be listed in the context-menu",
- "type in a descriptive name for the string(s) and press "
+ "create a custom list of strings for this use-case by adding entries:\ntype in a descriptive name for the entry and press ",
+ "example-list for harvest crafting:\n- sacrifice corrupted map\n- sacrifice div card\n- change resistance"
],
"config entry-list": [
"click an entry to edit its string(s), long-click to remove it",
- "each line in the edit-field is an individual string",
- "adding multiple lines turns the entry into a scrollable search"
+ "paste the string(s) into the edit-field on the right:\nyou can add multiple strings per entry by pasting them into separate lines",
+ "when activating an entry with multiple strings, you can scroll the mouse-wheel to paste them into the game one after the other"
]
},
"seed-explorer": {
@@ -991,6 +986,23 @@
"the required databases have not been downloaded yet",
"click this button to start the download"
],
+ "legion notables": [
+ "the list below shows every legion notable of the current jewel type",
+ "hover over notables to see their effects, right-click them to mark them as desired"
+ ],
+ "legion notables socket": [
+ "the list below shows the resulting modifications after slotting this jewel into the selected jewel slot",
+ "hover over notables to see their effects,\nclick them to highlight their position on the in-game skilltree,\nright-click them to mark them as desired"
+ ],
+ "socket": [
+ "the list below shows the regular notables around the currently-selected jewel socket",
+ "click a notable to highlight it on the in-game skilltree, right-click it to mark it as allocated",
+ "allocated notables are highlighted green, or yellow if the current seed turns it into a desired legion notable"
+ ],
+ "tree": [
+ "click a jewel socket to load it into the explorer above, or click it again to deselect it",
+ "each socket may be labeled with numbers if the seed results in desired legion notables:\n- teal labels show the number of desired legion notables around the socket\n- yellow labels show the number of allocated notables that will turn into desired legion notables"
+ ],
"update": [
"click this button to check for database updates"
]
diff --git a/data/versions.json b/data/versions.json
index 41d8575a..e7b50279 100644
--- a/data/versions.json
+++ b/data/versions.json
@@ -1,4 +1,3 @@
{
- "_release": [15400, "https://github.com/Lailloken/Lailloken-UI/archive/refs/heads/main.zip"],
- "hotfix": 1
+ "_release": [15401, "https://github.com/Lailloken/Lailloken-UI/archive/refs/heads/main.zip"]
}
\ No newline at end of file
diff --git a/modules/GUI.ahk b/modules/GUI.ahk
index 0b6e9c87..92afb4bb 100644
--- a/modules/GUI.ahk
+++ b/modules/GUI.ahk
@@ -72,40 +72,6 @@
}
}
-GuiButton(name := "", x := "", y := "")
-{
- local
- global vars, settings
-
- If WinExist("ahk_id "vars.hwnd[name "_button"].main)
- LLK_Overlay(vars.hwnd[name "_button"].main, "destroy")
- Gui, %name%_button: New, % "-DPIScale -Caption +LastFound +AlwaysOnTop +ToolWindow HWNDhwnd" (!Blank(x) || !Blank(y) ? " +E0x20" : "") ; +E0x02000000 +E0x00080000
- Gui, %name%_button: Margin, % (name = "leveltracker") ? 2 : 0, % (name = "leveltracker") ? 2 : 0
- Gui, %name%_button: Color, % (name = "leveltracker") ? "Aqua" : "Black"
- If (name = "leveltracker")
- WinSet, TransColor, Aqua
- Else WinSet, Trans, 255
- vars.hwnd[name "_button"] := {"main": hwnd}
-
- Gui, %name%_button: Add, Picture, % "BackgroundTrans Border HWNDhwnd g"name " w"settings[name].sButton " h-1", % "img\GUI\"name (name = "leveltracker" && !vars.hwnd.leveltracker.main ? "0" : "") ".jpg"
- vars.hwnd[name "_button"].img := hwnd
- Gui, %name%_button: Show, NA x10000 y10000
- WinGetPos,,, w, h, % "ahk_id "vars.hwnd[name "_button"].main
-
- If !Blank(settings[name].xButton)
- {
- settings[name].xButton := (settings[name].xButton < 0) ? vars.client.x - vars.monitor.x : settings[name].xButton, settings[name].yButton := (settings[name].yButton < 0) ? vars.client.y - vars.monitor.y : settings[name].yButton
- xPos := (settings[name].xButton > vars.monitor.w/2 - 1) ? settings[name].xButton - w + 1 : settings[name].xButton
- xPos := (xPos + (w - 1) > vars.monitor.w - 1) ? vars.monitor.w - 1 - w : xPos ;prevent panel from leaving screen
- yPos := (settings[name].yButton > vars.monitor.h/2 - 1) ? settings[name].yButton - h + 1 : settings[name].yButton
- yPos := (yPos + (h - 1) > vars.monitor.h - 1) ? vars.monitor.h - 1 - h : yPos ;prevent panel from leaving screen
- }
- Else xPos := vars.client.x - vars.monitor.x, yPos := vars.client.y - vars.monitor.y
-
- Gui, %name%_button: Show, % "NA x"vars.monitor.x + xPos " y"vars.monitor.y + yPos
- LLK_Overlay(vars.hwnd[name "_button"].main, "show",, name "_button")
-}
-
GuiClientFiller(mode := "") ;creates a black full-screen GUI to fill blank space between the client and monitor edges when using custom resolutions
{
local
diff --git a/modules/betrayal-info.ahk b/modules/betrayal-info.ahk
index 9e497994..383fec30 100644
--- a/modules/betrayal-info.ahk
+++ b/modules/betrayal-info.ahk
@@ -17,8 +17,8 @@
Loop 3
settings.betrayal.colors[A_Index] := !Blank(check := ini.settings["rank " A_Index " color"]) ? check : settings.betrayal.dColors[A_Index]
- If !IsObject(vars.betrayal.board) && ini.settings.board
- vars.betrayal.board := Json.Load(ini.settings.board)
+ If !IsObject(vars.betrayal.board) && (SubStr(ini.settings.board, 1, 1) . SubStr(ini.settings.board, 0) = "{}")
+ vars.betrayal.board := Json.Load(ini.settings.board), vars.betrayal.board0 := ini.settings.board
vars.betrayal.members := Json.Load(LLK_FileRead("data\" file "\Betrayal.json", 0, "65001")), vars.betrayal.members_localized := {}, vars.betrayal.divisions_localized := {}
For key in vars.betrayal.members ;create an object with localized names (solely for alphabetical ordering)
@@ -30,7 +30,6 @@
If !FileExist("ini\betrayal info.ini")
{
- IniWrite, % "", ini\betrayal info.ini, settings
IniWrite, % settings.general.fSize, ini\betrayal info.ini, Settings, font-size
For member in vars.betrayal.members
IniWrite, transportation=0`nfortification=0`nresearch=0`nintervention=0, ini\betrayal info.ini, % member
diff --git a/modules/cheat sheets.ahk b/modules/cheat sheets.ahk
index 3bddb136..f1064112 100644
--- a/modules/cheat sheets.ahk
+++ b/modules/cheat sheets.ahk
@@ -926,7 +926,7 @@ CheatsheetMenu(name, refresh := 0) ;refresh = 0 will flush data stored in vars.c
Gui, %GUI_name%: Font, underline
Gui, %GUI_name%: Add, Text, % "y+"settings.general.fHeight//2 " Section xs", % LangTrans("cheat_manage")
- Gui, %GUI_name%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI_name%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI_name%: Font, norm
Gui, %GUI_name%: Add, Text, % "Section xs HWNDhwnd1 Center w"settings.general.fWidth*2, % "00"
Gui, %GUI_name%: Add, Text, % "ys x+"settings.general.fWidth/2 " Border gCheatsheetMenu2 HWNDhwnd", % " " LangTrans("global_paste") " "
diff --git a/modules/clone-frames.ahk b/modules/clone-frames.ahk
index 5f1371db..d90b5c36 100644
--- a/modules/clone-frames.ahk
+++ b/modules/clone-frames.ahk
@@ -15,10 +15,7 @@
Else ;when calling this function to update clone-frames, destroy old GUIs just in case
{
For cloneframe in vars.cloneframes.list
- {
Gui, % StrReplace(cloneframe, " ", "_") ": Destroy"
- vars.hwnd.Delete(cloneframe)
- }
vars.cloneframes.enabled := 0, vars.cloneframes.list := {}, vars.cloneframes.editing := ""
}
@@ -273,17 +270,17 @@ CloneframesSnap(hotkey)
local
global vars, settings
- If vars.cloneframes.last
- Return
+ ;If vars.cloneframes.last
+ ; Return
name := vars.cloneframes.editing, vars.cloneframes.last := A_TickCount
Switch hotkey
{
- Case "F1":
+ Case "LButton":
;vars.cloneframes.list[name].xSource := vars.general.xMouse - vars.monitor.x, vars.cloneframes.list[name].ySource := vars.general.yMouse - vars.monitor.y
GuiControl,, % vars.hwnd.settings.xSource, % vars.general.xMouse - vars.monitor.x
GuiControl,, % vars.hwnd.settings.ySource, % vars.general.yMouse - vars.monitor.y
- Case "F2":
+ Case "RButton":
If (vars.general.xMouse - vars.monitor.x - vars.cloneframes.list[name].xSource <= 0) || (vars.general.yMouse - vars.monitor.y - vars.cloneframes.list[name].ySource <= 0) ;prevent negative widths/heights
{
LLK_ToolTip(LangTrans("m_clone_errorborders"),,,,, "red")
@@ -293,9 +290,10 @@ CloneframesSnap(hotkey)
;vars.cloneframes.list[name].height := vars.general.yMouse - vars.monitor.y - vars.cloneframes.list[name].ySource
GuiControl,, % vars.hwnd.settings.width, % vars.general.xMouse - vars.monitor.x - vars.cloneframes.list[name].xSource
GuiControl,, % vars.hwnd.settings.height, % vars.general.yMouse - vars.monitor.y - vars.cloneframes.list[name].ySource
- Case "F3":
+ Case "MButton":
;vars.cloneframes.list[name].xTarget := vars.general.xMouse - vars.monitor.x, vars.cloneframes.list[name].yTarget := vars.general.yMouse - vars.monitor.y
GuiControl,, % vars.hwnd.settings.xTarget, % vars.general.xMouse - vars.monitor.x
GuiControl,, % vars.hwnd.settings.yTarget, % vars.general.yMouse - vars.monitor.y
}
+ KeyWait, %hotkey%
}
diff --git a/modules/hotkeys.ahk b/modules/hotkeys.ahk
index 598603e1..9436056f 100644
--- a/modules/hotkeys.ahk
+++ b/modules/hotkeys.ahk
@@ -3,6 +3,9 @@
local
global vars, settings, db
+ If !FileExist("ini\hotkeys.ini")
+ IniWrite, % "", ini\hotkeys.ini, settings
+
settings.hotkeys := {}, ini := IniBatchRead("ini\hotkeys.ini")
settings.hotkeys.rebound_alt := !Blank(check := ini.settings["advanced item-info rebound"]) ? check : 0
settings.hotkeys.item_descriptions := !Blank(check := ini.hotkeys["item-descriptions key"]) ? check : ""
@@ -56,7 +59,7 @@ HotkeysESC()
global vars, settings
If vars.hwnd.cloneframe_borders.main && WinExist("ahk_id "vars.hwnd.cloneframe_borders.main)
- CloneframesSettingsRefresh()
+ CloneframesSettingsRefresh(), vars.hwnd.cloneframe_borders.main := ""
Else If WinExist("ahk_id " vars.hwnd.stash_index.main)
Stash_PriceIndex("destroy")
Else If WinExist("ahk_id " vars.hwnd.stash.main)
@@ -483,15 +486,11 @@ RButton::IteminfoGearParse(LLK_HasVal(vars.hwnd.iteminfo_comparison, vars.genera
WheelUp::
WheelDown::CloneframesSettingsApply(vars.general.cMouse, A_ThisHotkey)
-#If vars.hwnd.cloneframe_borders.main && WinExist("ahk_id "vars.hwnd.cloneframe_borders.main) ;moving clone-frame borders via f-keys
-
-F1::
-F2::
-F3::CloneframesSnap(A_ThisHotkey)
+#If vars.hwnd.cloneframe_borders.main && (vars.general.wMouse != vars.hwnd.settings.main) && WinExist("ahk_id "vars.hwnd.cloneframe_borders.main) ;moving clone-frame borders via clicks
-F1 UP::
-F2 UP::
-F3 UP::vars.cloneframes.last := ""
+LButton::
+RButton::
+MButton::CloneframesSnap(A_ThisHotkey)
#If WinActive("ahk_id "vars.hwnd.snip.main) ;moving the snip-widget via arrow keys
diff --git a/modules/item-checker.ahk b/modules/item-checker.ahk
index baccbdba..52c01a11 100644
--- a/modules/item-checker.ahk
+++ b/modules/item-checker.ahk
@@ -5,6 +5,8 @@
If !FileExist("ini\item-checker.ini")
IniWrite, % "", ini\item-checker.ini, settings
+ If !FileExist("ini\item-checker gear.ini")
+ IniWrite, % "", ini\item-checker gear.ini, amulet
lang := settings.general.lang_client
If !IsObject(db.anoints)
@@ -97,7 +99,9 @@
Gui, iteminfo_button_%key%: New, -DPIScale +LastFound +AlwaysOnTop +ToolWindow -Caption HWNDhwnd
Gui, iteminfo_button_%key%: Margin, 0, 0
- Gui, iteminfo_button_%key%: Add, Picture, % "BackgroundTrans w"vars.iteminfo.compare.dButton " h-1", img\GUI\refresh.png
+ If !vars.pics.iteminfo.refresh
+ vars.pics.iteminfo.refresh := LLK_ImageCache("img\GUI\refresh.png")
+ Gui, iteminfo_button_%key%: Add, Picture, % "BackgroundTrans w"vars.iteminfo.compare.dButton " h-1", % "HBitmap:*" vars.pics.iteminfo.refresh
Gui, iteminfo_button_%key%: Show, % "Hide x"vars.client.x + vars.client.w - vars.iteminfo.compare.xBase + vars.iteminfo.compare.slots[key].x " y"vars.client.y + vars.iteminfo.compare.slots[key].y
vars.hwnd.iteminfo_comparison[key] := hwnd
LLK_Overlay(hwnd, "hide",, "iteminfo_button_" key)
@@ -718,10 +722,14 @@ Iteminfo4_GUI()
Gui, %GUI_name%: Add, Text, % style " Right Border w"filler_width*UI.wSegment " h"UI.hSegment, % LangTrans("iteminfo_dps") " " ;add the filler cell
style := "ys", filler := 1
}
- Gui, %GUI_name%: Add, Picture, % style " Border BackgroundTrans h"UI.hSegment-2 " w-1", % "img\GUI\item info\"label ".png" ;icon for the dmg-type
+ If !vars.pics.iteminfo[label]
+ vars.pics.iteminfo[label] := LLK_ImageCache("img\GUI\item info\" label ".png")
+ Gui, %GUI_name%: Add, Picture, % style " Border BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo[label] ;icon for the dmg-type
Gui, %GUI_name%: Add, Text, % "ys Center Border w"UI.wSegment " h"UI.hSegment, % text ;dmg-text
}
- Gui, %GUI_name%: Add, Picture, % "ys Border Center BackgroundTrans h"UI.hSegment-2 " w-1", % "img\GUI\item info\damage.png" ;total-dps icon
+ If !vars.pics.iteminfo.damage
+ vars.pics.iteminfo.damage := LLK_ImageCache("img\GUI\item info\damage.png")
+ Gui, %GUI_name%: Add, Picture, % "ys Border Center BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo.damage ;total-dps icon
Gui, %GUI_name%: Add, Text, % "ys Center Border w"UI.wSegment " h"UI.hSegment, % (item.dps.total < 1000) ? Format("{:0.1f}", item.dps.total) : Format("{:0.0f}", item.dps.total) ;total-dps text
}
@@ -947,9 +955,11 @@ Iteminfo4_GUI()
label := InStr(stats_present, "armour,evasion") ? "armor_evasion" : InStr(stats_present, "armour,energy") ? "armor_energy" : "evasion_energy"
}
- If (item.anoint = "") ;add oil-text and color the cell: the two "E0x" styles in the GUI require reverse stack-order for controls, which is why the picture-control is placed before the progress one
+ If (item.anoint = "")
{
- Gui, %GUI_name%: Add, Picture, % "ys Border BackgroundTrans h"UI.hSegment-2 " w-1", % "img\GUI\item info\"label ".png"
+ If !vars.pics.iteminfo[label]
+ vars.pics.iteminfo[label] := LLK_ImageCache("img\GUI\item info\" label ".png")
+ Gui, %GUI_name%: Add, Picture, % "ys Border BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo[label]
Gui, %GUI_name%: Add, Progress, % "xp yp wp hp Border BackgroundBlack", 0
}
@@ -979,7 +989,9 @@ Iteminfo4_GUI()
{
If (item.type = "defense") ;add the cells for the base-percentile roll
{
- Gui, %GUI_name%: Add, Picture, % "ys Border BackgroundTrans h"UI.hSegment-2 " w-1", img\GUI\item info\defense.png
+ If !vars.pics.iteminfo.defense
+ vars.pics.iteminfo.defense := LLK_ImageCache("img\GUI\item info\defense.png")
+ Gui, %GUI_name%: Add, Picture, % "ys Border BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo.defense
Gui, %GUI_name%: Add, Progress, % "xp yp wp hp Border BackgroundBlack", 0
color := (item.base_percent >= 99) ? settings.iteminfo.colors_tier.1 : "404040", color1 := (color != "404040") ? "Black" : "White" ;highlight base-% bar green if >= 99
Gui, %GUI_name%: Add, Text, % "ys h"UI.hSegment " w"UI.wSegment " Border Center BackgroundTrans c"color1, % item.base_percent "%"
@@ -988,7 +1000,9 @@ Iteminfo4_GUI()
If (item.rarity != LangTrans("items_unique"))
{
- Gui, %GUI_name%: Add, Picture, % "ys Border Center BackgroundTrans h"UI.hSegment-2 " w-1", img\GUI\item info\ilvl.png
+ If !vars.pics.iteminfo.ilvl
+ vars.pics.iteminfo.ilvl := LLK_ImageCache("img\GUI\item info\ilvl.png")
+ Gui, %GUI_name%: Add, Picture, % "ys Border Center BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo.ilvl
Gui, %GUI_name%: Add, Progress, % "xp yp wp hp Border BackgroundBlack", 0
color := (item.ilvl >= item.ilvl_max) ? settings.iteminfo.colors_tier.1 : "404040", color1 := (color != "404040") ? "Black" : "White" ;highlight ilvl bar green if ilvl >= 86
Gui, %GUI_name%: Add, Text, % "ys h"UI.hSegment " w"UI.wSegment " Border Center BackgroundTrans c"color1, % (item.ilvl = 100) ? item.ilvl : item.ilvl "/" item.ilvl_max
@@ -1071,12 +1085,15 @@ Iteminfo4_GUI()
If type ;implicit has a suitable icon
{
+ If !vars.pics.iteminfo[type]
+ vars.pics.iteminfo[type] := LLK_ImageCache("img\GUI\item info\" type ".png")
+
If (height <= UI.hSegment) ;if cell is single-line height, add regular cell
- Gui, %GUI_name%: Add, Picture, % "ys h"UI.hSegment-2 " w-1 Border BackgroundTrans HWNDhwnd", % (type != "") ? "img\GUI\item info\"type ".png" : ""
+ Gui, %GUI_name%: Add, Picture, % "ys h"UI.hSegment-2 " w-1 Border BackgroundTrans HWNDhwnd", % (type != "") ? "HBitmap:*" vars.pics.iteminfo[type] : ""
Else ;if cell is multi-line height, add taller cell and place icon in the middle
{
Gui, %GUI_name%: Add, Text, % "ys wp hp Border BackgroundTrans HWNDhwnd", ;dummy text-cell with a border (can't use icon-border for this case)
- Gui, %GUI_name%: Add, Picture, % "xp+1 yp+"height/2 - UI.hSegment/2 + 1 " BackgroundTrans h"UI.hSegment-2 " w-1", % (type != "") ? "img\GUI\item info\"type ".png" : ""
+ Gui, %GUI_name%: Add, Picture, % "xp+1 yp+"height/2 - UI.hSegment/2 + 1 " BackgroundTrans h"UI.hSegment-2 " w-1", % (type != "") ? "HBitmap:*" vars.pics.iteminfo[type] : ""
}
ControlGetPos, x, y,,,, % "ahk_id " hwnd ;manually get coordinates of the appropriate control (can't use xp yp in the second case above)
Gui, %GUI_name%: Add, Progress, % "x"x-1 " y"y-1 " w"UI.wSegment/2 " h"height " Disabled Border BackgroundBlack c"color, 100
@@ -1262,12 +1279,15 @@ Iteminfo4_GUI()
If (width < UI.wSegment) && (label || settings.iteminfo.ilvl && item.class != "base jewels" && ilvl != "??") ;divide tier-cell if necessary (to add icon/ilvl)
{
+ If !vars.pics.iteminfo[label]
+ vars.pics.iteminfo[label] := LLK_ImageCache("img\GUI\item info\" label ".png")
+
If (height <= UI.hSegment) ;if the mod is single-line, enforce standardized height for the cell
{
If (settings.iteminfo.ilvl && item.class != "base jewels" && ilvl != "??")
Gui, %GUI_name%: Add, Text, % "ys h"UI.hSegment " wp Border Center BackgroundTrans HWNDhwnd c" ;cont
. (ilvl >= settings.iteminfo.ilevels.1 && (settings.iteminfo.colors_ilvl.1 = "ffffff") ? "Red" : "Black"), % ilvl ;add ilvl-cell
- Else Gui, %GUI_name%: Add, Picture, % "ys h"UI.hSegment-2 " w-1 Border BackgroundTrans HWNDhwnd", img\GUI\item info\%label%.png ;add icon-cell
+ Else Gui, %GUI_name%: Add, Picture, % "ys h"UI.hSegment-2 " w-1 Border BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.iteminfo[label] ;add icon-cell
}
Else ;if the mod is multi-line, add a taller cell
{
@@ -1277,7 +1297,7 @@ Iteminfo4_GUI()
Else
{
Gui, %GUI_name%: Add, Text, % "x+0 wp hp Border BackgroundTrans HWNDhwnd", ;add dummy text-panel with borders (can't use icon's borders for taller cells)
- Gui, %GUI_name%: Add, Picture, % "xp+1 yp+"height/2 - UI.hSegment/2 + 1 " BackgroundTrans h"UI.hSegment-2 " w-1", img\GUI\item info\%label%.png ;add icon-cell
+ Gui, %GUI_name%: Add, Picture, % "xp+1 yp+"height/2 - UI.hSegment/2 + 1 " BackgroundTrans h"UI.hSegment-2 " w-1", % "HBitmap:*" vars.pics.iteminfo[label] ;add icon-cell
}
}
ControlGetPos, x, y,,,, % "ahk_id " hwnd ;get the cells coordinates to place progress-control right onto it (can't use xp yp in cases with taller cells that also contain an icon)
@@ -1848,7 +1868,8 @@ IteminfoGearParse(slot) ;parse the info of an equipped item and save it for item
If (hotkey = "RButton") ;clear the info for the hovered gear-slot
{
vars.iteminfo.compare.slots[slot].equipped := ""
- IniDelete, ini\item-checker gear.ini, % slot
+ If FileExist("ini\item-checker gear.ini")
+ IniDelete, ini\item-checker gear.ini, % slot
LLK_ToolTip(slot " cleared")
If WinExist("ahk_id "vars.hwnd.iteminfo.main)
Iteminfo(1)
diff --git a/modules/leveling tracker.ahk b/modules/leveling tracker.ahk
index da5e36f1..437bba5b 100644
--- a/modules/leveling tracker.ahk
+++ b/modules/leveling tracker.ahk
@@ -192,7 +192,7 @@ GeartrackerGUI(mode := "")
Gui, %GUI_name%: Add, Text, % "Section"(Blank(settings.general.character) || !vars.log.level ? " cRed" : ""), % LangTrans("lvltracker_gearlist") " " (Blank(settings.general.character) ? "unknown" : settings.general.character) " (" vars.log.level ")"
Gui, %GUI_name%: Font, % "s" settings.leveltracker.fSize - 2
- Gui, %GUI_name%: Add, Pic, % "ys hp w-1 HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI_name%: Add, Pic, % "ys hp w-1 HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI_name%: Add, Checkbox, % "xs Section gGeartracker HWNDhwnd checked"vars.leveltracker.gearfilter, % LangTrans("lvltracker_gear5levels")
vars.hwnd.geartracker.filter := hwnd, vars.hwnd.help_tooltips["geartracker_about"] := hwnd0
ControlGetPos, x0, y0, w0, h0,, % "ahk_id "hwnd
@@ -957,7 +957,7 @@ LeveltrackerScreencapMenu()
Gui, %GUI_name%: Font, % "bold underline s"settings.general.fSize
Gui, %GUI_name%: Add, Text, % "xs Section HWNDanchor x"settings.general.fWidth/2, % LangTrans("global_skilltree")
Gui, %GUI_name%: Font, norm
- Gui, %GUI_name%: Add, Picture, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI_name%: Add, Picture, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["leveltracker_skilltree-cap about"] := hwnd
Loop, % files + 1
@@ -1004,7 +1004,7 @@ LeveltrackerScreencapMenu()
Gui, %GUI_name%: Font, bold underline
Gui, %GUI_name%: Add, Text, % "xs Section y+"settings.general.fHeight*0.8, % LangTrans("global_ascendancy")
- Gui, %GUI_name%: Add, Picture, % "ys hp w-1 HWNDhwnd69", img\GUI\help.png
+ Gui, %GUI_name%: Add, Picture, % "ys hp w-1 HWNDhwnd69", % "HBitmap:*" vars.pics.global.help
Gui, %GUI_name%: Font, norm
Loop 5
{
@@ -1180,7 +1180,9 @@ LeveltrackerProgress(mode := 0) ;advances the guide and redraws the overlay
If InStr(part, "(img:")
{
img := SubStr(part, InStr(part, "(img:") + 5), img := SubStr(img, 1, InStr(img, ")") - 1)
- Gui, %GUI_name_main%: Add, Picture, % style (A_Index = 1 ? "" : " x+"(InStr(step, "(hint)") ? 0 : settings.leveltracker.fWidth/2)) " BackgroundTrans "(InStr(step, "(hint)") ? "hp-2" : "h" settings.leveltracker.fHeight - 2) " w-1", % "img\GUI\leveling tracker\"img ".png"
+ If !vars.pics.leveltracker[img]
+ vars.pics.leveltracker[img] := LLK_ImageCache("img\GUI\leveling tracker\" img ".png")
+ Gui, %GUI_name_main%: Add, Picture, % style (A_Index = 1 ? "" : " x+"(InStr(step, "(hint)") ? 0 : settings.leveltracker.fWidth/2)) " BackgroundTrans "(InStr(step, "(hint)") ? "hp-2" : "h" settings.leveltracker.fHeight - 2) " w-1", % "HBitmap:*" vars.pics.leveltracker[img]
}
Else
{
@@ -1205,7 +1207,7 @@ LeveltrackerProgress(mode := 0) ;advances the guide and redraws the overlay
Loop, Files, img\GUI\leveling tracker\hints\*.jpg
If InStr(step, StrReplace(A_LoopFileName, ".jpg"))
{
- Gui, %GUI_name_main%: Add, Picture, % "ys hp w-1 x+" settings.leveltracker.fWidth, img\GUI\help.png
+ Gui, %GUI_name_main%: Add, Picture, % "ys hp w-1 x+" settings.leveltracker.fWidth, % "HBitmap:*" vars.pics.global.help
Break
}
}
diff --git a/modules/map tracker.ahk b/modules/map tracker.ahk
index 611e1eec..9983c98f 100644
--- a/modules/map tracker.ahk
+++ b/modules/map tracker.ahk
@@ -6,10 +6,9 @@
settings.features.maptracker := (settings.general.lang_client = "unknown") ? 0 : LLK_IniRead("ini\config.ini", "Features", "enable map tracker", 0)
If !FileExist("ini\map tracker.ini")
- {
IniWrite, % "", ini\map tracker.ini, settings
+ If !FileExist("ini\map tracker log.ini")
IniWrite, % "", ini\map tracker log.ini, blank
- }
If !IsObject(settings.maptracker)
settings.maptracker := {}
@@ -189,7 +188,6 @@ MaptrackerDateSelect()
WinSet, TransColor, 800080
Gui, %GUI_name%: Margin, 0, 0
Gui, %GUI_name%: Font, % "s"settings.maptracker.fSize2 + 2 " cWhite", % vars.system.font
- ;Gui, %GUI_name%: Add, Pic, % "BackgroundTrans w" wLogs " h" hLogs, % "img\GUI\square_black.png"
hwnd_old := vars.hwnd.maptracker_dates.main, vars.hwnd.maptracker_dates := {"main": maptracker_dates, "toggle": toggle}, column := []
diff --git a/modules/ocr.ahk b/modules/ocr.ahk
index e87b96c3..52f9af0a 100644
--- a/modules/ocr.ahk
+++ b/modules/ocr.ahk
@@ -3,6 +3,13 @@
local
global vars, settings, db, Json
+ If !FileExist("ini\ocr.ini")
+ IniWrite, % "", ini\ocr.ini, settings
+ If !FileExist("ini\ocr - altars.ini")
+ IniWrite, % "", ini\ocr - altars.ini, settings
+ If !FileExist("ini\ocr - vaal areas.ini")
+ IniWrite, % "", ini\ocr - vaal areas.ini, settings
+
ini := IniBatchRead("ini\ocr.ini"), settings.OCR := {"profile": 1} ;in case profiles are desired in the future
settings.OCR.allow := (!Blank(check := ini.settings["allow ocr"]) ? check : 0) * (vars.client.h > 720 ? 1 : 0)
settings.OCR.hotkey := !Blank(check := ini.settings["hotkey"]) ? check : ""
diff --git a/modules/qol tools.ahk b/modules/qol tools.ahk
index 9c6ea9f4..d9ad41bb 100644
--- a/modules/qol tools.ahk
+++ b/modules/qol tools.ahk
@@ -335,6 +335,8 @@ Lab(mode := "", override := 0)
pBitmap_copy := Gdip_CloneBitmapArea(pBitmap, 257, 42, 1175, 556,, 1), Gdip_DisposeImage(pBitmap)
pBitmap := Gdip_ResizeBitmap(pBitmap_copy, vars.client.w * 53/128, 10000, 1, 7, 1)
Gdip_SaveBitmapToFile(pBitmap, "img\lab.jpg", 100), Gdip_DisposeImage(pBitmap_copy), Gdip_DisposeImage(pBitmap)
+ If vars.pics.lab.lab
+ Gdip_DisposeImage(vars.pics.lab.lab), vars.pics.lab.lab := ""
Return
}
@@ -396,19 +398,26 @@ Lab(mode := "", override := 0)
Gui, %GUI_name%: Font, % "s"vars.lab.custom_font " cWhite", % vars.system.font
hwnd_old := vars.hwnd.lab.main, hwnd_old2 := vars.hwnd.lab.button, vars.hwnd.lab := {"main": lab}
+ If !IsObject(vars.pics.lab)
+ {
+ vars.pics.lab := {}
+ For index, val in ["square_red_trans", "square_purple_trans", "square_green_trans", "square_trans", "lab1", "lab2", "lab3"]
+ vars.pics.lab[val] := LLK_ImageCache("img\GUI\" val ".png")
+ }
+
If vars.lab.outdated
{
Gui, %GUI_name%: Font, % "s"LLK_FontSizeGet(vars.lab.height/8, width)
Gui, %GUI_name%: Add, Text, % "BackgroundTrans Center w"vars.lab.width " h"vars.lab.height, % "`n`n" LangTrans("lab_outdated") "`n`n" LangTrans("lab_outdated", 2) " " vars.lab.compass.date "`n" LangTrans("lab_outdated", 3) " " SubStr(A_NowUTC, 1, 4) "-" SubStr(A_NowUTC, 5, 2) "-" SubStr(A_NowUTC, 7, 2)
Gui, %GUI_name%: Font, % "s"vars.lab.custom_font
- Gui, %GUI_name%: Add, Pic, % "x0 y0 BackgroundTrans w"vars.lab.width " h"vars.lab.height, img\GUI\square_red_trans.png
+ Gui, %GUI_name%: Add, Pic, % "x0 y0 BackgroundTrans w"vars.lab.width " h"vars.lab.height, % "HBitmap:*" vars.pics.lab.square_red_trans
}
Else If !InStr(vars.log.areaID, "airlock") && !Blank(vars.lab.compass.difficulty) && (difficulties[vars.log.arealevel] != vars.lab.compass.difficulty)
{
Gui, %GUI_name%: Font, % "s"LLK_FontSizeGet(vars.lab.height/8, width)
Gui, %GUI_name%: Add, Text, % "BackgroundTrans Center w"vars.lab.width " h"vars.lab.height, % "`n`n" LangTrans("lab_mismatch") "`n`n" LangTrans("lab_outdated", 2) " " vars.lab.compass.difficulty "`n" LangTrans("lab_mismatch", 2) " " difficulties[vars.log.arealevel]
Gui, %GUI_name%: Font, % "s"vars.lab.custom_font
- Gui, %GUI_name%: Add, Pic, % "x0 y0 BackgroundTrans w"vars.lab.width " h"vars.lab.height, img\GUI\square_red_trans.png
+ Gui, %GUI_name%: Add, Pic, % "x0 y0 BackgroundTrans w"vars.lab.width " h"vars.lab.height, % "HBitmap:*" vars.pics.lab.square_red_trans
vars.lab.mismatch := 1
}
@@ -419,14 +428,18 @@ Lab(mode := "", override := 0)
If !Blank(LLK_HasVal(vars.lab.exits.numbers, index)) && (vars.lab.exits.numbers.Count() > 1) && !(vars.lab.room.2 = "aspirant's trial" && index > vars.lab.room.1) ;&& !(vars.lab.room.1 > index)
Gui, %GUI_name%: Add, Text, % "BackgroundTrans Center x"(room.x + 12) * scale - dim/2 " w"dim*2 " y"(room.y + 48) * scale - text_height, % SubStr(room.name, 1, 2) " " SubStr(room.name, InStr(room.name, " ") + 1, 2)
If (vars.lab.room.1 = index)
- Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, img\GUI\square_purple_trans.png
+ Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, % "HBitmap:*" vars.pics.lab.square_purple_trans
Else If vars.lab.rooms[index].Count() && vars.lab.rooms[index].name
- Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, img\GUI\square_green_trans.png
- Else Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, img\GUI\square_trans.png
+ Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, % "HBitmap:*" vars.pics.lab.square_green_trans
+ Else Gui, %GUI_name%: Add, Pic, % "BackgroundTrans HWNDhwnd x"(room.x + 12) * scale " w"dim " h"dim " y"(room.y + 48) * scale, % "HBitmap:*" vars.pics.lab.square_trans
vars.hwnd.lab["square_"index] := vars.hwnd.help_tooltips["lab_square"room.id] := hwnd
}
If FileExist("img\lab.jpg")
- Gui, %GUI_name%: Add, Pic, % "x0 y0", img\lab.jpg
+ {
+ If !vars.pics.lab.lab
+ vars.pics.lab.lab := LLK_ImageCache("img\lab.jpg")
+ Gui, %GUI_name%: Add, Pic, % "x0 y0", % "HBitmap:*" vars.pics.lab.lab
+ }
Else
{
Gui, %GUI_name%: Font, % "s"LLK_FontSizeGet(vars.lab.height/8, width)
@@ -446,7 +459,7 @@ Lab(mode := "", override := 0)
Gui, %GUI_name2%: Margin, 0, 0
Gui, %GUI_name2%: Font, % "s"vars.lab.custom_font " cWhite", % vars.system.font
- Gui, %GUI_name2%: Add, Pic, % "h"dim*0.95 " w-1 HWNDhwnd", % "img\GUI\lab" (file_missing || vars.lab.outdated || vars.lab.mismatch ? "3" : Blank(vars.lab.compass.difficulty) ? "2" : "1") ".png"
+ Gui, %GUI_name2%: Add, Pic, % "h"dim*0.95 " w-1 HWNDhwnd", % "HBitmap:*" vars.pics.lab["lab" (file_missing || vars.lab.outdated || vars.lab.mismatch ? "3" : Blank(vars.lab.compass.difficulty) ? "2" : "1")]
vars.hwnd.lab.button := lab2, vars.hwnd.help_tooltips["lab_button"] := hwnd
Gui, %GUI_name2%: Show, % "NA x"x " y"y
LLK_Overlay(lab, "show",, GUI_name), LLK_Overlay(lab2, "show",, GUI_name2)
diff --git a/modules/screen-checks.ahk b/modules/screen-checks.ahk
index 6a76aab0..4f6dbdb5 100644
--- a/modules/screen-checks.ahk
+++ b/modules/screen-checks.ahk
@@ -3,6 +3,9 @@
local
global vars, settings
+ If !FileExist("ini\screen checks (" vars.client.h "p).ini")
+ IniWrite, % "", % "ini\screen checks (" vars.client.h "p).ini", gamescreen
+
If (vars.client.h0 / vars.client.w0 < (5/12)) ;if the client is running a resolution that's wider than 21:9, there is a potential for black bars on each side
settings.general.blackbars := LLK_IniRead("ini\config.ini", "Settings", "black-bar compensation", 0) ;reminder: keep it in config.ini (instead of screen checks.ini) because it's not resolution-specific
Else settings.general.blackbars := 0
@@ -109,7 +112,9 @@ Screenchecks_ImageRecalibrate(mode := "", check := "")
text .= (!text ? " " : "`n ") LangTrans("screen_snipinstructions", A_Index) " "
vars.hwnd.snipping_tool := {"main": hwnd_gui}, align := "left", LLK_PanelDimensions([text], settings.general.fSize * 2, wText, hText)
Gui, LLK_snip: Add, Text, % "x0 y" height//2 - hText//2 " w" width " h" hText " BackgroundTrans Left HWNDhwnd_text", % text
- Gui, LLK_snip: Add, Pic, % "x0 y0 wp h" height " BackgroundTrans", img\GUI\square_black_trans.png
+ If !vars.pics.global.square_black_trans
+ vars.pics.global.square_black_trans := LLK_ImageCache("img\GUI\square_black_trans.png")
+ Gui, LLK_snip: Add, Pic, % "x0 y0 wp h" height " BackgroundTrans", % "HBitmap:*" vars.pics.global.square_black_trans
Gui, LLK_snip: Add, Pic, % "xp yp wp hp", HBitmap:*%hBitmap%*
Gui, LLK_snip: Show, NA x10000 y10000 w%width% h%height%
WinGetPos, xPos, yPos, width, height, ahk_id %hwnd_gui%
diff --git a/modules/search-strings.ahk b/modules/search-strings.ahk
index 9d7514f2..b817a9cf 100644
--- a/modules/search-strings.ahk
+++ b/modules/search-strings.ahk
@@ -142,7 +142,7 @@ StringMenu(name)
Gui, %GUI_name%: Add, Text, % "Section xs HWNDhwnd x"settings.general.fWidth/2, % LangTrans("global_newentry")
WinGetPos,, yPos,,, ahk_id %hwnd%
Gui, %GUI_name%: Font, % "norm s"settings.general.fSize - 2
- Gui, %GUI_name%: Add, Picture, % "ys BackgroundTrans hp w-1 HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI_name%: Add, Picture, % "ys BackgroundTrans hp w-1 HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI_name%: Add, Edit, % "xs w"settings.general.fWidth*15 " cBlack HWNDhwnd",
vars.hwnd.help_tooltips["searchstrings_config entry-about"] := hwnd0, vars.hwnd.searchstrings_menu.name := hwnd
WinGetPos, xPos,, width,, ahk_id %hwnd%
@@ -157,7 +157,7 @@ StringMenu(name)
Gui, %GUI_name%: Font, % "bold underline s"settings.general.fSize
Gui, %GUI_name%: Add, Text, % "Section xs y+"settings.general.fHeight*0.8 " Center BackgroundTrans", % LangTrans("global_savedentry")
Gui, %GUI_name%: Font, norm
- Gui, %GUI_name%: Add, Picture, % "ys BackgroundTrans hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI_name%: Add, Picture, % "ys BackgroundTrans hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
WinGetPos, xPos,, width, height, ahk_id %hwnd%
vars.hwnd.help_tooltips["searchstrings_config entry-list"] := hwnd, xPos_max := (xPos + width > xPos_max) ? xPos + width : xPos_max, added := 0, header := 1
}
diff --git a/modules/seed-explorer.ahk b/modules/seed-explorer.ahk
index 41d3abee..3c9b97df 100644
--- a/modules/seed-explorer.ahk
+++ b/modules/seed-explorer.ahk
@@ -102,7 +102,7 @@ Legion(cHWND := "")
WinActivate, ahk_group poe_window
WinWaitActive, ahk_group poe_window
If vars.legion.nodes.HasKey(control)
- Clipboard := "^("StrReplace(control, " ", "\s") ")"
+ Clipboard := "^(" StrReplace(StrReplace(control, "ash frost and storm", "ash, frost and storm"), " ", "\s") ")"
Else
{
For index, val in LLK_HasVal(vars.legion.data.3, vars.legion.decoder_invert[control],,, 1)
@@ -197,8 +197,12 @@ LegionGUI()
If vars.legion.socket
{
Gui, %GUI_name%: Font, % "underline bold"
- Gui, %GUI_name%: Add, Text, % "xs y+"settings.legion.fWidth, % LangTrans("seed_notables")
+ Gui, %GUI_name%: Add, Text, % "xs Section y+"settings.legion.fWidth, % LangTrans("seed_notables")
Gui, %GUI_name%: Font, % "norm"
+
+ Gui, %GUI_name%: Add, Pic, % "ys hp w-1 HWNDhwnd x+" settings.legion.fWidth/2, % "HBitmap:*" vars.pics.global.help
+ vars.hwnd.help_tooltips["seed-explorer_legion notables socket"] := hwnd
+
mods := {}
For index, node in db.legion.sockets[vars.legion.socket].nodes
text := db.legion.jewels[vars.legion.jewel]["_decoder"][vars.legion.data.3[vars.legion.nodes[node]]], mods[text] := mods[text] ? mods[text] + 1 : 1
@@ -212,7 +216,9 @@ LegionGUI()
}
Gui, %GUI_name%: Add, Text, % "x0 y0 Border BackgroundTrans w"vars.legion.width " h"vars.monitor.h - vars.legion.width + 1
- Gui, %GUI_name%: Add, Pic, % "xp y+-1 Border HWNDhwnd w"vars.legion.width - 2 " h-1", img\GUI\legion_treemap.jpg
+ If !vars.pics.legion.treemap
+ vars.pics.legion.treemap := LLK_ImageCache("img\GUI\legion_treemap.jpg")
+ Gui, %GUI_name%: Add, Pic, % "xp y+-1 Border HWNDhwnd w"vars.legion.width - 2 " h-1", % "HBitmap:*" vars.pics.legion.treemap
vars.hwnd.legion.treemap := hwnd
Gui, %GUI_name%: Add, Text, % "Section x"xAnchor + vars.legion.width " y"yAnchor, % LangTrans("global_font") " "
@@ -224,9 +230,12 @@ LegionGUI()
vars.hwnd.legion.font_plus := hwnd
Gui, %GUI_name%: Font, % "underline bold"
- Gui, %GUI_name%: Add, Text, % "xs y+"settings.legion.fWidth/2, % vars.legion.socket ? LangTrans("seed_notables", 2) : LangTrans("seed_notables", 3)
+ Gui, %GUI_name%: Add, Text, % "xs Section y+"settings.legion.fWidth/2, % vars.legion.socket ? LangTrans("seed_notables", 2) : LangTrans("seed_notables", 3)
Gui, %GUI_name%: Font, % "norm"
+ Gui, %GUI_name%: Add, Pic, % "ys hp w-1 HWNDhwnd x+" settings.legion.fWidth/2, % "HBitmap:*" vars.pics.global.help
+ vars.hwnd.help_tooltips["seed-explorer_" (vars.legion.socket ? "socket" : "legion notables")] := hwnd
+
If !vars.legion.socket
{
For index, mod in vars.legion.jewel_mods
@@ -370,6 +379,9 @@ LegionTree()
Gui, %GUI_name%: Font, % "s"vars.legion.fSize_tree " cWhite bold", % vars.system.font
hwnd_old := vars.hwnd.legion_tree.main, vars.hwnd.legion_tree := {"main": tree}
+ Gui, %GUI_name%: Add, Pic, % "x" settings.legion.fWidth//2 " y" settings.legion.fWidth//2 " HWNDhwnd h" settings.legion.fHeight " w-1", % "HBitmap:*" vars.pics.global.help
+ vars.hwnd.help_tooltips["seed-explorer_tree"] := hwnd
+
For socket, val in db.legion.sockets
{
hAqua := 0, hYellow := 0, mods := {}
@@ -381,10 +393,15 @@ LegionTree()
hAqua += settings.legion.highlights[mod] ? count : 0
Gui, %GUI_name%: Add, Text, % "BackgroundTrans Center cYellow w"vars.legion.fHeight_tree*1.8 " x"val.x * vars.legion.width*2 " y"val.y * vars.legion.width*2, % hYellow ? hYellow : ""
Gui, %GUI_name%: Add, Text, % "BackgroundTrans Center cAqua w"vars.legion.fHeight_tree*1.8 " x"val.x * vars.legion.width*2 " y+-"vars.legion.fHeight_tree*0.2, % hAqua ? hAqua : ""
- Gui, %GUI_name%: Add, Pic, % "BackgroundTrans gLegion HWNDhwnd h"vars.legion.fHeight_tree*1.8 " w-1 x"val.x * vars.legion.width*2 " y"val.y * vars.legion.width*2, % "img\GUI\legion_socket"(socket = vars.legion.socket ? 1 : 0) ".jpg"
+ If !vars.pics.legion.socket1
+ vars.pics.legion.socket1 := LLK_ImageCache("img\GUI\legion_socket1.jpg"), vars.pics.legion.socket0 := LLK_ImageCache("img\GUI\legion_socket0.jpg")
+ Gui, %GUI_name%: Add, Pic, % "BackgroundTrans gLegion HWNDhwnd h"vars.legion.fHeight_tree*1.8 " w-1 x"val.x * vars.legion.width*2 " y"val.y * vars.legion.width*2
+ , % "HBitmap:*" vars.pics.legion["socket" (socket = vars.legion.socket ? 1 : 0)]
vars.hwnd.legion_tree["socket_"socket] := hwnd
}
- Gui, %GUI_name%: Add, Pic, % "x0 y0 Border HWNDhwnd w"vars.legion.width*2 - 3 " h-1", img\GUI\legion_treemap.jpg
+ If !vars.pics.legion.treemap
+ vars.pics.legion.treemap := LLK_ImageCache("img\GUI\legion_treemap.jpg")
+ Gui, %GUI_name%: Add, Pic, % "x0 y0 Border HWNDhwnd w"vars.legion.width*2 - 3 " h-1", % "HBitmap:*" vars.pics.legion.treemap
vars.hwnd.legion_tree.map := hwnd
Gui, %GUI_name%: Show, % "NA x" vars.monitor.x " y" vars.monitor.y + vars.monitor.h - vars.legion.width*2
LLK_Overlay(tree, "show",, GUI_name), LLK_Overlay(hwnd_old, "destroy"), vars.legion.wait := 0
diff --git a/modules/settings menu.ahk b/modules/settings menu.ahk
index c8fcadf8..b9a59246 100644
--- a/modules/settings menu.ahk
+++ b/modules/settings menu.ahk
@@ -43,7 +43,7 @@
Gui, %GUI%: Font, % "underline bold"
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_betrayal_rewards")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_betrayal rewards"] := hwnd
Gui, %GUI%: Font, % "norm"
wMembers := []
@@ -337,14 +337,14 @@ Settings_cloneframes()
global vars, settings
Init_cloneframes()
- GUI := "settings_menu" vars.settings.GUI_toggle
- Gui, %GUI%: Add, Link, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, wiki page
+ GUI := "settings_menu" vars.settings.GUI_toggle, x_anchor := vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2
+ Gui, %GUI%: Add, Link, % "Section x" x_anchor " y"vars.settings.ySelection, wiki page
If (vars.pixelsearch.gamescreen.x1 && (vars.pixelsearch.gamescreen.x1 != "ERROR") || vars.log.file_location) && settings.features.pixelchecks
{
Gui, %GUI%: Font, underline bold
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_clone_toggle")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
vars.hwnd.help_tooltips["settings_cloneframes toggle-info"] := hwnd
}
@@ -396,54 +396,55 @@ Settings_cloneframes()
If (vars.cloneframes.list.Count() = 1)
Return
+ LLK_PanelDimensions([LangTrans("global_coordinates"), LangTrans("global_width") "/" LangTrans("global_height")], settings.general.fSize, width, height)
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section HWNDhwnd y+"vars.settings.spacing, % LangTrans("m_clone_editing")
- colors := ["3399FF", "DC3220", "Yellow"], handle := "", vars.hwnd.settings.edit_text := vars.hwnd.help_tooltips["settings_cloneframes corners"handle] := hwnd
+ colors := ["3399FF", "Yellow", "DC3220"], handle := "", vars.hwnd.settings.edit_text := vars.hwnd.help_tooltips["settings_cloneframes corners"handle] := hwnd
Gui, %GUI%: Font, norm
- Loop 3
+ For index, val in vars.lang.global_mouse
{
- Gui, %GUI%: Add, Text, % "ys x+"settings.general.fWidth/2 " Center BackgroundTrans Border cBlack w"settings.general.fWidth*3, % "f" A_Index
- Gui, %GUI%: Add, Progress, % "xp yp wp hp Border BackgroundBlack HWNDhwnd c"colors[A_Index], 100
+ Gui, %GUI%: Add, Text, % "ys x+"settings.general.fWidth/2 " Center BackgroundTrans Border cBlack w"settings.general.fWidth*3, % val
+ Gui, %GUI%: Add, Progress, % "xp yp wp hp Border BackgroundBlack HWNDhwnd c"colors[index], 100
handle .= "|", vars.hwnd.help_tooltips["settings_cloneframes corners"handle] := hwnd
}
- Gui, %GUI%: Add, Text, % "xs Section c3399FFlue", % LangTrans("m_clone_sourcexy")
- Gui, %GUI%: Font, % "s"settings.general.fSize - 4
- Gui, %GUI%: Add, Edit, % "ys x+" settings.general.fWidth/2 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % vars.client.x + 4 - vars.monitor.x
+ Gui, %GUI%: Add, Text, % "xs Section c3399FF", % LangTrans("global_coordinates") ":"
+ Gui, %GUI%: Font, % "s" settings.general.fSize - 4
+ Gui, %GUI%: Add, Edit, % "ys x" x_anchor + width " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % vars.client.x + 4 - vars.monitor.x
vars.hwnd.settings.xSource := vars.cloneframes.scroll.xSource := vars.hwnd.help_tooltips["settings_cloneframes scroll"] := hwnd
- ControlGetPos, x, y,,,, ahk_id %hwnd%
Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % vars.client.y + 4 - vars.monitor.y
vars.hwnd.settings.ySource := vars.cloneframes.scroll.ySource := vars.hwnd.help_tooltips["settings_cloneframes scroll|"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize
- Gui, %GUI%: Add, Text, % "ys cDC3220", % LangTrans("m_clone_widthheight")
+ Gui, %GUI%: Add, Text, % "ys", % LangTrans("m_clone_scale")
Gui, %GUI%: Font, % "s"settings.general.fSize - 4
- Gui, %GUI%: Add, Edit, % "ys x+" settings.general.fWidth/2 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % 200
- vars.hwnd.settings.width := vars.cloneframes.scroll.width := vars.hwnd.help_tooltips["settings_cloneframes scroll||"] := hwnd
- Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % 200
- vars.hwnd.settings.height := vars.cloneframes.scroll.height := vars.hwnd.help_tooltips["settings_cloneframes scroll|||"] := hwnd
+ Gui, %GUI%: Add, Edit, % "ys x+" settings.general.fWidth/2 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*3, 100
+ vars.hwnd.settings.xScale := vars.cloneframes.scroll.xScale := vars.hwnd.help_tooltips["settings_cloneframes scroll||||||"] := hwnd
+ Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*3, 100
+ vars.hwnd.settings.yScale := vars.cloneframes.scroll.yScale := vars.hwnd.help_tooltips["settings_cloneframes scroll|||||||"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize
- Gui, %GUI%: Add, Text, % "xs Section cYellow", % LangTrans("m_clone_targetxy")
+ Gui, %GUI%: Add, Text, % "xs Section cYellow", % LangTrans("global_coordinates") ":"
Gui, %GUI%: Font, % "s"settings.general.fSize - 4
- Gui, %GUI%: Add, Edit, % "ys x"x - 1 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % Format("{:0.0f}", vars.client.xc - 100)
+ Gui, %GUI%: Add, Edit, % "ys x" x_anchor + width " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % Format("{:0.0f}", vars.client.xc - 100)
vars.hwnd.settings.xTarget := vars.cloneframes.scroll.xTarget := vars.hwnd.help_tooltips["settings_cloneframes scroll||||"] := hwnd
Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % vars.client.y + 13 - vars.monitor.y
vars.hwnd.settings.yTarget := vars.cloneframes.scroll.yTarget := vars.hwnd.help_tooltips["settings_cloneframes scroll|||||"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize
- Gui, %GUI%: Add, Text, % "ys", % LangTrans("m_clone_scale")
- Gui, %GUI%: Font, % "s"settings.general.fSize - 4
- Gui, %GUI%: Add, Edit, % "ys x+" settings.general.fWidth/2 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*3, 100
- vars.hwnd.settings.xScale := vars.cloneframes.scroll.xScale := vars.hwnd.help_tooltips["settings_cloneframes scroll||||||"] := hwnd
- Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*3, 100
- vars.hwnd.settings.yScale := vars.cloneframes.scroll.yScale := vars.hwnd.help_tooltips["settings_cloneframes scroll|||||||"] := hwnd
- Gui, %GUI%: Font, % "s"settings.general.fSize
- Gui, %GUI%: Add, Text, % "xs Section", % LangTrans("global_opacity")
+ Gui, %GUI%: Add, Text, % "ys", % LangTrans("global_opacity")
Gui, %GUI%: Add, Text, % "ys x+" settings.general.fWidth/2 " 0x200 hp Border Center HWNDhwnd w"settings.general.fWidth*2, 5
;Gui, %GUI%: Add, UpDown, % "ys hp Disabled range0-5 gSettings_cloneframes2 HWNDhwnd", 5
vars.hwnd.settings.opacity := vars.cloneframes.scroll.opacity := vars.hwnd.help_tooltips["settings_cloneframes scroll||||||||"] := hwnd
- Gui, %GUI%: Add, Text, % "ys cGray Border HWNDhwnd", % " " LangTrans("global_save") " "
+ Gui, %GUI%: Add, Text, % "xs Section cDC3220", % LangTrans("global_width") "/" LangTrans("global_height") ":"
+ Gui, %GUI%: Font, % "s"settings.general.fSize - 4
+ Gui, %GUI%: Add, Edit, % "ys x" x_anchor + width " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % 200
+ vars.hwnd.settings.width := vars.cloneframes.scroll.width := vars.hwnd.help_tooltips["settings_cloneframes scroll||"] := hwnd
+ Gui, %GUI%: Add, Edit, % "ys x+"settings.general.fWidth/4 " hp Disabled Number cBlack Right gCloneframesSettingsApply HWNDhwnd w"settings.general.fWidth*4, % 200
+ vars.hwnd.settings.height := vars.cloneframes.scroll.height := vars.hwnd.help_tooltips["settings_cloneframes scroll|||"] := hwnd
+ Gui, %GUI%: Font, % "s"settings.general.fSize
+
+ Gui, %GUI%: Add, Text, % "xs Section cGray Border HWNDhwnd", % " " LangTrans("global_save") " "
vars.hwnd.settings.save := hwnd
Gui, %GUI%: Add, Text, % "ys x+"settings.general.fWidth/4 " cGray Border HWNDhwnd", % " " LangTrans("global_discard") " "
vars.hwnd.settings.discard := hwnd
@@ -498,6 +499,8 @@ Settings_cloneframes2(cHWND)
GuiControl, movedraw, % cHWND
IniWrite, % vars.cloneframes.list[control].enable, ini\clone frames.ini, % control, enable
Init_cloneframes()
+ GuiControl, % "+c" (!vars.cloneframes.enabled ? "Gray" : "White"), % vars.hwnd.settings["clone-frames"]
+ GuiControl, % "movedraw", % vars.hwnd.settings["clone-frames"]
}
Else If (check = "save")
CloneframesSettingsSave()
@@ -508,6 +511,55 @@ Settings_cloneframes2(cHWND)
Else LLK_ToolTip("no action")
}
+Settings_donations()
+{
+ local
+ global vars, settings, JSON
+ static last_update, live_list, patterns := [["000000", "F99619"], ["000000", "F05A23"], ["FFFFFF", "F05A23"], ["Red", "FFFFFF"]]
+ , placeholder := "these are placeholders, not actual donations:`ncouldn't download the list, or it doesn't exist yet"
+
+ If !vars.settings.donations
+ vars.settings.donations := {"Le Toucan": [1, ["june 17, 2024:`ni have arrived. caw, caw"]], "Lightwoods": [4, ["december 23, 2015:`ni can offer you 2 exalted orbs for your mirror", "december 23, 2015:`nsince i'm feeling happy today, i'll give you some maps on top", "december 23, 2015:`n 5 of these?"]], "Average Redditor": [1, ["june 18, 2024:`nbruh, just enjoy the game"]], "Sanest Redditor": [3, ["august 5, 2023:`nyassss keep making more powerful and intrusive tools so ggg finally bans all ahk scripts"]], "ILoveLootsy": [2, ["february 1, 2016:`ndang yo"]]}
+
+ If (last_update + 120000 < A_TickCount)
+ {
+ Try donations_new := HTTPtoVar("https://raw.githubusercontent.com/Lailloken/Lailloken-UI/" (settings.general.dev_env ? "dev" : "main") "/img/readme/donations.json")
+ If (SubStr(donations_new, 1, 1) . SubStr(donations_new, 0) = "{}")
+ vars.settings.donations := JSON.load(donations_new), live_list := 1
+ }
+
+ last_update := A_TickCount, dimensions := [], rearrange := []
+ For key, val in vars.settings.donations
+ If !val.0
+ new_key := LLK_PanelDimensions([key], settings.general.fSize, width0, height0,,,, 1), dimensions.Push(new_key), rearrange.Push([key, new_key])
+ Else dimensions.Push(key)
+
+ For index, val in rearrange
+ {
+ If (val.1 != val.2)
+ vars.settings.donations[val.2] := vars.settings.donations[val.1].Clone(), vars.settings.donations.Delete(val.1)
+ vars.settings.donations[val.2].0 := 1
+ }
+
+ LLK_PanelDimensions(dimensions, settings.general.fSize - 2, width, height), LLK_PanelDimensions([placeholder], settings.general.fSize, wPlaceholder, hPlaceholder,,, 0)
+ columns := wPlaceholder//width
+ GUI := "settings_menu" vars.settings.GUI_toggle, x_anchor := vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2
+ Gui, %GUI%: Add, Text, % "Section x" x_anchor " y" vars.settings.yselection, special thanks to these people for donating:
+ Gui, %GUI%: Font, % "s" settings.general.fSize - 2
+ For key, val in vars.settings.donations
+ {
+ pos := (A_Index = 1) || !Mod(A_Index - 1, columns) ? "xs Section" (A_Index = 1 ? " y+" vars.settings.spacing : "") : "ys"
+ Gui, %GUI%: Add, Text, % pos " Center Border HWNDhwnd BackgroundTrans w" width " h" height " c" patterns[val.1].1 . (!InStr(key, "`n") ? " 0x200" : ""), % key
+ Gui, %GUI%: Add, Progress, % "xp+3 yp+3 wp-6 hp-6 Disabled HWNDhwnd Background" patterns[val.1].2, 0
+ Gui, %GUI%: Add, Progress, % "xp-3 yp-3 wp+6 hp+6 Disabled Background" patterns[val.1].1, 0
+ vars.hwnd.help_tooltips["donation_" key] := hwnd
+ }
+ Gui, %GUI%: Font, % "s" settings.general.fSize
+ If !live_list
+ Gui, %GUI%: Add, Text, % "xs Section cAqua y+" vars.settings.spacing, % placeholder
+ Gui, %GUI%: Add, Link, % "xs Section y+" vars.settings.spacing, how to donate
+}
+
Settings_general()
{
local
@@ -520,12 +572,6 @@ Settings_general()
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_general_settings")
Gui, %GUI%: Font, norm
- If settings.general.dev
- {
- Gui, %GUI%: Add, Checkbox, % "ys hp gSettings_general2 HWNDhwnd Checked" settings.general.dev_env, % "dev environment"
- vars.hwnd.settings.dev_env := hwnd
- }
-
Gui, %GUI%: Add, Checkbox, % "xs Section hp gSettings_general2 HWNDhwnd Checked" settings.general.kill[1], % LangTrans("m_general_kill")
vars.hwnd.settings.kill_timer := hwnd, vars.hwnd.help_tooltips["settings_kill timer"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fsize - 4 "norm"
@@ -534,9 +580,36 @@ Settings_general()
Gui, %GUI%: Font, % "s"settings.general.fsize
Gui, %GUI%: Add, Checkbox, % "xs Section HWNDhwnd gSettings_general2 Checked"settings.features.browser, % LangTrans("m_general_browser")
vars.hwnd.settings.browser := hwnd, vars.hwnd.help_tooltips["settings_browser features"] := hwnd
- Gui, %GUI%: Add, Checkbox, % "xs Section HWNDhwnd gSettings_general2 Checked" settings.general.capslock, % LangTrans("m_general_capslock")
+ Gui, %GUI%: Add, Checkbox, % "ys HWNDhwnd gSettings_general2 Checked" settings.general.capslock, % LangTrans("m_general_capslock")
vars.hwnd.settings.capslock := hwnd, vars.hwnd.help_tooltips["settings_capslock toggling"] := hwnd, check := ""
+ If vars.log.file_location
+ {
+ Gui, %GUI%: Add, Text, % "xs Section HWNDhwnd c"(settings.general.lang_client = "unknown" ? "Gray" : vars.log.level ? "Lime" : settings.general.character ? "Yellow" : "Red"), % LangTrans("m_general_character") " "
+ vars.hwnd.settings.character_text := hwnd
+ If (settings.general.lang_client != "unknown")
+ vars.hwnd.help_tooltips["settings_active character status"] := hwnd
+ Else vars.hwnd.help_tooltips["settings_lang incompatible"] := hwnd
+
+ Gui, %GUI%: Font, % "s"settings.general.fSize - 4
+ Gui, %GUI%: Add, Edit, % "ys x+0 cBlack wp r1 hp gSettings_general2 HWNDhwnd" (settings.general.lang_client = "unknown" ? " Disabled" : ""), % LLK_StringCase(settings.general.character)
+ If vars.log.level
+ Gui, %GUI%: Add, Text, % "ys x+-1 hp 0x200 Center Border", % " " LangTrans("m_general_level") " " vars.log.level " "
+ Gui, %GUI%: Font, % "s"settings.general.fSize
+ vars.hwnd.settings.character := hwnd
+ If (settings.general.lang_client != "unknown")
+ {
+ vars.hwnd.help_tooltips["settings_active character"] := hwnd
+ Gui, %GUI%: Add, Button, % "xp yp wp hp Default Hidden gSettings_general2 HWNDhwnd", % "save"
+ vars.hwnd.settings.save_character := hwnd
+ }
+ Else vars.hwnd.help_tooltips["settings_lang incompatible|"] := hwnd
+ }
+
+ Gui, %GUI%: Font, bold underline
+ Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("global_ui")
+ Gui, %GUI%: Font, norm
+
Loop, Files, data\*, R
If (A_LoopFileName = "client.txt")
parse := StrReplace(StrReplace(A_LoopFilePath, "data\"), "\client.txt"), check .= parse "|"
@@ -574,35 +647,12 @@ Settings_general()
Gui, %GUI%: Add, Checkbox, % "xs Section HWNDhwnd gSettings_general2 Checked" settings.general.hide_toolbar, % LangTrans("m_general_hidetoolbar")
vars.hwnd.settings.toolbar_hide := vars.hwnd.help_tooltips["settings_toolbar hide"] := hwnd
- If vars.log.file_location
- {
- Gui, %GUI%: Add, Text, % "xs Section HWNDhwnd c"(settings.general.lang_client = "unknown" ? "Gray" : vars.log.level ? "Lime" : settings.general.character ? "Yellow" : "Red"), % LangTrans("m_general_character") " "
- vars.hwnd.settings.character_text := hwnd
- If (settings.general.lang_client != "unknown")
- vars.hwnd.help_tooltips["settings_active character status"] := hwnd
- Else vars.hwnd.help_tooltips["settings_lang incompatible"] := hwnd
-
- Gui, %GUI%: Font, % "s"settings.general.fSize - 4
- Gui, %GUI%: Add, Edit, % "ys x+0 cBlack wp r1 hp gSettings_general2 HWNDhwnd" (settings.general.lang_client = "unknown" ? " Disabled" : ""), % LLK_StringCase(settings.general.character)
- If vars.log.level
- Gui, %GUI%: Add, Text, % "ys x+-1 hp 0x200 Center Border", % " " LangTrans("m_general_level") " " vars.log.level " "
- Gui, %GUI%: Font, % "s"settings.general.fSize
- vars.hwnd.settings.character := hwnd
- If (settings.general.lang_client != "unknown")
- {
- vars.hwnd.help_tooltips["settings_active character"] := hwnd
- Gui, %GUI%: Add, Button, % "xp yp wp hp Default Hidden gSettings_general2 HWNDhwnd", % "save"
- vars.hwnd.settings.save_character := hwnd
- }
- Else vars.hwnd.help_tooltips["settings_lang incompatible|"] := hwnd
- }
-
If !vars.client.stream
{
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_general_client")
Gui, %GUI%: Font, norm
- Gui, %GUI%: Add, Text, % "ys Border HWNDhwnd gSettings_general2", % " " LangTrans("global_restart") " "
+ Gui, %GUI%: Add, Text, % "ys Border HWNDhwnd Hidden cRed gSettings_general2", % " " LangTrans("global_restart") " "
vars.hwnd.settings.apply := hwnd
Gui, %GUI%: Add, Text, % "xs Section", % LangTrans("m_general_language", 2) " "
@@ -685,7 +735,7 @@ Settings_general()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section BackgroundTrans HWNDhwnd y+"vars.settings.spacing, % LangTrans("m_general_permissions")
vars.hwnd.settings.permissions_test := hwnd
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
Gui, %GUI%: Add, Text, % "xs Section BackgroundTrans Border gSettings_WriteTest", % " " LangTrans("m_general_start") " "
Gui, %GUI%: Add, Progress, % "xp yp wp hp Border Disabled BackgroundBlack cGreen Range0-700 HWNDhwnd", 0
@@ -773,10 +823,10 @@ Settings_general2(cHWND := "")
Reload
ExitApp
Case "custom_width":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "custom_resolution":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "apply":
width := (LLK_ControlGet(vars.hwnd.settings.custom_width) > vars.monitor.w) ? vars.monitor.w : LLK_ControlGet(vars.hwnd.settings.custom_width)
@@ -807,13 +857,13 @@ Settings_general2(cHWND := "")
Reload
ExitApp
Case "ClientFiller":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "dock":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "dock2":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "remove_borders":
state := LLK_ControlGet(cHWND), ddl_state := LLK_ControlGet(vars.hwnd.settings.custom_resolution)
@@ -822,10 +872,10 @@ Settings_general2(cHWND := "")
ddl := !ddl ? key : key "|" ddl
ddl := !InStr(ddl, ddl_state) ? "|" StrReplace(ddl, "|", "||",, 1) : "|" StrReplace(ddl, InStr(ddl, ddl_state "|") ? ddl_state "|" : ddl_state, ddl_state "||")
GuiControl,, % vars.hwnd.settings.custom_resolution, % ddl
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Case "blackbars":
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
Default:
If InStr(check, "font_")
@@ -877,14 +927,14 @@ Settings_hotkeys()
global vars, settings
GUI := "settings_menu" vars.settings.GUI_toggle, x_anchor := vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2
- Gui, %GUI%: Add, Link, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, ahk: list of keys
+ Gui, %GUI%: Add, Link, % "Section x" x_anchor " y"vars.settings.ySelection, ahk: list of keys
Gui, %GUI%: Add, Link, % "ys x+"settings.general.fWidth, ahk: formatting
If !vars.client.stream || settings.features.leveltracker
{
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_hotkeys_settings")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
}
@@ -915,7 +965,7 @@ Settings_hotkeys()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing " x" x_anchor, % LangTrans("m_hotkeys_omnikey")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_hotkeys omnikey-info"] := hwnd
Gui, %GUI%: Font, norm
@@ -953,7 +1003,7 @@ Settings_hotkeys()
Gui, %GUI%: Add, Text, % "xs Section HWNDhwnd0 cAqua", % LangTrans("m_hotkeys_emergency") " win + space"
vars.hwnd.help_tooltips["settings_hotkeys restart"] := hwnd0, vars.hwnd.settings.tabblock := hwnd, vars.hwnd.help_tooltips["settings_hotkeys omniblock|"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize + 4
- Gui, %GUI%: Add, Text, % "xs Border gSettings_hotkeys2 Section HWNDhwnd y+"vars.settings.spacing, % " " LangTrans("global_restart") " "
+ Gui, %GUI%: Add, Text, % "xs Border gSettings_hotkeys2 Hidden cRed Section HWNDhwnd y+"vars.settings.spacing, % " " LangTrans("global_restart") " "
vars.hwnd.settings.apply := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize
}
@@ -1031,7 +1081,7 @@ Settings_hotkeys2(cHWND)
Reload
ExitApp
}
- GuiControl, +cRed, % vars.hwnd.settings.apply
+ GuiControl, -Hidden, % vars.hwnd.settings.apply
GuiControl, movedraw, % vars.hwnd.settings.apply
}
@@ -1129,7 +1179,7 @@ Settings_iteminfo()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section Center BackgroundTrans HWNDhwnd0 y+"vars.settings.spacing, % LangTrans("m_iteminfo_rules")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd0", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
Gui, %GUI%: Add, Checkbox, % "xs Section gSettings_iteminfo2 HWNDhwnd01 c" colors.2 " Checked"settings.iteminfo.rules.res_weapons, % LangTrans("m_iteminfo_rules", 2)
vars.hwnd.help_tooltips["settings_iteminfo rules"] := hwnd0, vars.hwnd.settings.rule_res_weapons := hwnd01
@@ -1330,7 +1380,7 @@ Settings_leveltracker()
global vars, settings
GUI := "settings_menu" vars.settings.GUI_toggle, x_anchor := vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2
- Gui, %GUI%: Add, Link, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, wiki page
+ Gui, %GUI%: Add, Link, % "Section x" x_anchor " y"vars.settings.ySelection, wiki page
Gui, %GUI%: Add, Checkbox, % "xs y+"vars.settings.spacing " Section gSettings_leveltracker2 HWNDhwnd Checked"settings.features.leveltracker, % LangTrans("m_lvltracker_enable")
vars.hwnd.settings.enable := hwnd, vars.hwnd.help_tooltips["settings_leveltracker enable"] := hwnd
@@ -1425,7 +1475,7 @@ Settings_leveltracker()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_lvltracker_skilltree")
Gui, %GUI%: Font, norm
- Gui, %GUI%: Add, Picture, % "ys BackgroundTrans hp HWNDhwnd0 w-1", img\gui\help.png
+ Gui, %GUI%: Add, Picture, % "ys BackgroundTrans hp HWNDhwnd0 w-1", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Add, Checkbox, % "xs Section gSettings_leveltracker2 HWNDhwnd Checked"settings.leveltracker.pob, % LangTrans("m_lvltracker_pob")
vars.hwnd.help_tooltips["settings_leveltracker skilltree-info"] := hwnd0, vars.hwnd.settings.pob := vars.hwnd.help_tooltips["settings_leveltracker pob"] := hwnd
Gui, %GUI%: Add, Text, % "xs Section gSettings_leveltracker2 Border HWNDhwnd", % " " LangTrans("m_lvltracker_screencap") " "
@@ -1655,7 +1705,7 @@ Settings_mapinfo()
global vars, settings, db
GUI := "settings_menu" vars.settings.GUI_toggle, x_anchor := vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2
- Gui, %GUI%: Add, Link, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, wiki page
+ Gui, %GUI%: Add, Link, % "Section x" x_anchor " y"vars.settings.ySelection, wiki page
If (settings.general.lang_client = "unknown")
{
@@ -1733,7 +1783,7 @@ Settings_mapinfo()
Gui, %GUI%: Font, % "bold underline"
Gui, %GUI%: Add, Text, % "xs Section x" x_anchor " y+" vars.settings.spacing, % LangTrans("m_mapinfo_modsettings")
Gui, %GUI%: Font, % "norm"
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_mapinfo mod settings"] := hwnd
Gui, %GUI%: Add, Text, % "xs Section", % LangTrans("m_mapinfo_pinned")
For ID, val in settings.mapinfo.pinned
@@ -1864,7 +1914,7 @@ Settings_mapinfo2(cHWND)
Else If InStr(check, "pin_")
{
KeyWait, LButton
- IniWrite, % InStr(check, "unpin_") ? 0 : 1, ini\map info.ini, pinned, % control
+ IniWrite, % (settings.mapinfo.pinned[control] := InStr(check, "unpin_") ? 0 : 1), ini\map info.ini, pinned, % control
Settings_menu("map-info",, 0)
Return
}
@@ -1916,7 +1966,7 @@ Settings_maptracker()
If settings.maptracker.mechanics
{
Gui, %GUI%: Add, Text, % "xs Section Center xp+" settings.general.fWidth * 2, % LangTrans("m_maptracker_dialogue")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_maptracker dialogue tracking"] := hwnd, added := 0, ingame_dialogs := vars.maptracker.dialog := InStr(LLK_FileRead(vars.system.config), "output_all_dialogue_to_chat=true") ? 1 : 0
Gui, %GUI%: Font, c505050
For mechanic, type in vars.maptracker.mechanics
@@ -1930,7 +1980,7 @@ Settings_maptracker()
Gui, %GUI%: Font, cWhite
Gui, %GUI%: Add, Text, % "xs Section Center", % LangTrans("m_maptracker_screen")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_maptracker screen tracking"] := hwnd, handle := "", added := 0
Gui, %GUI%: Font, c505050
For mechanic, type in vars.maptracker.mechanics
@@ -1957,7 +2007,7 @@ Settings_maptracker()
}
Gui, %GUI%: Font, bold underline
- Gui, %GUI%: Add, Text, % "xs Section Center y+"vars.settings.spacing " x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2, % LangTrans("global_ui")
+ Gui, %GUI%: Add, Text, % "xs Section Center y+"vars.settings.spacing " x" x_anchor, % LangTrans("global_ui")
Gui, %GUI%: Font, norm
Gui, %GUI%: Add, Text, % "xs Section Center HWNDhwnd0", % LangTrans("global_panelsize") " "
Gui, %GUI%: Add, Text, % "ys x+0 Center gSettings_maptracker2 Border HWNDhwnd w"settings.general.fWidth*2, % "–"
@@ -2120,7 +2170,7 @@ Settings_menu(section, mode := 0, NA := 1) ;mode parameter is used when manually
If !IsObject(vars.settings)
{
- vars.settings := {"sections": ["general", "leveling tracker", "betrayal-info", "cheat-sheets", "clone-frames", "hotkeys", "item-info", "map-info", "mapping tracker", "minor qol tools", "necropolis", "screen-checks", "search-strings", "stash-ninja", "tldr-tooltips", "updater"], "sections2": []} ;list of sections in the settings menu
+ vars.settings := {"sections": ["general", "hotkeys", "screen-checks", "updater", "donations", "leveling tracker", "betrayal-info", "cheat-sheets", "clone-frames", "item-info", "map-info", "mapping tracker", "minor qol tools", "necropolis", "search-strings", "stash-ninja", "tldr-tooltips"], "sections2": []} ;list of sections in the settings menu
For index, val in vars.settings.sections
vars.settings.sections2.Push(LangTrans("ms_" val))
}
@@ -2161,21 +2211,24 @@ Settings_menu(section, mode := 0, NA := 1) ;mode parameter is used when manually
Gui, %GUI_name%: Add, Progress, % "xp yp wp hp Border Disabled HWNDhwnd1 BackgroundBlack cBlack", 100
ControlGetPos, x, y,,,, ahk_id %hwnd%
vars.hwnd.settings.general := hwnd, vars.settings.xSelection := x, vars.settings.ySelection := y + vars.settings.line1, vars.settings.wSelection := section_width, vars.hwnd.settings["background_general"] := hwnd1
- feature_check := {"betrayal-info": "betrayal", "cheat-sheets": "cheatsheets", "leveling tracker": "leveltracker", "mapping tracker": "maptracker", "map-info": "mapinfo", "necropolis": "necropolis", "tldr-tooltips": "OCR"}
+ feature_check := {"betrayal-info": "betrayal", "cheat-sheets": "cheatsheets", "leveling tracker": "leveltracker", "mapping tracker": "maptracker", "map-info": "mapinfo", "necropolis": "necropolis", "tldr-tooltips": "OCR", "stash-ninja": "stash"}
feature_check2 := {"item-info": 1, "mapping tracker": 1, "map-info": 1}
If !vars.general.buggy_resolutions.HasKey(vars.client.h) && !vars.general.safe_mode
{
For key, val in vars.settings.sections
{
- If (val = "general") || (val = "screen-checks") && !IsNumber(vars.pixelsearch.gamescreen.x1) || !vars.log.file_location && (val = "mapping tracker") ;cont
+ If (val = "general") || (val = "screen-checks") && !IsNumber(vars.pixelsearch.gamescreen.x1) || !vars.log.file_location && (val = "mapping tracker")
|| (WinExist("ahk_exe GeForceNOW.exe") || WinExist("ahk_exe boosteroid.exe")) && InStr("item-info, map-info", val)
continue
color := (val = "updater" && IsNumber(vars.update.1) && vars.update.1 < 0) ? " cRed" : (val = "updater" && IsNumber(vars.update.1) && vars.update.1 > 0) ? " cLime" : ""
- color := feature_check[val] && !settings.features[feature_check[val]] ? " cGray" : color, color := feature_check2[val] && (settings.general.lang_client = "unknown") ? " cGray" : color
- Gui, %GUI_name%: Add, Text, % "Section xs y+-1 wp BackgroundTrans Border gSettings_menu HWNDhwnd 0x200 h"settings.general.fHeight*1.5 color, % " " LangTrans("ms_" val) " "
+ color := feature_check[val] && !settings.features[feature_check[val]] || (val = "clone-frames") && !vars.cloneframes.enabled || (val = "search-strings") && !vars.searchstrings.enabled ? " cGray" : color, color := feature_check2[val] && (settings.general.lang_client = "unknown") ? " cGray" : color
+ color := (val = "donations") ? " cCCCC00" : color
+ Gui, %GUI_name%: Add, Text, % "Section xs y+-1 wp BackgroundTrans Border gSettings_menu HWNDhwnd 0x200 h"settings.general.fHeight*1.4 color, % " " LangTrans("ms_" val) " "
Gui, %GUI_name%: Add, Progress, % "xp yp wp hp Border Disabled HWNDhwnd1 BackgroundBlack cBlack", 100
vars.hwnd.settings[val] := hwnd, vars.hwnd.settings["background_"val] := hwnd1
+ If (val = "donations")
+ Gui, %GUI_name%: Add, Progress, % "Section xs y+0 wp Background606060 h" settings.general.fWidth//2, 0
}
}
ControlGetPos, x, yLast_section, w, hLast_section,, ahk_id %hwnd%
@@ -2237,7 +2290,7 @@ Settings_menu(section, mode := 0, NA := 1) ;mode parameter is used when manually
Else
{
Gui, %GUI_name%: Show, % "NA x" vars.monitor.x + vars.client.xc - w//2 " y" vars.monitor.y + vars.client.yc - h//2 " w"w - 1 " h"h - 2
- vars.settings.x := vars.client.x + vars.client.xc - w//2
+ vars.settings.x := vars.monitor.x + vars.client.xc - w//2
}
LLK_Overlay(vars.hwnd.settings.main, "show", NA, GUI_name), LLK_Overlay(hwnd_old, "destroy"), vars.settings.w := w, vars.settings.h := h, vars.settings.restart := vars.settings.wait := vars.settings.color := ""
}
@@ -2257,6 +2310,8 @@ Settings_menu2(section, mode := 0) ;mode parameter used when manually calling th
Settings_cheatsheets()
Case "clone-frames":
Settings_cloneframes()
+ Case "donations":
+ Settings_donations()
Case "tldr-tooltips":
Settings_OCR()
Case "hotkeys":
@@ -2342,7 +2397,7 @@ Settings_necropolis()
vars.hwnd.settings["opac_minus"] := hwndminus, vars.hwnd.settings["opac_reset"] := hwndreset, vars.hwnd.settings["opac_plus"] := hwndplus
Gui, %GUI%: Add, Text, % "xs Section y+" vars.settings.spacing, % LangTrans("m_necro_offset")
- Gui, %GUI%: Add, Pic, % "ys HWNDhwnd hp w-1", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys HWNDhwnd hp w-1", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_necro offsets"] := hwnd
LLK_PanelDimensions([LangTrans("global_width"), LangTrans("global_height")], settings.general.fSize, w1, h1), LLK_PanelDimensions([LangTrans("global_axis", 1), LangTrans("global_axis", 2)], settings.general.fSize, w2, h2), wControl := Max(w1, w2)
For index, array in [["w", "width"], ["h", "height"], ["g", "gap"], ["x", "axis"], ["y", "axis"]]
@@ -2355,7 +2410,7 @@ Settings_necropolis()
}
Gui, %GUI%: Add, Text, % "xs Section y+" vars.settings.spacing, % LangTrans("m_iteminfo_highlight")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_necro colors"] := hwnd
For index, color in settings.necropolis.colors
{
@@ -2502,7 +2557,7 @@ Settings_OCR()
Gui, %GUI%: Add, Text, % "ys x+"settings.general.fWidth/4 " Center Border gSettings_OCR2 HWNDhwnd w"settings.general.fWidth*2, % "+"
vars.hwnd.settings.font_plus := vars.hwnd.help_tooltips["settings_font-size|||"] := hwnd
Gui, %GUI%: Add, Text, % "xs Section", % LangTrans("m_iteminfo_highlight")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_ocr colors"] := hwnd
LLK_PanelDimensions([LangTrans("global_pattern") " 7"], settings.general.fSize, width, height)
@@ -2834,7 +2889,7 @@ Settings_screenchecks()
Gui, %GUI%: Add, Link, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, wiki page
Gui, %GUI%: Font, % "underline bold"
Gui, %GUI%: Add, Text, % "xs Section y+"vars.settings.spacing, % LangTrans("m_screen_pixel")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, % "norm"
vars.hwnd.help_tooltips["settings_screenchecks pixel-about"] := hwnd
@@ -2860,7 +2915,7 @@ Settings_screenchecks()
Gui, %GUI%: Font, % "s" settings.general.fSize - 4
Gui, %GUI%: Add, Edit, % "ys hp Number Limit3 r1 cBlack gSettings_screenchecks2 HWNDhwnd w" settings.general.fWidth * 3, % vars.pixelsearch.variation
Gui, %GUI%: Font, % "s" settings.general.fSize
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd1", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd1", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_screenchecks variance"] := hwnd1, vars.hwnd.settings.variance_pixel := hwnd
}
@@ -2876,7 +2931,7 @@ Settings_screenchecks()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section BackgroundTrans y+"vars.settings.spacing, % LangTrans("m_screen_image")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
vars.hwnd.help_tooltips["settings_screenchecks image-about"] := hwnd, handle := ""
@@ -2902,7 +2957,7 @@ Settings_screenchecks()
Gui, %GUI%: Font, % "s" settings.general.fSize - 4
Gui, %GUI%: Add, Edit, % "ys hp Number Limit3 r1 cBlack gSettings_screenchecks2 HWNDhwnd w" settings.general.fWidth * 3, % vars.imagesearch.variation
Gui, %GUI%: Font, % "s" settings.general.fSize
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd1", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd1", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_screenchecks variance|"] := hwnd1, vars.hwnd.settings.variance_image := hwnd
}
}
@@ -3027,7 +3082,7 @@ Settings_searchstrings()
{
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section BackgroundTrans y+"vars.settings.spacing, % LangTrans("m_search_usecases")
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd69", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd69", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, norm
}
vars.hwnd.help_tooltips["settings_searchstrings about"] := hwnd69, var := vars.searchstrings.list[string] ;short-cut variable
@@ -3054,11 +3109,13 @@ Settings_searchstrings()
Gui, %GUI%: Add, Edit, % "ys cBlack x+" settings.general.fWidth/2 " hp HWNDhwnd w"settings.general.fWidth*15
If !vars.searchstrings.list.Count()
{
- Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd69", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 BackgroundTrans HWNDhwnd69", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_searchstrings about"] := hwnd69
}
vars.hwnd.settings.name := vars.hwnd.help_tooltips["settings_searchstrings add|"] := hwnd
Gui, %GUI%: Font, % "s"settings.general.fSize
+ GuiControl, % "+c" (!vars.searchstrings.enabled ? "Gray" : "White"), % vars.hwnd.settings["search-strings"]
+ GuiControl, % "movedraw", % vars.hwnd.settings["search-strings"]
}
Settings_searchstrings2(cHWND)
@@ -3217,7 +3274,7 @@ Settings_stash()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "xs Section y+" vars.settings.spacing, % LangTrans("m_stash_tabs")
Gui, %GUI%: Font, norm
- Gui, %GUI%: Add, Pic, % "ys BackgroundTrans HWNDhwnd hp w-1", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys BackgroundTrans HWNDhwnd hp w-1", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_stash config"] := hwnd
If WinExist("ahk_id " vars.hwnd.stash.main) && vars.stash.active
@@ -3237,7 +3294,7 @@ Settings_stash()
vars.hwnd.settings["gap+_" tab] := hwnd4, vars.hwnd.settings["infolder_" tab] := vars.hwnd.help_tooltips["settings_stash in folder"] := hwnd5
Gui, %GUI%: Add, Text, % "xs Section", % LangTrans("m_stash_limits")
- Gui, %GUI%: Add, Pic, % "ys HWNDhwnd hp w-1", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys HWNDhwnd hp w-1", % "HBitmap:*" vars.pics.global.help
Gui, %GUI%: Font, % "s" settings.general.fSize - 4 " cBlack"
vars.hwnd.help_tooltips["settings_stash limits"] := hwnd, currencies := ["c", "e", "d", "%"]
Loop 5
@@ -3480,6 +3537,7 @@ Settings_updater()
Gui, %GUI%: Font, bold underline
Gui, %GUI%: Add, Text, % "Section x"vars.settings.xSelection + vars.settings.wSelection + vars.settings.xMargin*2 " y"vars.settings.ySelection, % LangTrans("global_general")
Gui, %GUI%: Font, norm
+
Gui, %GUI%: Add, Checkbox, % "Section xs HWNDhwnd gSettings_updater2 checked"settings.updater.update_check, % LangTrans("m_updater_autocheck")
Gui, %GUI%: Add, Text, % "ys", % " " ;to make the window a bit wider and improve changelog tooltips
WinGetPos,,, wCheckbox, hCheckbox, ahk_id %hwnd%
@@ -3491,6 +3549,12 @@ Settings_updater()
Gui, %GUI%: Add, Pic, % "ys hp w-1 Center Border BackgroundTrans HWNDhwnd gSettings_updater2", % "img\GUI\restart.png"
vars.hwnd.settings.update_refresh := hwnd, LLK_PanelDimensions([LangTrans("m_updater_version", 2), LangTrans("m_updater_version", 3)], settings.general.fSize, width, height)
+ If settings.general.dev
+ {
+ Gui, %GUI%: Add, Checkbox, % "ys hp gSettings_general2 HWNDhwnd Checked" settings.general.dev_env, % "dev branch"
+ vars.hwnd.settings.dev_env := hwnd
+ }
+
Gui, %GUI%: Add, Text, % "Section xs w" width, % LangTrans("m_updater_version", 2)
Gui, %GUI%: Add, Text, % "ys HWNDhwnd x+0", % vars.updater.version.2
ControlGetPos, x,,,,, ahk_id %hwnd%
@@ -3500,7 +3564,7 @@ Settings_updater()
If InStr(vars.updater.latest.1, ".")
{
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_update hotfix"] := hwnd
}
@@ -3517,7 +3581,7 @@ Settings_updater()
Gui, %GUI%: Add, Text, % "Section xs y+" vars.settings.spacing, % LangTrans("m_updater_versions")
added := {}, selected := vars.updater.selected, selected_sub := SubStr(selected, InStr(selected, ".",, 0) + 1)
Gui, %GUI%: Font, norm
- Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", img\GUI\help.png
+ Gui, %GUI%: Add, Pic, % "ys hp w-1 HWNDhwnd", % "HBitmap:*" vars.pics.global.help
vars.hwnd.help_tooltips["settings_update versions"] := hwnd
For index, val in vars.updater.changelog
@@ -3561,7 +3625,7 @@ Settings_updater()
Else If InStr("5", StrReplace(vars.update.1, "-"))
Gui, %GUI%: Add, Text, % "Section xs w" wCheckbox, % LangTrans("m_updater_error4") " " LangTrans("m_updater_error2", 2) "`n`n" LangTrans("m_updater_error2", 3)
- If InStr("345", StrReplace(vars.update.1, "-"))
+ If InStr("35", StrReplace(vars.update.1, "-"))
{
Gui, %GUI%: Add, Text, % "Section xs Center Border BackgroundTrans HWNDmanual gSettings_updater2", % " " LangTrans("m_updater_manual") " "
Gui, %GUI%: Add, Progress, % "xp yp wp hp Border HWNDbar range0-10 BackgroundBlack cGreen", 0