Skip to content
Merged
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
10 changes: 10 additions & 0 deletions src/Classes/Item.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1603,6 +1603,7 @@ function ItemClass:ParseRaw(raw, rarity, highQuality)
if deferJewelRadiusIndexAssignment then
self.jewelRadiusIndex = self.jewelData.radiusIndex
end
self.isUnique = self.rarity == "UNIQUE" or self.rarity == "RELIC"
end

---@param modId string The id which will be present on the removed mod lines
Expand Down Expand Up @@ -2149,6 +2150,11 @@ end
-- Calculate local modifiers, and removes them from the modifier list
-- To be considered local, a modifier must be an exact flag match, and cannot have any tags (e.g. conditions, multipliers)
-- Only the InSlot tag is allowed (for Adds x to x X Damage in X Hand modifiers)
---@param modList any
---@param name string
---@param type "FLAG"|"MORE"|"BASE"|"INC" other mod types not handled
---@param flags integer
---@return boolean|number
local function calcLocal(modList, name, type, flags)
local result
if type == "FLAG" then
Expand Down Expand Up @@ -2238,6 +2244,10 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum)
end
self.craftedQuality = craftedQuality
end
self.corruptImplicitCount = calcLocal(modList, "CorruptImplicitCount", "BASE", 0)
if self.corruptImplicitCount == 0 then
self.corruptImplicitCount = nil
end
if self.quality then
modList:NewMod("Multiplier:QualityOn"..slotName, "BASE", self.quality, "Quality")
end
Expand Down
4 changes: 3 additions & 1 deletion src/Classes/ItemDBControl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ function ItemDBClass:ItemDBControl(anchor, rect, itemsTab, db, dbType)
self.controls.requirement = new("DropDownControl"):DropDownControl({"LEFT",self.controls.sort,"BOTTOMLEFT"}, {0, 11, 179, 18}, { "Any requirements", "Current level", "Current attributes", "Current useable" }, function(index, value)
self.listBuildFlag = true
end)
self.controls.obtainable = new("DropDownControl"):DropDownControl({"LEFT",self.controls.requirement,"RIGHT"}, {2, 0, 179, 18}, { "Obtainable", "Any source", "Unobtainable", "Vendor Recipe", "Upgraded", "Boss Item", "Corruption"}, function(index, value)
self.controls.obtainable = new("DropDownControl"):DropDownControl({"LEFT",self.controls.requirement,"RIGHT"}, {2, 0, 179, 18}, { "Obtainable", "Any source", "Unobtainable", "Vendor Recipe", "Upgraded", "Boss Item", "Corruption", "Core Drop Pool"}, function(index, value)
self.listBuildFlag = true
end)
end
Expand Down Expand Up @@ -126,6 +126,8 @@ function ItemDBClass:DoesItemMatchFilters(item)
return false
elseif (self.controls.obtainable.selIndex == 7 and not (string.match(source, "Vaal Orb"))) then
return false
elseif (self.controls.obtainable.selIndex == 8) and item.source then
return false
end
end
if self.dbType == "UNIQUE" and self.controls.requirement.selIndex > 1 then
Expand Down
566 changes: 140 additions & 426 deletions src/Classes/ItemsTab.lua

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/Classes/LabelControl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ local LabelClass = newClass("LabelControl", "Control")

---@param anchor? ControlAnchor
---@param rect? ControlRect
---@param label string
---@param label Prop<string>
function LabelClass:LabelControl(anchor, rect, label)
self:Control(anchor, rect)
self.label = label
Expand Down
13 changes: 5 additions & 8 deletions src/Data/ModCache.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7956,8 +7956,7 @@ c["Can be Allflame Crafted as if Rare"]={{},nil}
c["Can be Enchanted by a Kalguuran Runesmith"]={nil,"Can be Enchanted by a Kalguuran Runesmith "}
c["Can be Enchanted by a Kalguuran Runesmith Can have 2 additional Runesmithing Enchantments"]={nil,"Can be Enchanted by a Kalguuran Runesmith Can have 2 additional Runesmithing Enchantments "}
c["Can be Runesmithed as though it were all One Handed Melee Weapon Types"]={nil,"Can be Runesmithed as though it were all One Handed Melee Weapon Types "}
c["Can be modified while Corrupted"]={nil,"Can be modified while Corrupted "}
c["Can be modified while Corrupted Can have up to 5 Implicit Modifiers while Item has this Modifier"]={nil,"Can be modified while Corrupted Can have up to 5 Implicit Modifiers while Item has this Modifier "}
c["Can be modified while Corrupted"]={{[1]={flags=0,keywordFlags=0,name="CorruptImplicitCount",type="BASE",value=5}},nil}
c["Can have 2 additional Runesmithing Enchantments"]={nil,"Can have 2 additional Runesmithing Enchantments "}
c["Can have 2 additional Runesmithing Enchantments Can be Runesmithed as though it were all One Handed Melee Weapon Types"]={nil,"Can have 2 additional Runesmithing Enchantments Can be Runesmithed as though it were all One Handed Melee Weapon Types "}
c["Can have 3 additional Enchantment Modifiers"]={{},nil}
Expand All @@ -7968,9 +7967,7 @@ c["Can have up to 2 additional Remote Mines placed at a time"]={{[1]={flags=0,ke
c["Can have up to 2 additional Traps placed at a time"]={{[1]={flags=0,keywordFlags=0,name="ActiveTrapLimit",type="BASE",value=2}},nil}
c["Can have up to 3 additional Remote Mines placed at a time"]={{[1]={flags=0,keywordFlags=0,name="ActiveMineLimit",type="BASE",value=3}},nil}
c["Can have up to 4 additional Traps placed at a time"]={{[1]={flags=0,keywordFlags=0,name="ActiveTrapLimit",type="BASE",value=4}},nil}
c["Can have up to 5 Implicit Modifiers while Item has this Modifier"]={nil,"Can have up to 5 Implicit Modifiers while Item has this Modifier "}
c["Can have up to 5 Implicit Modifiers while Item has this Modifier +2 to Level of Socketed Gems"]={nil,"Can have up to 5 Implicit Modifiers while Item has this Modifier +2 to Level of Socketed Gems "}
c["Can have up to 5 Implicit Modifiers while Item has this Modifier 200% increased Armour and Energy Shield"]={nil,"Can have up to 5 Implicit Modifiers while Item has this Modifier 200% increased Armour and Energy Shield "}
c["Can have up to 5 Implicit Modifiers while Item has this Modifier"]={{},nil}
c["Can have up to 5 additional Traps placed at a time"]={{[1]={flags=0,keywordFlags=0,name="ActiveTrapLimit",type="BASE",value=5}},nil}
c["Can't use Amulets"]={{[1]={[1]={slotName="Amulet",type="DisablesItem"},flags=0,keywordFlags=0,name="CanNotUseItem",type="Flag",value=1}},nil}
c["Can't use Belts"]={{[1]={[1]={slotName="Belt",type="DisablesItem"},flags=0,keywordFlags=0,name="CanNotUseItem",type="Flag",value=1}},nil}
Expand Down Expand Up @@ -9307,6 +9304,8 @@ c["Grants Level 20 Doryani's Touch Skill"]={{[1]={flags=0,keywordFlags=0,name="E
c["Grants Level 20 Hatred Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="Hatred"}}},nil}
c["Grants Level 20 Illusory Warp Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="IllusoryWarp"}}},nil}
c["Grants Level 20 Misty Reflection Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="MistyReflection"}}},nil}
c["Grants Level 20 Petrification Statue Skill"]={nil,nil}
c["Grants Level 20 Petrification Statue Skill 250% increased Energy Shield"]={nil,nil}
c["Grants Level 20 Queen's Demand Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="QueensDemand"}}},nil}
c["Grants Level 20 Ravenous Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="Ravenous"}}},nil}
c["Grants Level 20 Savage Barnacle"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="BarnacleSnap"}}},nil}
Expand All @@ -9318,8 +9317,6 @@ c["Grants Level 20 Summon Bestial Rhoa Skill"]={{[1]={flags=0,keywordFlags=0,nam
c["Grants Level 20 Summon Bestial Snake Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonBeastialSnake"}}},nil}
c["Grants Level 20 Summon Bestial Ursa Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonBeastialUrsa"}}},nil}
c["Grants Level 20 Summon Doedre's Effigy Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonDoedresEffigy"}}},nil}
c["Grants Level 20 Summon Petrification Statue Skill"]={nil,nil}
c["Grants Level 20 Summon Petrification Statue Skill 250% increased Energy Shield"]={nil,nil}
c["Grants Level 20 Summon Sentinel of Radiance Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonSentinelOfRadiance"}}},nil}
c["Grants Level 20 Summon Shaper Memory"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonShaperApparition"}}},nil}
c["Grants Level 20 Thirst for Blood Skill"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="ThirstForBlood"}}},nil}
Expand Down Expand Up @@ -11045,7 +11042,7 @@ c["Removes all but one Life on use Removed life is Regenerated as Energy Shield
c["Removes all mana"]={{[1]={flags=0,keywordFlags=0,name="Mana",type="MORE",value=-100}},nil}
c["Requires 8 Str, 8 Dex"]={nil,"Requires 8 Str, 8 Dex "}
c["Requires 8 Str, 8 Dex 40% increased Cast Speed"]={nil,"Requires 8 Str, 8 Dex 40% increased Cast Speed "}
c["Requires 8 Str, 8 Dex Implicits: 0"]={nil,"Requires 8 Str, 8 Dex Implicits: 0 "}
c["Requires 8 Str, 8 Dex Source: Fishing"]={nil,"Requires 8 Str, 8 Dex Source: Fishing "}
c["Requires Class Duelist"]={nil,"Requires Class Duelist "}
c["Requires Class Duelist Allocates Bane of Legends if you have the matching modifier on Forbidden Flame"]={nil,"Requires Class Duelist Allocates Bane of Legends if you have the matching modifier on Forbidden Flame "}
c["Requires Class Duelist Allocates Bane of Legends if you have the matching modifier on Forbidden Flesh"]={nil,"Requires Class Duelist Allocates Bane of Legends if you have the matching modifier on Forbidden Flesh "}
Expand Down
2 changes: 2 additions & 0 deletions src/Data/Uniques/body.lua
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ Having a placed Banner does not prevent you gaining Valour
Pragmatism
Colosseum Plate
League: Affliction
Source: unique{The King in the Mists} in the normal{Crux of Nothingness}
Requires Level 49, 134 Str
+12 to Level of Socketed Skill Gems
(80-120)% increased Armour
Expand Down Expand Up @@ -1157,6 +1158,7 @@ Gain a Power Charge for each Enemy you hit with a Critical Strike
Waxen Soul
Saint's Hauberk
League: Ritual
Source: Reward from Nameless Ritual, and rarely a regular Ritual
(10-20)% increased maximum Life
+(17-29)% to Chaos Resistance
Curse Skills cost Life instead of Mana
Expand Down
5 changes: 5 additions & 0 deletions src/Data/Uniques/boots.lua
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ Unwavering Stance
Redblade Tramplers
Ancient Greaves
League: Warbands
Source: Drops from Redblade Mercenary monsters
Variant: Pre 2.6.0
Variant: Current
Requires Level 46, 82 Str
Expand Down Expand Up @@ -612,6 +613,7 @@ Stun Threshold is based on 500% of your Mana instead of Life
Steppan Eard
Sorcerer Boots
League: Warbands
Source: Drops from Renegade Warband monsters
Variant: Pre 3.0.0
Variant: Current
Requires Level 67, 123 Int
Expand Down Expand Up @@ -784,6 +786,7 @@ Lose Adrenaline when you cease to be Flame-Touched
Gamblesprint
Hydrascale Boots
League: Affliction
Source: Reward from Ultimatum encounters
Requires Level 59, 56 Str, 56 Dex
+(30-40) to Dexterity
(100-150)% increased Armour and Evasion
Expand Down Expand Up @@ -951,6 +954,7 @@ Gain (10-20) Life per Enemy Killed
Brinerot Whalers
Trapper Boots
League: Warbands
Source: Drops from Brinerot Warband monsters
Variant: Pre 2.6.0
Variant: Pre 3.0.0
Variant: Current
Expand Down Expand Up @@ -1170,6 +1174,7 @@ Celestial Footprints
Olroth's Charge
Runic Sollerets
League: Expedition
Source: Drops from Expedition monsters
Requires Level 48, 37 Str, 37 Dex, 37 Int
(50-80)% increased Ward
(30-50)% slower Restoration of Ward
Expand Down
1 change: 1 addition & 0 deletions src/Data/Uniques/fishing.lua
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Glows while in an Area containing a Unique Fish
Song of the Sirens
Fishing Rod
Requires 8 Str, 8 Dex
Source: Fishing
Implicits: 0
Siren Worm Bait
(50-60)% increased Rarity of Fish Caught
Expand Down
6 changes: 5 additions & 1 deletion src/Data/Uniques/gloves.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ return {
Admiral's Arrogance
Antique Gauntlets
League: Settlers of Kalguur
Source: Drops from unique{Admiral Valerius} in normal{Shipping encounters}
Requires Level 39, 58 Str
(6-12)% increased Attack Speed
(100-140)% increased Armour
Expand Down Expand Up @@ -886,6 +887,7 @@ Chaos Skills have 20% chance to Ignite
Hand of Heresy
Martyr Gloves
League: Mercenaries of Trarthus
Source: Reward from Mercenary duel
Variant: Pre 3.28.0
Variant: Current
Requires Level 77, 70 Str, 70 Int
Expand Down Expand Up @@ -921,7 +923,6 @@ Unaffected by Shock while Leeching Energy Shield
Algor Mortis
Carnal Mitts
League: Delirium
Source: Drops from the Simulacrum Encounter
Requires Level 50, 39 Dex, 39 Int
+(50-70) to maximum Energy Shield
+(15-20)% to Cold and Lightning Resistances
Expand Down Expand Up @@ -1064,6 +1065,7 @@ Requires Level 5
]],[[
Malachai's Mark
Murder Mitts
Source: Drops from unique{Nightmare of the Depraved Trinity} in normal{Abomination Map}
Requires Level 67, 51 Dex, 51 Int
(80-100)% increased Evasion and Energy Shield
+(60-80) to maximum Life
Expand Down Expand Up @@ -1147,6 +1149,7 @@ Medved's Challenge
Runic Gauntlets
Requires Level 69, 38 Str, 38 Dex, 38 Int
League: Expedition
Source: Drops from Expedition monsters
800% increased Attribute Requirements
(30-50)% increased Ward
+(15-25)% to all Elemental Resistances
Expand All @@ -1159,6 +1162,7 @@ Variant: Pre 3.16.0
Variant: Pre 3.25.0
Variant: Current
League: Expedition
Source: Drops from Expedition monsters
Requires Level 48, 31 Str, 31 Dex, 31 Int
(33-48)% increased Ward
+(17-23)% to Chaos Resistance
Expand Down
8 changes: 7 additions & 1 deletion src/Data/Uniques/helmet.lua
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ Requires Level 55, 114 Str
Kaom's Command
Siege Helmet
League: Settlers of Kalguur
Source: Kingsmarch Shipping to normal{Ngakanu} or normal{Te Onui}
Requires Level 48, 101 Str
+(60-80) to maximum Life
(25-35)% increased Warcry Speed
Expand Down Expand Up @@ -784,6 +785,7 @@ Bone Circlet
Variant: Pre 3.19.0
Variant: Pre 3.24.0
Variant: Current
Source: Drops from unique{Nightmare of Catarina} in normal{Ziggurat Map}
Requires Level: 34, 73 Int
{variant:3}Has 4 Abyssal Sockets
{variant:1,2}+2 to Level of Socketed Minion Gems
Expand Down Expand Up @@ -1028,6 +1030,7 @@ Requires Level 36, 42 Str, 42 Dex
El'Abin's Visage
Fencer Helm
League: Crucible
Source: Drops from Crucible monsters
+(20-30) to Strength
+(20-30) to Dexterity
(80-120)% increased Armour and Evasion
Expand All @@ -1038,6 +1041,7 @@ Crucible Passive Skill Tree is removed if this Modifier is removed
The Trickster's Smile
Visored Sallet
League: Affliction
Source: Drops from Viridian Wildwood and Ritual monsters
Requires Level 23, 28 Str, 28 Dex
(60-100)% increased Armour and Evasion
Reflects 100 Cold Damage to Melee Attackers
Expand Down Expand Up @@ -1508,10 +1512,11 @@ Chaos Resistance is Zero
Corrupted
]],[[
Gorgon's Gaze
Source: Drops from unique{Talin, Faithbreaker} in normal{Pillars of Arun}
Regicide Mask
Requires Level 52, 58 Dex, 58 Int
Implicits: 0
Grants Level 20 Summon Petrification Statue Skill
Grants Level 20 Petrification Statue Skill
(200-250)% increased Energy Shield
+(60-80) to maximum Life
(5-10)% increased Attack and Cast Speed
Expand Down Expand Up @@ -1714,6 +1719,7 @@ Lose all Power Charges when you Block
Faithguard
Runic Helm
League: Expedition
Source: Drops from Expedition monsters
Variant: Pre 3.19.0
Variant: Current
+(20-30) to Intelligence
Expand Down
4 changes: 4 additions & 0 deletions src/Data/Uniques/jewel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -857,18 +857,21 @@ Radius: Medium
[[
Amanamu's Gaze
Ghastly Eye Jewel
Source: Drops from unique{Abyssal Liches} in normal{Abyssal Depths}
+(5-10) to all Attributes
Minions have +6% to Damage over Time Multiplier per
Ghastly Eye Jewel affecting you, up to a maximum of +30%
]],[[
Kurgal's Gaze
Hypnotic Eye Jewel
Source: Drops from unique{Abyssal Liches} in normal{Abyssal Depths}
+(10-20) to Intelligence
8% increased Effect of Arcane Surge on you per
Hypnotic Eye Jewel affecting you, up to a maximum of 40%
]],[[
Tecrod's Gaze
Murderous Eye Jewel
Source: Drops from unique{Abyssal Liches} in normal{Abyssal Depths}
Variant: Pre 3.21.0
Variant: Current
Requires Level 40
Expand All @@ -884,6 +887,7 @@ Requires Level 40
]],[[
Ulaman's Gaze
Searching Eye Jewel
Source: Drops from unique{Abyssal Liches} in normal{Abyssal Depths}
Requires Level 40
+(10-20) to Dexterity
Projectiles have 4% chance to be able to Chain when colliding with terrain per
Expand Down
1 change: 1 addition & 0 deletions src/Data/Uniques/quiver.lua
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,7 @@ Broadhead Arrow Quiver
Variant: Pre 3.17.0
Variant: Current
LevelReq: 52
Source: Labyrinth
Implicits: 2
{variant:2}(8-10)% increased Attack Speed
{variant:1}6 to 12 Added Physical Damage with Bow Attacks
Expand Down
Loading
Loading