Close combat and multi strike correct damage values
Adds pantheons from temmings' pull request Adds partial Impale support from baranio's pull request Adds updated uniques from PJacek's pull request and my own Adds more tree highlighting options for node power from coldino's pull request Adds support for fossil mods in the crafting window. Including correct parsing for some mods that previously didn't work
This commit is contained in:
@@ -37,6 +37,26 @@ local fooBanditDropList = {
|
||||
{ label = "Alira (Mana Regen, Crit Multiplier, Resists)", banditId = "Alira" },
|
||||
}
|
||||
|
||||
local PantheonMajorGodDropList = {
|
||||
{ label = "Nothing", id = "None" },
|
||||
{ label = "Soul of the Brine King", id = "TheBrineKing" },
|
||||
{ label = "Soul of Lunaris", id = "Lunaris" },
|
||||
{ label = "Soul of Solaris", id = "Solaris" },
|
||||
{ label = "Soul of Arakaali", id = "Arakaali" },
|
||||
}
|
||||
|
||||
local PantheonMinorGodDropList = {
|
||||
{ label = "Nothing", id = "None" },
|
||||
{ label = "Soul of Gruthkul", id = "Gruthkul" },
|
||||
{ label = "Soul of Yugul", id = "Yugul" },
|
||||
{ label = "Soul of Abberath", id = "Abberath" },
|
||||
{ label = "Soul of Tukohama", id = "Tukohama" },
|
||||
{ label = "Soul of Garukhan", id = "Garukhan" },
|
||||
{ label = "Soul of Ralakesh", id = "Ralakesh" },
|
||||
{ label = "Soul of Ryslatha", id = "Ryslatha" },
|
||||
{ label = "Soul of Shakari", id = "Shakari" },
|
||||
}
|
||||
|
||||
local buildMode = new("ControlHost")
|
||||
|
||||
function buildMode:Init(dbFileName, buildName, buildXML, targetVersion)
|
||||
@@ -330,6 +350,8 @@ function buildMode:Init(dbFileName, buildName, buildXML, targetVersion)
|
||||
self.banditNormal = "None"
|
||||
self.banditCruel = "None"
|
||||
self.banditMerciless = "None"
|
||||
self.pantheonMajorGod = "None"
|
||||
self.pantheonMinorGod = "None"
|
||||
self.spectreList = { }
|
||||
|
||||
-- Load build file
|
||||
@@ -418,8 +440,43 @@ function buildMode:Init(dbFileName, buildName, buildXML, targetVersion)
|
||||
self.buildFlag = true
|
||||
end)
|
||||
self.controls.banditLabel = new("LabelControl", {"BOTTOMLEFT",self.controls.bandit,"TOPLEFT"}, 0, 0, 0, 14, "^7Bandit:")
|
||||
end
|
||||
self.controls.mainSkillLabel = new("LabelControl", {"TOPLEFT",self.anchorSideBar,"TOPLEFT"}, 0, 95, 300, 16, "^7Main Skill:")
|
||||
-- The Pantheon
|
||||
local function applyPantheonDescription(tooltip, mode, index, value)
|
||||
tooltip:Clear()
|
||||
if value.id == "None" then
|
||||
return
|
||||
end
|
||||
local applyModes = { BODY = true, HOVER = true }
|
||||
if applyModes[mode] then
|
||||
local god = self.data.pantheons[value.id]
|
||||
for _, soul in ipairs(god.souls) do
|
||||
local name = soul.name
|
||||
local lines = { }
|
||||
for _, mod in ipairs(soul.mods) do
|
||||
t_insert(lines, mod.line)
|
||||
end
|
||||
tooltip:AddLine(20, '^8'..name)
|
||||
tooltip:AddLine(14, '^6'..table.concat(lines, '\n'))
|
||||
tooltip:AddSeparator(10)
|
||||
end
|
||||
end
|
||||
end
|
||||
self.controls.pantheonMajorGod = new("DropDownControl", {"TOPLEFT",self.anchorSideBar,"TOPLEFT"}, 0, 110, 300, 16, PantheonMajorGodDropList, function(index, value)
|
||||
self.pantheonMajorGod = value.id
|
||||
self.modFlag = true
|
||||
self.buildFlag = true
|
||||
end)
|
||||
self.controls.pantheonMajorGod.tooltipFunc = applyPantheonDescription
|
||||
self.controls.pantheonMinorGod = new("DropDownControl", {"TOPLEFT",self.anchorSideBar,"TOPLEFT"}, 0, 130, 300, 16, PantheonMinorGodDropList, function(index, value)
|
||||
self.pantheonMinorGod = value.id
|
||||
self.modFlag = true
|
||||
self.buildFlag = true
|
||||
end)
|
||||
self.controls.pantheonMinorGod.tooltipFunc = applyPantheonDescription
|
||||
self.controls.pantheonLabel = new("LabelControl", {"BOTTOMLEFT",self.controls.pantheonMajorGod,"TOPLEFT"}, 0, 0, 0, 14, "^7The Pantheon:")
|
||||
end
|
||||
local mainSkillPosY = (self.targetVersion == "2_6") and 95 or 155 -- The Pantheon's DropDown space
|
||||
self.controls.mainSkillLabel = new("LabelControl", {"TOPLEFT",self.anchorSideBar,"TOPLEFT"}, 0, mainSkillPosY, 300, 16, "^7Main Skill:")
|
||||
self.controls.mainSocketGroup = new("DropDownControl", {"TOPLEFT",self.controls.mainSkillLabel,"BOTTOMLEFT"}, 0, 2, 300, 16, nil, function(index, value)
|
||||
self.mainSocketGroup = index
|
||||
self.modFlag = true
|
||||
@@ -617,7 +674,7 @@ function buildMode:Load(xml, fileName)
|
||||
end
|
||||
self.characterLevel = tonumber(xml.attrib.level) or 1
|
||||
self.controls.characterLevel:SetText(tostring(self.characterLevel))
|
||||
for _, diff in pairs({"bandit","banditNormal","banditCruel","banditMerciless"}) do
|
||||
for _, diff in pairs({"bandit","banditNormal","banditCruel","banditMerciless","pantheonMajorGod","pantheonMinorGod"}) do
|
||||
self[diff] = xml.attrib[diff] or "None"
|
||||
end
|
||||
self.mainSocketGroup = tonumber(xml.attrib.mainSkillIndex) or tonumber(xml.attrib.mainSocketGroup) or 1
|
||||
@@ -642,6 +699,8 @@ function buildMode:Save(xml)
|
||||
banditNormal = self.banditNormal,
|
||||
banditCruel = self.banditCruel,
|
||||
banditMerciless = self.banditMerciless,
|
||||
pantheonMajorGod = self.pantheonMajorGod,
|
||||
pantheonMinorGod = self.pantheonMinorGod,
|
||||
mainSocketGroup = tostring(self.mainSocketGroup),
|
||||
}
|
||||
for _, id in ipairs(self.spectreList) do
|
||||
@@ -736,7 +795,12 @@ function buildMode:OnFrame(inputEvents)
|
||||
self.controls[diff]:SelByValue(self[diff], "banditId")
|
||||
end
|
||||
end
|
||||
|
||||
for _, diff in pairs({"pantheonMajorGod","pantheonMinorGod"}) do
|
||||
if self.controls[diff] then
|
||||
self.controls[diff]:SelByValue(self[diff], "id")
|
||||
end
|
||||
end
|
||||
|
||||
if self.buildFlag then
|
||||
-- Rebuild calculation output tables
|
||||
self.outputRevision = self.outputRevision + 1
|
||||
|
||||
Reference in New Issue
Block a user