Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions spec/System/TestItemParse_spec.lua
Original file line number Diff line number Diff line change
Expand Up @@ -623,16 +623,16 @@ describe("TestItemParse", function()
Rune: Soul Core of Atmohua
LevelReq: 79
Implicits: 4
{enchant}{rune}Convert 20% of Requirements to Dexterity
{enchant}{rune}Convert 20% of Requirements to Intelligence
{enchant}{rune}Convert 20% of Requirements to Strength
{enchant}{rune}Convert 40% of Requirements to Dexterity
{enchant}{rune}Convert 40% of Requirements to Intelligence
{enchant}{rune}Convert 40% of Requirements to Strength
{tags:block}{range:1}+(10-15)% to Block chance
Corrupted
]])
item:BuildAndParseRaw()
assert.are.equals(35, item.requirements.strMod)
assert.are.equals(86, item.requirements.dexMod)
assert.are.equals(55, item.requirements.intMod)
assert.are.equals(70, item.requirements.strMod)
assert.are.equals(45, item.requirements.dexMod)
assert.are.equals(60, item.requirements.intMod)

end)

Expand Down Expand Up @@ -1043,7 +1043,7 @@ describe("TestItemParse", function()
--------
Item Level: 86
--------
Hits against you have 40% reduced Critical Damage Bonus (rune)
Hits against you have 100% reduced Critical Damage Bonus (rune)
--------
Only Soul Cores can be Socketed in this item
This item gains bonuses from Socketed Soul Cores as though it was also a Shield
Expand All @@ -1052,7 +1052,7 @@ describe("TestItemParse", function()
assert.are.same({ "Soul Core of Ticaba" }, item.runes)
item:BuildAndParseRaw()
assert.are.same({ "Soul Core of Ticaba", "None", "None", "None", "None", "None" }, item.runes)
assert.are.equals("Hits against you have 40% reduced Critical Damage Bonus", item.runeModLines[1].line)
assert.are.equals("Hits against you have 100% reduced Critical Damage Bonus", item.runeModLines[1].line)
end)

it("infers pasted Soul Core lines with socketed Soul Core effect", function()
Expand All @@ -1064,15 +1064,15 @@ describe("TestItemParse", function()
--------
Sockets: S
--------
Hits against you have 40% reduced Critical Damage Bonus (rune)
Hits against you have 100% reduced Critical Damage Bonus (rune)
--------
100% increased effect of Socketed Soul Cores
]])

assert.are.same({ "Soul Core of Ticaba" }, item.runes)
item:BuildAndParseRaw()
assert.are.same({ "Soul Core of Ticaba" }, item.runes)
assert.is_not_nil(item:BuildRaw():match("Hits against you have 40%% reduced Critical Damage Bonus"))
assert.is_not_nil(item:BuildRaw():match("Hits against you have 100%% reduced Critical Damage Bonus"))
end)

it("jewel sockets", function()
Expand Down
4 changes: 2 additions & 2 deletions spec/System/TestItemsTab_spec.lua
Original file line number Diff line number Diff line change
Expand Up @@ -822,8 +822,8 @@ Ruby]])
end
assert.are.equals(1, ticabaCount)
assert.are.equals(2, #ticabaRune.lines)
assert.are.equals("Hits against you have 20% reduced Critical Damage Bonus", ticabaRune.lines[1])
assert.are.equals("Hits against you have 20% reduced Critical Damage Bonus", ticabaRune.lines[2])
assert.are.equals("Hits against you have 50% reduced Critical Damage Bonus", ticabaRune.lines[1])
assert.are.equals("Hits against you have 50% reduced Critical Damage Bonus", ticabaRune.lines[2])
end)

