Skip to content

Commit

Permalink
v1.53.1 merge
Browse files Browse the repository at this point in the history
- stash-ninja: new feature that overlays poe.ninja prices onto stash tabs
- item-info: fix for doryani's invitation
- tldr-tooltips: improved altar scanning and recognition
  • Loading branch information
Lailloken authored May 10, 2024
2 parents a78fa36 + b9fcf27 commit dd00218
Show file tree
Hide file tree
Showing 19 changed files with 1,030 additions and 115 deletions.
75 changes: 45 additions & 30 deletions Lailloken UI.ahk
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ Init_searchstrings()
Init_leveltracker()
Init_maptracker()
Init_qol()
Init_stash()
Init_hotkeys()
Resolution_check()

Expand Down Expand Up @@ -92,10 +93,11 @@ Return
#Include modules\ocr.ahk
#Include modules\omni-key.ahk
#Include modules\qol tools.ahk
#Include modules\screen-checks.ahk
#Include modules\search-strings.ahk
#Include modules\seed-explorer.ahk
#Include modules\settings menu.ahk
#Include modules\screen-checks.ahk
#Include modules\stash-ninja.ahk


Blank(var)
Expand Down Expand Up @@ -501,34 +503,6 @@ Init_vars()
db.item_mods := Json.Load(LLK_FileRead("data\global\item mods.json"))
db.item_bases := Json.Load(LLK_FileRead("data\global\item bases.json", 1))
db.item_drops := Json.Load(LLK_FileRead("data\global\item drop-tiers.json"))
tldr := json.Load(LLK_FileRead("data\english\TLDR-tooltips.json"))
db.altars := tldr["eldritch altars"].Clone()
db.altar_dictionary := []
For outer in ["", ""]
For index1, key in ["boss", "minions", "player"]
{
If (outer = 1)
{
If !IsObject(db.altars[key "_check"])
db.altars[key "_check"] := []
For index, array in db.altars[key]
db.altars[key "_check"].Push(array.1)
}
Else
{
For iDB, kDB in db.altars[key "_check"]
Loop, Parse, % StrReplace(kDB, "`n", " "), % A_Space
If !LLK_HasVal(db.altar_dictionary, A_LoopField)
db.altar_dictionary.Push(A_LoopField)
}
}

db.vaalareas := tldr["vaal side areas"].Clone()
db.vaalareas_dictionary := []
For key in db.vaalareas
Loop, Parse, key, % A_Space
If !LLK_HasVal(db.vaalareas_dictionary, A_LoopField)
db.vaalareas_dictionary.Push(A_LoopField)

