Skip to content

Commit

Permalink
Release 1.4.162
Browse files Browse the repository at this point in the history
- Fixed Cluster Jewels not regenerating when edited
- Fixed Rigwald's Curse
  • Loading branch information
Openarl committed Mar 15, 2020
1 parent 3533e77 commit efd6b91
Show file tree
Hide file tree
Showing 8 changed files with 35 additions and 16 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
### 1.4.162 - 2020/03/15
* Fixed Cluster Jewels not updating their cluster layouts when edited
* Fixed Rigwald's Curse not correctly converting Claw modifiers

### 1.4.161 - 2020/03/15
* Fixed Cluster Jewels sometimes having their added node type incorrectly recognised
* Fixed Cluster Jewels always adding the maximum number of passives
Expand Down
2 changes: 1 addition & 1 deletion Classes/ImportTab.lua
Original file line number Diff line number Diff line change
Expand Up @@ -547,7 +547,7 @@ local slotMap = { ["Weapon"] = "Weapon 1", ["Offhand"] = "Weapon 2", ["Weapon2"]
function ImportTabClass:ImportItem(itemData, slotName)
if not slotName then
if itemData.inventoryId == "PassiveJewels" then
slotName = "Jewel "..self.build.spec.tree.jewelSlots[itemData.x + 1]
slotName = "Jewel "..self.build.latestTree.jewelSlots[itemData.x + 1]
elseif itemData.inventoryId == "Flask" then
slotName = "Flask "..(itemData.x + 1)
else
Expand Down
6 changes: 2 additions & 4 deletions Classes/ItemSlotControl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -56,19 +56,17 @@ local ItemSlotClass = newClass("ItemSlotControl", "DropDownControl", function(se
end)

function ItemSlotClass:SetSelItemId(selItemId)
local changed = selItemId ~= self.selItemId
self.selItemId = selItemId
if self.nodeId then
if self.itemsTab.build.spec then
self.itemsTab.build.spec.jewels[self.nodeId] = selItemId
if changed then
if selItemId ~= self.selItemId then
self.itemsTab.build.spec:BuildClusterJewelGraphs()
self.itemsTab.build.spec:BuildAllDependsAndPaths()
end
end
else
self.itemsTab.activeItemSet[self.slotName].selItemId = selItemId
end
self.selItemId = selItemId
end

function ItemSlotClass:Populate()
Expand Down
11 changes: 11 additions & 0 deletions Classes/ItemsTab.lua
Original file line number Diff line number Diff line change
Expand Up @@ -926,8 +926,18 @@ function ItemsTabClass:AddItem(item, noAutoEquip, index)
end

-- Add it to the list
local replacing = self.items[item.id]
self.items[item.id] = item
item:BuildModList()

if replacing and (replacing.clusterJewel or item.clusterJewel) then
-- We're replacing an existing item, and either the new or old one is a cluster jewel
local slot, itemSet = self:GetEquippedSlotForItem(item)
if slot and not itemSet then
-- Item is currently equipped, so we need to rebuild the graphs
self.build.spec:BuildClusterJewelGraphs()
end
end
end

-- Adds the current display item to the build's item list
Expand Down Expand Up @@ -2190,4 +2200,5 @@ function ItemsTabClass:RestoreUndoState(state)
self.activeItemSetId = state.activeItemSetId
self.activeItemSet = self.itemSets[self.activeItemSetId]
self:PopulateSlots()
self.build.spec:BuildClusterJewelGraphs()
end
5 changes: 4 additions & 1 deletion Classes/PassiveSpec.lua
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,8 @@ function PassiveSpecClass:Save(xml)
end

function PassiveSpecClass:PostLoad()
-- This will also rebuild paths
self:BuildClusterJewelGraphs()
self:BuildAllDependsAndPaths()
end

function PassiveSpecClass:MigrateNodeId(nodeId)
Expand Down Expand Up @@ -610,6 +610,9 @@ function PassiveSpecClass:BuildClusterJewelGraphs()
end
end
wipeTable(self.allocSubgraphNodes)

-- Rebuild paths to account for new/removed nodes
self:BuildAllDependsAndPaths()
end

function PassiveSpecClass:BuildSubgraph(jewel, parentSocket, id, upSize)
Expand Down
6 changes: 3 additions & 3 deletions Modules/CalcOffence-3_0.lua
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ function calcs.offence(env, actor, activeSkill)
end
if skillModList:Flag(nil, "ClawDamageAppliesToUnarmed") then
-- Claw Damage conversion from Rigwald's Curse
for i, value in ipairs(skillModList:Tabulate("INC", { flags = ModFlag.Claw }, "Damage")) do
for i, value in ipairs(skillModList:Tabulate("INC", { flags = ModFlag.Claw, keywordFlags = KeywordFlag.Hit }, "Damage")) do
local mod = value.mod
if band(mod.flags, ModFlag.Claw) ~= 0 then
skillModList:NewMod("Damage", mod.type, mod.value, mod.source, bor(band(mod.flags, bnot(ModFlag.Claw)), ModFlag.Unarmed), mod.keywordFlags, unpack(mod))
Expand All @@ -210,7 +210,7 @@ function calcs.offence(env, actor, activeSkill)
end
if skillModList:Flag(nil, "ClawAttackSpeedAppliesToUnarmed") then
-- Claw Attack Speed conversion from Rigwald's Curse
for i, value in ipairs(skillModList:Tabulate("INC", { flags = bor(ModFlag.Claw, ModFlag.Attack) }, "Speed")) do
for i, value in ipairs(skillModList:Tabulate("INC", { flags = bor(ModFlag.Claw, ModFlag.Attack, ModFlag.Hit) }, "Speed")) do
local mod = value.mod
if band(mod.flags, ModFlag.Claw) ~= 0 and band(mod.flags, ModFlag.Attack) ~= 0 then
skillModList:NewMod("Speed", mod.type, mod.value, mod.source, bor(band(mod.flags, bnot(ModFlag.Claw)), ModFlag.Unarmed), mod.keywordFlags, unpack(mod))
Expand All @@ -219,7 +219,7 @@ function calcs.offence(env, actor, activeSkill)
end
if skillModList:Flag(nil, "ClawCritChanceAppliesToUnarmed") then
-- Claw Crit Chance conversion from Rigwald's Curse
for i, value in ipairs(skillModList:Tabulate("INC", { flags = ModFlag.Claw }, "CritChance")) do
for i, value in ipairs(skillModList:Tabulate("INC", { flags = bor(ModFlag.Claw, ModFlag.Hit) }, "CritChance")) do
local mod = value.mod
if band(mod.flags, ModFlag.Claw) ~= 0 then
skillModList:NewMod("CritChance", mod.type, mod.value, mod.source, bor(band(mod.flags, bnot(ModFlag.Claw)), ModFlag.Unarmed), mod.keywordFlags, unpack(mod))
Expand Down
3 changes: 3 additions & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
VERSION[1.4.126][2020/03/15]
* Fixed Cluster Jewels not updating their cluster layouts when edited
* Fixed Rigwald's Curse not correctly converting Claw modifiers
VERSION[1.4.161][2020/03/15]
* Fixed Cluster Jewels sometimes having their added node type incorrectly recognised
* Fixed Cluster Jewels always adding the maximum number of passives
Expand Down
14 changes: 7 additions & 7 deletions manifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<PoBVersion>
<Version number="1.4.161"/>
<Version number="1.4.126"/>
<Source part="program" url="https://raw.githubusercontent.com/Openarl/PathOfBuilding/{branch}/"/>
<Source part="tree" url="https://raw.githubusercontent.com/Openarl/PathOfBuilding/{branch}/"/>
<Source part="tree-2_6" url="https://raw.githubusercontent.com/Openarl/PathOfBuilding/{branch}/tree-2_6.zip"/>
Expand All @@ -14,7 +14,7 @@
<File sha1="72b9bea1871e94a643e4471fd84bbedbc7810336" name="UpdateCheck.lua" part="program"/>
<File sha1="4f17937f2b37784e169a3792b235f2a0a3961e61" name="UpdateApply.lua" part="program"/>
<File sha1="4cf43ef67fe750c22e15c7a63d7f77cce7768dba" name="GameVersions.lua" part="program"/>
<File sha1="8680b723c04917dfbefdb7d820e7cedd1ecf6506" name="changelog.txt" part="program"/>
<File sha1="92cd6844cc621b41158b32c95a6636639b3e8479" name="changelog.txt" part="program"/>
<File sha1="b093a2709f30c1f83ce5ba9df88c80f22c1beb4a" name="Classes/BuildListControl.lua" part="program"/>
<File sha1="16fc5eaa04cc14b2022f6705a12717935454dab0" name="Classes/ButtonControl.lua" part="program"/>
<File sha1="d91c206afbe018ad8573280254e958d982fa4b5f" name="Classes/CalcBreakdownControl.lua" part="program"/>
Expand All @@ -28,21 +28,21 @@
<File sha1="8e8340df34a9a27374fe48e0ebcb633ef03af550" name="Classes/EditControl.lua" part="program"/>
<File sha1="bcb52d02b8ca9288be255219956d6f0bc4efeedd" name="Classes/FolderListControl.lua" part="program"/>
<File sha1="4feffe208c7a591509a2474a278e84b26aa986aa" name="Classes/GemSelectControl.lua" part="program"/>
<File sha1="923c68271faaf531867c6708e4c8868314562f33" name="Classes/ImportTab.lua" part="program"/>
<File sha1="9cb40ba93c8eace135f47fbd4c2ce2e6dab2f823" name="Classes/ImportTab.lua" part="program"/>
<File sha1="817d46cf228ad390081048794e2cb51a5c33a5fe" name="Classes/Item.lua" part="program"/>
<File sha1="9dde4d097a2fdcd4b48531ac309b1310eae7b56d" name="Classes/ItemDBControl.lua" part="program"/>
<File sha1="8298506b88cea37e78c1c5faebc05335b3ace240" name="Classes/ItemListControl.lua" part="program"/>
<File sha1="7ecee459d3c477b46c6b6115bfeb2480995e17ed" name="Classes/ItemSetListControl.lua" part="program"/>
<File sha1="3b303d1b0c9f377f9eba373a5d57f16fcde13773" name="Classes/ItemSlotControl.lua" part="program"/>
<File sha1="1cd92773d272c0c8977a38410d62c7c4d8841752" name="Classes/ItemsTab.lua" part="program"/>
<File sha1="136aa00f82a2e3546425d2f69607d820cdeba622" name="Classes/ItemSlotControl.lua" part="program"/>
<File sha1="eb673a114d1eea5fadf5337b6d3f629a4d4d42d6" name="Classes/ItemsTab.lua" part="program"/>
<File sha1="d2ffe0071641c07b63d152c0f48b691eba0cffb0" name="Classes/LabelControl.lua" part="program"/>
<File sha1="45ec0b7e2345533caca3f4eb6575298bc280d6a2" name="Classes/ListControl.lua" part="program"/>
<File sha1="f7281f889c87c8de45d5af4243c49d9998d4a272" name="Classes/MinionListControl.lua" part="program"/>
<File sha1="b67204a03fc51b91cb3e73c398e57ebc50dd9df1" name="Classes/ModDB.lua" part="program"/>
<File sha1="2fa5f20b12a4b366dc4b28a2a873699b834766d6" name="Classes/ModList.lua" part="program"/>
<File sha1="9cf4d06384857b6f5fb86c67ecefbf6f1fa62ee3" name="Classes/ModStore.lua" part="program"/>
<File sha1="cc7c5eff58c2868cdc7d4c1bf9a967aa8c448c9e" name="Classes/NotesTab.lua" part="program"/>
<File sha1="50d9e32da151cadc50d712322a997ca821d0b001" name="Classes/PassiveSpec.lua" part="program"/>
<File sha1="3d134cf33d1d51ef47feaa03c81b191713c95311" name="Classes/PassiveSpec.lua" part="program"/>
<File sha1="d449391ea879a20728f7e9a0345398c0141a45f6" name="Classes/PassiveSpecListControl.lua" part="program"/>
<File sha1="895e9979311550a268b72831f57cfe34267a3fa5" name="Classes/PassiveTree.lua" part="program"/>
<File sha1="1d3afc7fb1d12fa164d3e2a7c3d30bebeeab2ba0" name="Classes/PassiveTreeView.lua" part="program"/>
Expand All @@ -67,7 +67,7 @@
<File sha1="f49b47b90a18902c30db9693a7949172c72944e7" name="Modules/CalcDefence-2_6.lua" part="program"/>
<File sha1="62f0fafbec4dd52394cfa27e23e320f5ea8cdf7f" name="Modules/CalcDefence-3_0.lua" part="program"/>
<File sha1="fdfcb2daf9f582e3d2fa065c4b61ecfe66d8ba4f" name="Modules/CalcOffence-2_6.lua" part="program"/>
<File sha1="2c8d4d8ab8145277f7815c24c44326ee7586640d" name="Modules/CalcOffence-3_0.lua" part="program"/>
<File sha1="ae299ee827dc9c151b8405daa19acb76bea7e856" name="Modules/CalcOffence-3_0.lua" part="program"/>
<File sha1="09e666595feea5ddd1c59e70c4b734ae4d5a9935" name="Modules/CalcPerform.lua" part="program"/>
<File sha1="582806808b1646f18bfde93db45658d66c4569d8" name="Modules/Calcs.lua" part="program"/>
<File sha1="32da2a949a5fe0ab10d54078a96caff0dccb5f3f" name="Modules/CalcSections-2_6.lua" part="program"/>
Expand Down

0 comments on commit efd6b91

Please sign in to comment.