it("keeps pure Bonded slot entries and uses the regular rune mod as the dropdown label", function ()
Expand Down
Binary file added src/Assets/monster-categories_44_44_BC7.dds.zst
Binary file not shown.
2 changes: 1 addition & 1 deletion src/Classes/CheckBoxControl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ function CheckBoxClass:Draw(viewPort, noTooltip)
else
SetDrawColor(0.5, 0.5, 0.5)
end
DrawImage(self.checkImage.handle, x + 1, y + 1, size - 2, size - 2, self.checkImage[1])
DrawImage(self.checkImage.handle, x + 1, y + 1, size - 2, size - 2, unpack(self.checkImage))
else
if self.state then
if not enabled then
Expand Down
2 changes: 1 addition & 1 deletion src/Classes/PassiveTreeView.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1394,7 +1394,7 @@ function PassiveTreeViewClass:DrawQuadAndRotate(data, xTree, yTree, angleRad, tr
local heightActive = data.height

local function rotate(x, y, cx, cy, theta)
local translatedX = x - cy
local translatedX = x - cx
local translatedY = y - cy

local cosTheta = math.cos(theta)
Expand Down
50 changes: 43 additions & 7 deletions src/Data/Assets.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,49 @@

return {
ddsCoords={
["monster-categories_36_36_BC7.dds.zst"]={
Beast=1,
Construct=2,
Demon=3,
Eldritch=4,
Humanoid=5,
Undead=6
["monster-categories_44_44_BC7.dds.zst"]={
Beast={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=1
},
Construct={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=2
},
Demon={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=3
},
Eldritch={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=4
},
Humanoid={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=5
},
Undead={
[1]=0,
[2]=0,
[3]=32,
[4]=32,
[5]=6
}
}
}
}
2 changes: 1 addition & 1 deletion src/Data/Bases/belt.lua
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ itemBases["Runemastered Heavy Belt"] = {
charmLimit = 0,
hidden = true,
tags = { belt = true, default = true, genesis_tree_caster = true, genesis_tree_minion = true, runeforged = true, },
implicit = "(20-30)% increased Stun Threshold\nHas (1-3) Charm Slot\nRunic Ward recovery can can Overflow maximum Runic Ward",
implicit = "(20-30)% increased Stun Threshold\nHas (1-3) Charm Slot\nRunic Ward recovery can Overflow maximum Runic Ward",
implicitModTypes = { { }, { "charm" }, { }, },
req = { level = 50, },
}
Expand Down
22 changes: 11 additions & 11 deletions src/Data/Bases/sceptre.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ itemBases["Rattling Sceptre"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, onehand = true, physical_implicit_skill = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Skeletal Warrior Minion",
implicitModTypes = { },
req = { },
Expand Down Expand Up @@ -57,7 +57,7 @@ itemBases["Shrine Sceptre"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, fire_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Fire",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -67,7 +67,7 @@ itemBases["Shrine Sceptre"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { cold_implicit_skill = true, default = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Ice",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -77,7 +77,7 @@ itemBases["Shrine Sceptre"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, lightning_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Lightning",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand Down Expand Up @@ -117,7 +117,7 @@ itemBases["Wrath Sceptre"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, lightning_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Fulmination",
implicitModTypes = { },
req = { level = 49, int = 87, },
Expand Down Expand Up @@ -159,7 +159,7 @@ itemBases["Shrine Sceptre"] = {
spirit = 100,
hidden = true,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, fire_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Fire",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -170,7 +170,7 @@ itemBases["Shrine Sceptre"] = {
spirit = 100,
hidden = true,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { cold_implicit_skill = true, default = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Ice",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -181,7 +181,7 @@ itemBases["Shrine Sceptre"] = {
spirit = 100,
hidden = true,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, lightning_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Lightning",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -192,7 +192,7 @@ itemBases["Shrine Sceptre (Purity of Fire)"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, fire_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Fire",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -202,7 +202,7 @@ itemBases["Shrine Sceptre (Purity of Cold)"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { cold_implicit_skill = true, default = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Ice",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand All @@ -212,7 +212,7 @@ itemBases["Shrine Sceptre (Purity of Lighting)"] = {
quality = 20,
spirit = 100,
socketLimit = 3,
tags = { default = true, onehand = true, sceptre = true, },
tags = { default = true, lightning_implicit_skill = true, onehand = true, sceptre = true, },
implicit = "Grants Skill: Level (1-20) Purity of Lightning",
implicitModTypes = { },
req = { level = 26, str = 17, int = 38, },
Expand Down
16 changes: 8 additions & 8 deletions src/Data/Bases/staff.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ itemBases["Ashen Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { default = true, fire_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Firebolt",
implicitModTypes = { },
req = { },
Expand All @@ -15,7 +15,7 @@ itemBases["Gelid Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { cold_implicit_skill = true, default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Freezing Shards",
implicitModTypes = { },
req = { },
Expand All @@ -24,7 +24,7 @@ itemBases["Voltaic Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { default = true, lightning_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Lightning Bolt",
implicitModTypes = { },
req = { },
Expand All @@ -42,7 +42,7 @@ itemBases["Pyrophyte Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { default = true, fire_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Solar Orb",
implicitModTypes = { },
req = { level = 16, int = 31, },
Expand All @@ -60,7 +60,7 @@ itemBases["Rending Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { chaos_implicit_skill = true, default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Soulrend",
implicitModTypes = { },
req = { level = 33, int = 60, },
Expand All @@ -69,7 +69,7 @@ itemBases["Reaping Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, staff = true, twohand = true, },
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, physical_implicit_skill = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Reap",
implicitModTypes = { },
req = { level = 38, int = 68, },
Expand All @@ -78,7 +78,7 @@ itemBases["Icicle Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { cold_implicit_skill = true, default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Firebolt",
implicitModTypes = { },
req = { level = 45, int = 80, },
Expand All @@ -96,7 +96,7 @@ itemBases["Paralysing Staff"] = {
type = "Staff",
quality = 20,
socketLimit = 4,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
tags = { default = true, lightning_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, staff = true, twohand = true, },
implicit = "Grants Skill: Level (1-20) Enervating Nova",
implicitModTypes = { },
req = { level = 52, int = 92, },
Expand Down
14 changes: 7 additions & 7 deletions src/Data/Bases/wand.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ itemBases["Withered Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
tags = { chaos_implicit_skill = true, default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Chaos Bolt",
implicitModTypes = { },
req = { },
Expand All @@ -15,7 +15,7 @@ itemBases["Bone Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, onehand = true, wand = true, },
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, onehand = true, physical_implicit_skill = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Bone Blast",
implicitModTypes = { },
req = { },
Expand All @@ -42,7 +42,7 @@ itemBases["Volatile Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
tags = { default = true, fire_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Volatile Dead",
implicitModTypes = { },
req = { level = 16, int = 31, },
Expand All @@ -51,7 +51,7 @@ itemBases["Galvanic Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
tags = { default = true, lightning_implicit_skill = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Galvanic Field",
implicitModTypes = { },
req = { level = 25, int = 46, },
Expand All @@ -69,7 +69,7 @@ itemBases["Offering Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, onehand = true, wand = true, },
tags = { default = true, no_chaos_spell_mods = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, onehand = true, physical_implicit_skill = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Exsanguinate",
implicitModTypes = { },
req = { level = 38, int = 68, },
Expand All @@ -78,7 +78,7 @@ itemBases["Frigid Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
tags = { cold_implicit_skill = true, default = true, no_chaos_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Chaos Bolt",
implicitModTypes = { },
req = { level = 45, int = 80, },
Expand All @@ -105,7 +105,7 @@ itemBases["Primordial Wand"] = {
type = "Wand",
quality = 20,
socketLimit = 3,
tags = { default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
tags = { chaos_implicit_skill = true, default = true, no_cold_spell_mods = true, no_fire_spell_mods = true, no_lightning_spell_mods = true, no_physical_spell_mods = true, onehand = true, wand = true, },
implicit = "Grants Skill: Level (1-20) Wither",
implicitModTypes = { },
req = { level = 56, int = 99, },
Expand Down
Loading
Loading