Fix Forbidden Flesh / Flame jewels not working with Assassins new nodes (#9300)
The jewels didn't work for Ascendancy nodes that are multiple choice. Had to make sure that the scion nodes were still excluded though Also changed the jewels to be sorted alphabetically now so it's easier to look through the variants list Co-authored-by: LocalIdentity <localidentity2@gmail.com>
This commit is contained in:
@@ -521,22 +521,34 @@ local PassiveTreeClass = newClass("PassiveTree", function(self, treeVersion)
|
||||
end
|
||||
else
|
||||
self.ascendancyMap[node.dn:lower()] = node
|
||||
if not self.classNotables[self.ascendNameMap[node.ascendancyName].class.name] then
|
||||
self.classNotables[self.ascendNameMap[node.ascendancyName].class.name] = { }
|
||||
local className = self.ascendNameMap[node.ascendancyName].class.name
|
||||
if not self.classNotables[className] then
|
||||
self.classNotables[className] = { }
|
||||
end
|
||||
if self.ascendNameMap[node.ascendancyName].class.name ~= "Scion" then
|
||||
t_insert(self.classNotables[self.ascendNameMap[node.ascendancyName].class.name], node.dn)
|
||||
if className ~= "Scion" then
|
||||
t_insert(self.classNotables[className], node.dn)
|
||||
end
|
||||
end
|
||||
else
|
||||
node.type = "Normal"
|
||||
if node.ascendancyName == "Ascendant" and not node.dn:find("Dexterity") and not node.dn:find("Intelligence") and
|
||||
not node.dn:find("Strength") and not node.dn:find("Passive") then
|
||||
if node.ascendancyName == "Ascendant" and not node.isMultipleChoiceOption and not node.dn:find("Dexterity")
|
||||
and not node.dn:find("Intelligence") and not node.dn:find("Strength") and not node.dn:find("Passive") then
|
||||
local className = self.ascendNameMap[node.ascendancyName].class.name
|
||||
self.ascendancyMap[node.dn:lower()] = node
|
||||
if not self.classNotables[self.ascendNameMap[node.ascendancyName].class.name] then
|
||||
self.classNotables[self.ascendNameMap[node.ascendancyName].class.name] = { }
|
||||
if not self.classNotables[className] then
|
||||
self.classNotables[className] = { }
|
||||
end
|
||||
t_insert(self.classNotables[className], node.dn)
|
||||
end
|
||||
if node.isMultipleChoiceOption and node.ascendancyName then
|
||||
local className = self.ascendNameMap[node.ascendancyName].class.name
|
||||
if className ~= "Scion" then
|
||||
self.ascendancyMap[node.dn:lower()] = node
|
||||
if not self.classNotables[className] then
|
||||
self.classNotables[className] = { }
|
||||
end
|
||||
t_insert(self.classNotables[className], node.dn)
|
||||
end
|
||||
t_insert(self.classNotables[self.ascendNameMap[node.ascendancyName].class.name], node.dn)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -7290,6 +7290,8 @@ c["Allocates First to Strike, Last to Fall if you have the matching modifier on
|
||||
c["Allocates First to Strike, Last to Fall if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="first to strike, last to fall",side="flesh"}}},nil}
|
||||
c["Allocates Focal Point if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="focal point",side="flame"}}},nil}
|
||||
c["Allocates Focal Point if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="focal point",side="flesh"}}},nil}
|
||||
c["Allocates For the Jugular if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="for the jugular",side="flame"}}},nil}
|
||||
c["Allocates For the Jugular if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="for the jugular",side="flesh"}}},nil}
|
||||
c["Allocates Forbidden Power if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="forbidden power",side="flame"}}},nil}
|
||||
c["Allocates Forbidden Power if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="forbidden power",side="flesh"}}},nil}
|
||||
c["Allocates Fortitude if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="fortitude",side="flame"}}},nil}
|
||||
@@ -7344,6 +7346,8 @@ c["Allocates Jagged Technique if you have the matching modifier on Forbidden Fla
|
||||
c["Allocates Jagged Technique if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="jagged technique",side="flesh"}}},nil}
|
||||
c["Allocates Juggernaut if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="juggernaut",side="flame"}}},nil}
|
||||
c["Allocates Juggernaut if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="juggernaut",side="flesh"}}},nil}
|
||||
c["Allocates Knife in the Back if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="knife in the back",side="flame"}}},nil}
|
||||
c["Allocates Knife in the Back if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="knife in the back",side="flesh"}}},nil}
|
||||
c["Allocates Lesson of the Seasons if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="lesson of the seasons",side="flame"}}},nil}
|
||||
c["Allocates Lesson of the Seasons if you have the matching modifier on Forbidden Flesh"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="lesson of the seasons",side="flesh"}}},nil}
|
||||
c["Allocates Liege of the Primordial if you have the matching modifier on Forbidden Flame"]={{[1]={flags=0,keywordFlags=0,name="GrantedAscendancyNode",type="LIST",value={name="liege of the primordial",side="flame"}}},nil}
|
||||
@@ -10939,12 +10943,16 @@ c["Requires Class Shadow Allocates Demolitions Specialist if you have the matchi
|
||||
c["Requires Class Shadow Allocates Demolitions Specialist if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Demolitions Specialist if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Escape Artist if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Escape Artist if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Escape Artist if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Escape Artist if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates For the Jugular if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates For the Jugular if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates For the Jugular if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates For the Jugular if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Harness the Void if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Harness the Void if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Harness the Void if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Harness the Void if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Heartstopper if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Heartstopper if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Heartstopper if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Heartstopper if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Infused Toxins if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Infused Toxins if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Infused Toxins if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Infused Toxins if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Knife in the Back if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Knife in the Back if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Knife in the Back if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Knife in the Back if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Like Clockwork if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Like Clockwork if you have the matching modifier on Forbidden Flame "}
|
||||
c["Requires Class Shadow Allocates Like Clockwork if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Shadow Allocates Like Clockwork if you have the matching modifier on Forbidden Flesh "}
|
||||
c["Requires Class Shadow Allocates Mistwalker if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Shadow Allocates Mistwalker if you have the matching modifier on Forbidden Flame "}
|
||||
|
||||
@@ -734,13 +734,20 @@ function buildForbidden(classNotables)
|
||||
table.insert(forbidden[name], "Rarity: UNIQUE")
|
||||
table.insert(forbidden[name], "Forbidden " .. name)
|
||||
table.insert(forbidden[name], (name == "Flame" and "Crimson" or "Cobalt") .. " Jewel")
|
||||
local classList = { }
|
||||
for className in pairs(classNotables) do
|
||||
if className ~= "alternate_ascendancies" then
|
||||
table.insert(classList, className)
|
||||
end
|
||||
end
|
||||
table.sort(classList)
|
||||
local index = 1
|
||||
for className, notableTable in pairs(classNotables) do
|
||||
if className ~= "alternate_ascendancies" then --Remove Affliction Ascendancy's
|
||||
for _, notableName in ipairs(notableTable) do
|
||||
table.insert(forbidden[name], "Variant: (" .. className .. ") " .. notableName)
|
||||
index = index + 1
|
||||
end
|
||||
for _, className in ipairs(classList) do
|
||||
local notableTable = classNotables[className]
|
||||
table.sort(notableTable)
|
||||
for _, notableName in ipairs(notableTable) do
|
||||
table.insert(forbidden[name], "Variant: (" .. className .. ") " .. notableName)
|
||||
index = index + 1
|
||||
end
|
||||
end
|
||||
if name == "Flame" then
|
||||
@@ -751,13 +758,13 @@ function buildForbidden(classNotables)
|
||||
table.insert(forbidden[name], "Limited to: 1")
|
||||
table.insert(forbidden[name], "Item Level: 83")
|
||||
index = 1
|
||||
for className, notableTable in pairs(classNotables) do
|
||||
if className ~= "alternate_ascendancies" then --Remove Affliction Ascendancy's
|
||||
for _, notableName in ipairs(notableTable) do
|
||||
table.insert(forbidden[name], "{variant:" .. index .. "}" .. "Requires Class " .. className)
|
||||
table.insert(forbidden[name], "{variant:" .. index .. "}" .. "Allocates ".. notableName .. " if you have the matching modifier on Forbidden " .. (name == "Flame" and "Flesh" or "Flame"))
|
||||
index = index + 1
|
||||
end
|
||||
for _, className in ipairs(classList) do
|
||||
local notableTable = classNotables[className]
|
||||
table.sort(notableTable)
|
||||
for _, notableName in ipairs(notableTable) do
|
||||
table.insert(forbidden[name], "{variant:" .. index .. "}" .. "Requires Class " .. className)
|
||||
table.insert(forbidden[name], "{variant:" .. index .. "}" .. "Allocates ".. notableName .. " if you have the matching modifier on Forbidden " .. (name == "Flame" and "Flesh" or "Flame"))
|
||||
index = index + 1
|
||||
end
|
||||
end
|
||||
table.insert(forbidden[name], "Corrupted")
|
||||
|
||||
Reference in New Issue
Block a user