From 6eea0021c3671bd117ef7b2bfb7d397f2b9aa8f6 Mon Sep 17 00:00:00 2001 From: vaisest Date: Tue, 29 Sep 2026 08:16:43 +0000 Subject: [PATCH] Apply changes from https://github.com/PathOfBuildingCommunity/PathOfBuilding-PoE2/pull/2528 --- src/Classes/GemTooltip.lua.rej | 10 ++++++++++ src/Modules/CalcActiveSkill.lua | 2 +- src/Modules/CalcActiveSkill.lua.rej | 12 ++++++++++++ src/Modules/CalcPerform.lua.rej | 10 ++++++++++ src/Modules/CalcSections.lua.rej | 11 +++++++++++ 5 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 src/Classes/GemTooltip.lua.rej create mode 100644 src/Modules/CalcActiveSkill.lua.rej create mode 100644 src/Modules/CalcPerform.lua.rej create mode 100644 src/Modules/CalcSections.lua.rej diff --git a/src/Classes/GemTooltip.lua.rej b/src/Classes/GemTooltip.lua.rej new file mode 100644 index 00000000000..9cb366cc69a --- /dev/null +++ b/src/Classes/GemTooltip.lua.rej @@ -0,0 +1,10 @@ +diff a/src/Classes/GemTooltip.lua b/src/Classes/GemTooltip.lua (rejected hunks) +@@ -116,7 +116,7 @@ local function addGrantedEffectInfo(tooltip, build, gemInstance, grantedEffect, + local gemQuality = gemInstance.quality + if gemQuality > 0 + then +- tooltip:AddLine(fontSizeBig, colorCodes.GEMINFO .. " Quality: ^7" .. colorCodes.MAGIC .. gemQuality .. "%", "FONTIN SC") ++ tooltip:AddLine(fontSizeBig, colorCodes.GEMINFO .. " Quality: ^7" .. colorCodes.MAGIC .. "+".. gemQuality .. "%", "FONTIN SC") + end + if totalGlobalQuality > 0 then + tooltip:AddLine(fontSizeBig, colorCodes.MAGIC .. " +" .. totalGlobalQuality .. "% Quality from Global Modifiers", "FONTIN SC") diff --git a/src/Modules/CalcActiveSkill.lua b/src/Modules/CalcActiveSkill.lua index de16231644e..235009d70be 100644 --- a/src/Modules/CalcActiveSkill.lua +++ b/src/Modules/CalcActiveSkill.lua @@ -570,7 +570,7 @@ function calcs.buildActiveSkillModList(env, activeSkill) for _, gemProperty in ipairs((activeSkill.activeEffect.gemPropertyInfo or {})) do local value = gemProperty.value - skillModList:NewMod("GemItem".. value.key:gsub("^%l", string.upper), "BASE", value.value, gemProperty.mod.source, #gemProperty.mod > 0 and gemProperty.mod[1] or nil) + skillModList:NewMod("GemGlobal" .. value.key:gsub("^%l", string.upper), "BASE", value.value, gemProperty.mod.source, #gemProperty.mod > 0 and gemProperty.mod[1] or nil) end -- Add active gem modifiers diff --git a/src/Modules/CalcActiveSkill.lua.rej b/src/Modules/CalcActiveSkill.lua.rej new file mode 100644 index 00000000000..428472c8212 --- /dev/null +++ b/src/Modules/CalcActiveSkill.lua.rej @@ -0,0 +1,12 @@ +diff a/src/Modules/CalcActiveSkill.lua b/src/Modules/CalcActiveSkill.lua (rejected hunks) +@@ -787,6 +787,10 @@ function calcs.buildActiveSkillModList(env, activeSkill) + local gemMaxLevel = supportGrantedInheritedLevel or (activeSkill.activeEffect.srcInstance and activeSkill.activeEffect.srcInstance.level) or activeSkill.activeEffect.level + local gemMaxLevelSource = supportGrantedInheritedLevel and "Inherited Max Level" or "Max Level" + skillModList:NewMod("GemLevel", "BASE", gemMaxLevel, gemMaxLevelSource) ++ local gemBaseQuality = (activeSkill.activeEffect.srcInstance and activeSkill.activeEffect.srcInstance.quality) or activeSkill.activeEffect.quality ++ if gemBaseQuality then ++ skillModList:NewMod("GemQuality", "BASE", gemBaseQuality, "Gem Quality") ++ end + if activeSkill.activeEffect.srcInstance and activeSkill.activeEffect.srcInstance.corrupted and not (activeSkill.activeEffect.srcInstance.fromItem or activeSkill.activeEffect.srcInstance.fromTree or activeSkill.activeEffect.grantedEffect.fromItem or activeSkill.activeEffect.grantedEffect.fromTree) then + skillModList:NewMod("GemCorruptionLevel", "BASE", activeSkill.activeEffect.srcInstance.corruptLevel, "Corruption") + activeSkill.skillCfg.skillCond["GemCorrupted"] = true diff --git a/src/Modules/CalcPerform.lua.rej b/src/Modules/CalcPerform.lua.rej new file mode 100644 index 00000000000..ecfc51123cb --- /dev/null +++ b/src/Modules/CalcPerform.lua.rej @@ -0,0 +1,10 @@ +diff a/src/Modules/CalcPerform.lua b/src/Modules/CalcPerform.lua (rejected hunks) +@@ -3695,7 +3695,7 @@ function calcs.perform(env, skipEHP) + t_insert(env.player.breakdown.GemQuality, s_format("+ %d ^8(quality from supports)", totalSupportQuality)) + end + if totalGlobalQuality > 0 then +- t_insert(env.player.breakdown.GemQuality, s_format("+ %d ^8(quality from items and tree)", totalGlobalQuality)) ++ t_insert(env.player.breakdown.GemQuality, s_format("+ %d ^8(quality from global modifiers)", totalGlobalQuality)) + end + t_insert(env.player.breakdown.GemQuality, s_format("= %d", output.GemQuality)) + end diff --git a/src/Modules/CalcSections.lua.rej b/src/Modules/CalcSections.lua.rej new file mode 100644 index 00000000000..ac71acd3f06 --- /dev/null +++ b/src/Modules/CalcSections.lua.rej @@ -0,0 +1,11 @@ +diff a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua (rejected hunks) +@@ -698,7 +698,8 @@ return { + } } + } }, + { 1, "SkillTypeStats", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Skill type-specific Stats", data = { +- { label = "Gem Level", notFlag = "thorns", haveOutput = "GemHasLevel", { format = "{0:output:GemLevel}", { breakdown = "GemLevel" }, { modName = { "GemLevel" }, cfg = "skill" }, { modName = { "GemSupportLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" }, { modName = { "GemItemLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" }, { modName = { "GemCorruptionLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" } }, }, ++ { label = "Gem Level", notFlag = "thorns", haveOutput = "GemHasLevel", { format = "{0:output:GemLevel}", { breakdown = "GemLevel" }, { modName = { "GemLevel" }, cfg = "skill" }, { modName = { "GemSupportLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" }, { modName = { "GemGlobalLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" }, { modName = { "GemCorruptionLevel" }, cfg = "skill", notSkillData = "inheritsGemLevel" } }, }, ++ { label = "Gem Quality", notFlag = "thorns", haveOutput = "GemQuality", { format = "{0:output:GemQuality}%", { breakdown = "GemQuality" }, { modName = { "GemQuality" }, cfg = "skill" }, { modName = { "GemSupportQuality" }, cfg = "skill" }, { modName = { "GemGlobalQuality" }, cfg = "skill" } }, }, + { label = "Spirit Cost", color = colorCodes.SPIRIT, haveOutput = "SpiritHasCost", { format = "{0:output:SpiritCost}", { breakdown = "SpiritCost" }, { modName = { "SpiritCost", "Cost", "SpiritCostNoMult" }, cfg = "skill" }, }, }, + { label = "Spirit % Cost", color = colorCodes.SPIRIT, haveOutput = "SpiritPercentHasCost", { format = "{0:output:SpiritPercentCost}", { breakdown = "SpiritPercentCost" }, { modName = { "SpiritCost", "Cost", "SpiritCostNoMult" }, cfg = "skill" }, }, }, + { label = "Mana Cost", color = colorCodes.MANA, haveOutput = "ManaHasCost", { format = "{0:output:ManaCost}", { breakdown = "ManaCost" }, { modName = { "ManaCost", "Cost", "ManaCostNoMult" }, cfg = "skill" }, }, },