settings := {}
settings.features := {}
Expand Down Expand Up @@ -599,7 +573,7 @@ Loop_main()
{
local
global vars, settings
static tick_helptooltips := 0, ClientFiller_count := 0, MouseHover_count := 0
static tick_helptooltips := 0, ClientFiller_count := 0, stashhover := {}

Critical
If vars.cloneframes.editing && (vars.settings.active != "clone-frames") ;in case the user closes the settings menu without saving changes, reset clone-frames settings to previous state
Expand Down Expand Up @@ -657,6 +631,47 @@ Loop_main()
MouseHover()
IteminfoOverlays()

If WinActive("ahk_group poe_ahk_window") && vars.hwnd.stash.main && !vars.stash.wait && !vars.stash.enter && (vars.stash.GUI || WinExist("ahk_id " vars.hwnd.stash.main)) && LLK_IsBetween(vars.general.xMouse, vars.client.x, vars.client.x + vars.stash.width) && LLK_IsBetween(vars.general.yMouse, vars.client.y, vars.client.y + vars.client.h)
{
tab := vars.stash.active
If !stashhover.exact || (vars.general.xMouse "," vars.general.yMouse != stashhover.exact)
&& !(LLK_IsBetween(vars.general.xMouse, stashhover.x1, stashhover.x2) && LLK_IsBetween(vars.general.yMouse, stashhover.y1, stashhover.y2))
{
stashhover := {}
For item, val in vars.stash[tab]
{
x1 := vars.client.x + val.coords.1, x2 := vars.client.x + val.coords.1 + vars.stash.box, y1 := vars.client.y + val.coords.2, y2 := vars.client.y + val.coords.2 + vars.stash.box
If LLK_IsBetween(vars.general.xMouse, x1, x2) && LLK_IsBetween(vars.general.yMouse, y1, y2)
{
stashhover := {"x1": x1, "x2": x2, "y1": y1, "y2": y2}
vars.stash.hover := item, Stash_("refresh")
Break
}
}
If Blank(stashhover.x1) && vars.stash.hover
vars.stash.hover := "", Stash_("refresh")
stashhover.exact := vars.general.xMouse "," vars.general.yMouse
}
}
Else If IsObject(stashhover) && !vars.hwnd.stash.main
stashhover := ""
Else If WinActive("ahk_group poe_ahk_window") && vars.stash.hover && !vars.stash.enter && !LLK_IsBetween(vars.general.xMouse, vars.client.x, vars.client.x + vars.stash.width)
vars.stash.hover := "", Stash_("refresh")

/*
If !vars.stash.wait && WinExist("ahk_id " vars.hwnd.stash.main)
{
If (vars.general.wMouse = vars.hwnd.stash.main) && (stashhoverHWND != vars.general.cMouse) && (check := LLK_HasVal(vars.hwnd.stash, vars.general.cMouse))
{
If (check != vars.stash.hover)
vars.stash.hover := check, Stash_("refresh")
}
Else If (vars.general.wMouse != vars.hwnd.stash.main) && vars.stash.hover
vars.stash.hover := "", Stash_("refresh")
stashhoverHWND := vars.general.cMouse
}
*/

If settings.general.hide_toolbar && WinActive("ahk_group poe_ahk_window")
{
If vars.general.wMouse && vars.hwnd.LLK_panel.main && !WinExist("ahk_id " vars.hwnd.LLK_panel.main) && LLK_IsBetween(vars.general.xMouse, vars.toolbar.x, vars.toolbar.x2) && LLK_IsBetween(vars.general.yMouse, vars.toolbar.y, vars.toolbar.y2)
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,12 @@ A light-weight AHK script with UI and QoL features for Path of Exile, emphasizin
| ![image](https://github.com/Lailloken/Lailloken-UI/assets/61888437/1c13825c-becc-45a8-b6c7-ef5e0d205846) | ![image](https://user-images.githubusercontent.com/61888437/215315302-43ffc89f-6aeb-403e-adf3-cac45928137d.png) |
<br>

### [Stash-Ninja](https://github.com/Lailloken/Lailloken-UI/wiki/Stash%E2%80%90Ninja): interactive overlay that shows poe.ninja prices inside stash tabs
| main overlay with customizable price-tags and profiles | conversion rates |
|---|---|
| ![image](https://github.com/Lailloken/Lailloken-UI/assets/61888437/c2499da9-06a7-466f-8a4b-0b4cede3c6b2) | ![image](https://github.com/Lailloken/Lailloken-UI/assets/61888437/80c38c69-9aae-4641-bba7-aeb830820781) |
<br>

### [Necropolis Lantern Highlighting (experimental)](https://github.com/Lailloken/Lailloken-UI/wiki/Necropolis): customizable highlighting for necropolis lantern mods
![image](https://github.com/Lailloken/Lailloken-UI/assets/61888437/4a0a5533-b12d-4d64-a796-135ee4960845)
<br>
Expand Down
6 changes: 6 additions & 0 deletions data/changelog.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
[
[
["1.53.1", 15301],
"stash-ninja: new feature that overlays poe.ninja prices onto stash tabs",
"item-info: fix for doryani's invitation",
"tldr-tooltips: improved altar scanning and recognition"
],
[
["1.53.0", 15300],
"hotfix 1: t17 drop-multipliers showed blank instead of 0 when shift-clicking currency",
Expand Down
32 changes: 32 additions & 0 deletions data/english/UI.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
ms_necropolis = "necropolis"
ms_screen-checks = "screen-checks"
ms_search-strings = "search-strings"
ms_stash-ninja = "stash-ninja"
ms_stream-clients = "stream-clients"
ms_tldr-tooltips = "tldr-tooltips"
ms_updater = "updater"
Expand Down Expand Up @@ -106,6 +107,7 @@
global_type = "type:"
global_add = "add"
global_calibrate = "cal"
global_calibrate = "calibrate"
global_calibrate = "calibration required"
global_import = "import"
global_test = "test"
Expand Down Expand Up @@ -150,6 +152,7 @@
global_gap = "gap"
global_pattern = "pattern" ;## as in color pattern
global_regular = "regular" ;## as in default
global_setup = "setup"

mechanic_bestiary = "bestiary"
mechanic_betrayal = "betrayal"
Expand Down Expand Up @@ -454,6 +457,17 @@



;#####################################################
;## stash-ninja
;#####################################################

;## these strings are displayed/required when using the stash-ninja feature
stash_checkerror = "couldn't find supported;stash on screen"
stash_update = "updating prices..."
stash_updateerror = "update failed, and there is no fallback data from previous successful attempts.;this might be a connection issue that fixes itself, so try again later."
stash_updateerror = "update failed"


;#####################################################
;## minor QoL features
;#####################################################
Expand Down Expand Up @@ -744,6 +758,24 @@



;#####################################################
;## settings menu: stash-ninja
;#####################################################

;## these strings are displayed/required in the "stash-ninja" section of the settings menu
m_stash_enable = "enable the stash-ninja feature"
m_stash_breach = "breach"
m_stash_currency1 = "currency"
m_stash_currency2 = "currency ii"
m_stash_delve = "delve"
m_stash_fragments = "fragment"
m_stash_scarabs = "scarab"
m_stash_leagues = "league:"
m_stash_tabs = "stash tab configuration:"
m_stash_limits = "price-range profiles:"



;#####################################################
;## settings menu: tldr-tooltips
;#####################################################
Expand Down
24 changes: 24 additions & 0 deletions data/english/help tooltips.json
Original file line number Diff line number Diff line change
Expand Up @@ -574,6 +574,30 @@
"searchstrings add": [
"type in a name and press enter"
],
"stash enable": [
"stash feature that highlights items according to rough market prices in specific stash tabs"
],
"stash calibrate": [
"move the settings window to the right side of the screen",
"open the specific stash tab in game (it CANNOT be in a tab-folder), then click this button",
"this calibration enables the omni-key to activate the overlay"
],
"stash gap": [
"refers to the horizontal gap between item boxes/slots in the stash tab",
"fine-tune this value to make the overlay scale correctly on your screen"
],
"stash limits": [
"you can configure up to 5 price-range profiles",
"profile-# (left), max price (top), min price (bot), currency-type (right)",
"leaving min/max price blank will treat them as unlimited, leaving the currency-type blank will disable the profile entirely",
"while the overlay is on screen, press number-keys 1 to 5 to switch between profiles"
],
"stash test": [
"open the selected tab in game, then long-click this button to preview the overlay"
],
"stash placeholder": [
"coming soon (tm)"
],
"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"
Expand Down
120 changes: 120 additions & 0 deletions data/global/[stash-ninja] tabs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"scarabs": [
[183, 247, "reliquary scarab"],
[0, 0, "of overlords"],
[0, 0, "of vision"],
[365, 0, "sulphite scarab"],
[0, 0, "of greed"],
[0, 0, "of fumes"],
[549, 0, "divination scarab"],
[0, 0, "of curation"],
[0, 0, "of completion"],
[183, 303, "anarchy scarab"],
[0, 0, "of gigantification"],
[0, 0, "of partnership"],
[365, 0, "ritual scarab of selectiveness"],
[0, 0, "ritual scarab of recognition"],
[0, 0, "ritual scarab of abundance"],
[549, 0, "harvest scarab"],
[0, 0, "of doubling"],
[0, 0, "of cornucopia"],
[92, 391, "bestiary scarab"],
[0, 0, "of the herd"],
[0, 0, "of duplicating"],
[0, 0, "of the shadowed crow"],
[588, 0, "harbinger scarab"],
[0, 0, "of discernment"],
[0, 0, "of regency"],
[0, 0, "of warhoards"],
[92, 452, "incursion scarab"],
[0, 0, "of invasion"],
[0, 0, "of champions"],
[0, 0, "of timelines"],
[588, 0, "domination scarab"],
[0, 0, "of abnormality"],
[0, 0, "of teachings"],
[0, 0, "of terrors"],
[342, 362, "influencing scarab of the shaper"],
[0, 0, "influencing scarab of the elder"],
[0, 0, "influencing scarab of hordes"],
[0, 0, "influencing scarab of conversion"],
[342, 420, "betrayal scarab"],
[0, 0, "of intelligence"],
[0, 0, "of reinforcements"],
[0, 0, "of perpetuation"],
[342, 478, "torment scarab"],
[0, 0, "of peculiarity"],
[0, 0, "of release"],
[0, 0, "of possession"],
[159, 535, "cartography scarab"],
[0, 0, "of ascension"],
[0, 0, "of singularity"],
[0, 0, "of corruption"],
[0, 0, "of duplication"],
[468, 0, "beyond scarab"],
[0, 0, "of haemophilia"],
[0, 0, "of corruption"],
[0, 0, "of resurgence"],
[0, 0, "of the invasion"],
[159, 593, "ambush scarab"],
[0, 0, "of hidden compartments"],
[0, 0, "of potency"],
[0, 0, "of containment"],
[0, 0, "of discernment"],
[468, 0, "ultimatum scarab"],
[0, 0, "of bribing"],
[0, 0, "of dueling"],
[0, 0, "of catalysing"],
[0, 0, "of inscription"],
[159, 653, "expedition scarab"],
[0, 0, "of runefinding"],
[0, 0, "of verisium powder"],
[0, 0, "of the skald"],
[0, 0, "of archaeology"],
[468, 0, "delirium scarab"],
[0, 0, "of mania"],
[0, 0, "of paranoia"],
[0, 0, "of neuroses"],
[0, 0, "of delusions"],
[159, 710, "legion scarab"],
[0, 0, "of officers"],
[0, 0, "of command"],
[0, 0, "of the sekhema"],
[0, 0, "of eternal conflict"],
[468, 0, "blight scarab"],
[0, 0, "of bounty"],
[0, 0, "of oils"],
[0, 0, "of blooming"],
[0, 0, "of invigoration"],
[159, 768, "abyss scarab"],
[0, 0, "of multitudes"],
[0, 0, "of emptiness"],
[0, 0, "of edifice"],
[0, 0, "of profound depth"],
[468, 0, "essence scarab"],
[0, 0, "of ascent"],
[0, 0, "of stability"],
[0, 0, "of calcification"],
[0, 0, "of adaptation"],
[288, 827, "breach scarab"],
[0, 0, "of the dreamer"],
[0, 0, "of lordship"],
[0, 0, "of splintering"],
[0, 0, "of snares"],
[0, 0, "of resonant cascade"],
[177, 886, "scarab of monstrous lineage"],
[0, 0, "scarab of adversaries"],
[0, 0, "mysterious scarab"],
[0, 0, "scarab of hunted traitors"],
[469, 0, "horned scarab of bloodlines"],
[0, 0, "horned scarab of nemeses"],
[0, 0, "horned scarab of preservation"],
[0, 0, "horned scarab of awakening"],
[0, 0, "horned scarab of tradition"],
[203, 944, "scarab of stability"],
[0, 0, "scarab of wisps"],
[0, 0, "scarab of radiant storms"],
[553, 943, "horned scarab of glittering"],
[0, 0, "horned scarab of pandemonium"]
]
}
3 changes: 1 addition & 2 deletions data/versions.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
{
"_release": [15300, "https://github.com/Lailloken/Lailloken-UI/archive/refs/heads/main.zip"],
"hotfix": 2
"_release": [15301, "https://github.com/Lailloken/Lailloken-UI/archive/refs/heads/main.zip"]
}
Binary file added img/GUI/chaos.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/GUI/divine.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/GUI/exalt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions modules/GUI.ahk
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,7 @@ GuiToolbarButtons(cHWND, hotkey)
LLK_ToolTip(LangTrans("global_releasekey") " " settings.hotkeys.tab, 10000)
KeyWait, % settings.hotkeys.tab
}
KeyWait, LButton
Reload
ExitApp
}
Expand Down
Loading

0 comments on commit dd00218

Please sign in to comment.