From 1c9bd0c944f727c8a7407364163480d218457831 Mon Sep 17 00:00:00 2001 From: PJacek Date: Wed, 8 Jan 2025 22:46:20 +0100 Subject: [PATCH] Update jewel radius colors and parsing for variable radii --- src/Classes/Item.lua | 8 ++-- src/Classes/PassiveSpec.lua | 12 +++--- src/Classes/PassiveTreeView.lua | 6 +-- src/Data/ModCache.lua | 74 ++++++++++++++++----------------- src/Modules/Data.lua | 26 ++++++------ src/Modules/ModParser.lua | 27 ++++++------ 6 files changed, 76 insertions(+), 77 deletions(-) diff --git a/src/Classes/Item.lua b/src/Classes/Item.lua index af2dc889ff..c9b7c5497e 100644 --- a/src/Classes/Item.lua +++ b/src/Classes/Item.lua @@ -1395,10 +1395,10 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) for _, value in ipairs(modList:List(nil, "JewelData")) do jewelData[value.key] = value.value end - if modList:List(nil, "ImpossibleEscapeKeystones") then - jewelData.impossibleEscapeKeystones = { } - for _, value in ipairs(modList:List(nil, "ImpossibleEscapeKeystones")) do - jewelData.impossibleEscapeKeystones[value.key] = value.value + if modList:List(nil, "FromNothingKeystones") then + jewelData.fromNothingKeystones = { } + for _, value in ipairs(modList:List(nil, "FromNothingKeystones")) do + jewelData.fromNothingKeystones[value.key] = value.value end end if self.clusterJewel then diff --git a/src/Classes/PassiveSpec.lua b/src/Classes/PassiveSpec.lua index cc72aadbf2..0719adc7b7 100644 --- a/src/Classes/PassiveSpec.lua +++ b/src/Classes/PassiveSpec.lua @@ -900,8 +900,8 @@ function PassiveSpecClass:NodesInIntuitiveLeapLikeRadius(node) end end - if item.jewelData and item.jewelData.impossibleEscapeKeystone then - for keyName, keyNode in pairs(item.jewelData.impossibleEscapeKeystones) do + if item.jewelData and item.jewelData.fromNothingKeystone then + for keyName, keyNode in pairs(item.jewelData.fromNothingKeystones) do if self.tree.keystoneMap[keyName] and self.tree.keystoneMap[keyName].nodesInRadius then for affectedNodeId in pairs(self.tree.keystoneMap[keyName].nodesInRadius[radiusIndex]) do if self.nodes[affectedNodeId].alloc then @@ -956,9 +956,9 @@ function PassiveSpecClass:BuildAllDependsAndPaths() end end - if item.jewelData and item.jewelData.impossibleEscapeKeystone then + if item.jewelData and item.jewelData.fromNothingKeystone then for keyName, keyNode in pairs(self.tree.keystoneMap) do - if item.jewelData.impossibleEscapeKeystones[keyName] and keyNode.nodesInRadius then + if item.jewelData.fromNothingKeystones[keyName] and keyNode.nodesInRadius then if keyNode.nodesInRadius[radiusIndex][node.id] then t_insert(node.intuitiveLeapLikesAffecting, self.nodes[nodeId]) end @@ -1295,8 +1295,8 @@ function PassiveSpecClass:BuildAllDependsAndPaths() and self.nodes[nodeId].nodesInRadius[self.build.itemsTab.items[itemId].jewelRadiusIndex][depNode.id] ) or ( self.build.itemsTab.items[itemId].jewelData - and self.build.itemsTab.items[itemId].jewelData.impossibleEscapeKeystones - and self:NodeInKeystoneRadius(self.build.itemsTab.items[itemId].jewelData.impossibleEscapeKeystones, depNode.id, self.build.itemsTab.items[itemId].jewelRadiusIndex) + and self.build.itemsTab.items[itemId].jewelData.fromNothingKeystones + and self:NodeInKeystoneRadius(self.build.itemsTab.items[itemId].jewelData.fromNothingKeystones, depNode.id, self.build.itemsTab.items[itemId].jewelRadiusIndex) ) ) then -- Hold off on the pruning; this node could be supported by Intuitive Leap-like jewel diff --git a/src/Classes/PassiveTreeView.lua b/src/Classes/PassiveTreeView.lua index 4b6c444c85..ccff4c59ff 100644 --- a/src/Classes/PassiveTreeView.lua +++ b/src/Classes/PassiveTreeView.lua @@ -854,9 +854,9 @@ function PassiveTreeViewClass:Draw(build, viewPort, inputEvents) local outerSize = radData.outer * scale local innerSize = radData.inner * scale * 1.06 SetDrawColor(1,1,1,0.7) - if jewel.title == "Impossible Escape" then - -- Impossible Escape ring shows on the allocated Keystone - for keystoneName, _ in pairs(jewel.jewelData.impossibleEscapeKeystones) do + if jewel.title == "From Nothing" then + -- From Nothing ring shows on the allocated Keystone + for keystoneName, _ in pairs(jewel.jewelData.fromNothingKeystones) do local keystone = spec.tree.keystoneMap[keystoneName] if keystone and keystone.x and keystone.y then innerSize = 150 * scale diff --git a/src/Data/ModCache.lua b/src/Data/ModCache.lua index 7158049285..a894353349 100755 --- a/src/Data/ModCache.lua +++ b/src/Data/ModCache.lua @@ -2302,8 +2302,7 @@ c["Dodge Roll cannot Avoid Damage Take 30% less Damage from Hits while Dodge Rol c["Dodge Roll passes through Enemies"]={nil,"Dodge Roll passes through Enemies "} c["Double Activation Delay of Curses"]={nil,"Double Activation Delay of Curses "} c["Double Stun Threshold while Shield is Raised"]={nil,"Double Stun Threshold while Shield is Raised "} -c["Double the number of your Poisons that targets can be affected by at the same time"]={nil,"Double the number of your Poisons that targets can be affected by at the same time "} -c["Double the number of your Poisons that targets can be affected by at the same time 35% less Poison Duration"]={nil,"Double the number of your Poisons that targets can be affected by at the same time 35% less Poison Duration "} +c["Double the number of your Poisons that targets can be affected by at the same time"]={{[1]={flags=0,keywordFlags=0,name="PoisonCanStack",type="FLAG",value=true},[2]={flags=0,keywordFlags=0,name="PoisonStacks",type="MORE",value=100}},nil} c["Drop Ignited Ground while moving, which lasts 8 seconds and Ignites as though dealing Fire Damage equal to 10% of your maximum Life"]={nil,"Drop Ignited Ground while moving, which lasts 8 seconds and Ignites as though dealing Fire Damage equal to 10% of your maximum Life "} c["Drop Shocked Ground while moving, lasting 8 seconds"]={nil,"Drop Shocked Ground while moving, lasting 8 seconds "} c["Effect and Duration of Flames of Chayula on You is Doubled"]={nil,"Effect and Duration of Flames of Chayula on You is Doubled "} @@ -2498,7 +2497,7 @@ c["Grants Skill: Level 11 Mana Drain"]={{[1]={flags=0,keywordFlags=0,name="Extra c["Grants Skill: Level 11 Purity of Fire"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="PurityOfFirePlayer"}}},nil} c["Grants Skill: Level 11 Purity of Lightning"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="PurityOfLightningPlayer"}}},nil} c["Grants Skill: Level 11 Sigil of Power"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="SigilOfPowerPlayer"}}},nil} -c["Grants Skill: Level 11 Skeletal Warrior Minion"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="SummonSkeletalWarriorsPlayer"}}},nil} +c["Grants Skill: Level 11 Skeletal Warrior Minion"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="WeaponGrantedSummonSkeletalWarriorsPlayer"}}},nil} c["Grants Skill: Level 11 Spark"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="SparkPlayer"}}},nil} c["Grants Skill: Level 11 Volatile Dead"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=11,skillId="VolatileDeadPlayer"}}},nil} c["Grants Skill: Level 20 Bone Blast"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="BoneBlastPlayer"}}},nil} @@ -2515,7 +2514,7 @@ c["Grants Skill: Level 20 Purity of Fire"]={{[1]={flags=0,keywordFlags=0,name="E c["Grants Skill: Level 20 Purity of Ice"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="PurityOfIcePlayer"}}},nil} c["Grants Skill: Level 20 Purity of Lightning"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="PurityOfLightningPlayer"}}},nil} c["Grants Skill: Level 20 Sigil of Power"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SigilOfPowerPlayer"}}},nil} -c["Grants Skill: Level 20 Skeletal Warrior Minion"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SummonSkeletalWarriorsPlayer"}}},nil} +c["Grants Skill: Level 20 Skeletal Warrior Minion"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="WeaponGrantedSummonSkeletalWarriorsPlayer"}}},nil} c["Grants Skill: Level 20 Spark"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="SparkPlayer"}}},nil} c["Grants Skill: Level 20 Volatile Dead"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=20,skillId="VolatileDeadPlayer"}}},nil} c["Grants Skill: Life Remnants"]={{[1]={flags=0,keywordFlags=0,name="ExtraSkill",type="LIST",value={level=1,skillId="LifeRemnantsPlayer"}}},nil} @@ -2766,46 +2765,43 @@ c["On Freezing Enemies create Chilled Ground"]={nil,"On Freezing Enemies create c["On Hitting an enemy, gains maximum added Lightning damage equal to"]={nil,"On Hitting an enemy, gains maximum added Lightning damage equal to "} c["On Hitting an enemy, gains maximum added Lightning damage equal to the enemy's Power for 6 seconds, up to a total of 500"]={nil,"On Hitting an enemy, gains maximum added Lightning damage equal to the enemy's Power for 6 seconds, up to a total of 500 "} c["On-Kill Effects happen twice"]={nil,"On-Kill Effects happen twice "} -c["Only affects Passives in Large Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=6}}},nil} -c["Only affects Passives in Medium Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=5}}},nil} -c["Only affects Passives in Medium-Large Ring"]={nil,"Only affects Passives in Medium-Large Ring "} -c["Only affects Passives in Medium-Large Ring Only affects Passives in Large Ring"]={nil,"Only affects Passives in Medium-Large Ring Only affects Passives in Large Ring "} -c["Only affects Passives in Medium-Small Ring"]={nil,"Only affects Passives in Medium-Small Ring "} -c["Only affects Passives in Medium-Small Ring Only affects Passives in Medium Ring"]={nil,"Only affects Passives in Medium-Small Ring Only affects Passives in Medium Ring "} -c["Only affects Passives in Small Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=4}}},nil} -c["Only affects Passives in Very Large Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=7}}},nil} -c["Only affects Passives in Very Small Ring"]={nil,"Only affects Passives in Very Small Ring "} -c["Only affects Passives in Very Small Ring Only affects Passives in Small Ring"]={nil,"Only affects Passives in Very Small Ring Only affects Passives in Small Ring "} +c["Only affects Passives in Large Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=10}}},nil} +c["Only affects Passives in Medium Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=8}}},nil} +c["Only affects Passives in Medium-Large Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=9}}},nil} +c["Only affects Passives in Medium-Small Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=7}}},nil} +c["Only affects Passives in Small Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=6}}},nil} +c["Only affects Passives in Very Large Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=11}}},nil} +c["Only affects Passives in Very Small Ring"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="radiusIndex",value=5}}},nil} c["Onslaught"]={{[1]={flags=0,keywordFlags=0,name="Condition:Onslaught",type="FLAG",value=true}},nil} c["Other Modifiers to Movement Speed do not apply"]={nil,"Other Modifiers to Movement Speed do not apply "} c["Pain Attunement"]={{[1]={flags=0,keywordFlags=0,name="Keystone",type="LIST",value="Pain Attunement"}},nil} c["Passives in Radius can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="intuitiveLeapLike",value=true}}},nil} c["Passives in radius are Conquered by the Kalguur"]={{},nil} -c["Passives in radius of Acrobatics can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="acrobatics"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="acrobatics",value=true}}},nil} -c["Passives in radius of Ancestral Bond can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="ancestral bond"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="ancestral bond",value=true}}},nil} -c["Passives in radius of Avatar of Fire can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="avatar of fire"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="avatar of fire",value=true}}},nil} -c["Passives in radius of Blood Magic can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="blood magic"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="blood magic",value=true}}},nil} -c["Passives in radius of Bulwark can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="bulwark"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="bulwark",value=true}}},nil} -c["Passives in radius of Chaos Inoculation can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="chaos inoculation"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="chaos inoculation",value=true}}},nil} -c["Passives in radius of Conduit can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="conduit"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="conduit",value=true}}},nil} -c["Passives in radius of Dance with Death can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="dance with death"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="dance with death",value=true}}},nil} -c["Passives in radius of Eldritch Battery can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="eldritch battery"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="eldritch battery",value=true}}},nil} -c["Passives in radius of Elemental Equilibrium can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="elemental equilibrium"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="elemental equilibrium",value=true}}},nil} -c["Passives in radius of Eternal Youth can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="eternal youth"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="eternal youth",value=true}}},nil} -c["Passives in radius of Giant's Blood can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="giant's blood"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="giant's blood",value=true}}},nil} -c["Passives in radius of Glancing Blows can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="glancing blows"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="glancing blows",value=true}}},nil} -c["Passives in radius of Heartstopper can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="heartstopper"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="heartstopper",value=true}}},nil} -c["Passives in radius of Iron Reflexes can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="iron reflexes"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="iron reflexes",value=true}}},nil} -c["Passives in radius of Mind Over Matter can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="mind over matter"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="mind over matter",value=true}}},nil} -c["Passives in radius of Necromantic Talisman can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="necromantic talisman"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="necromantic talisman",value=true}}},nil} -c["Passives in radius of Oasis can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="oasis"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="oasis",value=true}}},nil} -c["Passives in radius of Pain Attunement can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="pain attunement"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="pain attunement",value=true}}},nil} -c["Passives in radius of Resolute Technique can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="resolute technique"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="resolute technique",value=true}}},nil} -c["Passives in radius of Resonance can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="resonance"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="resonance",value=true}}},nil} -c["Passives in radius of Unwavering Stance can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="unwavering stance"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="unwavering stance",value=true}}},nil} -c["Passives in radius of Vaal Pact can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="vaal pact"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="vaal pact",value=true}}},nil} -c["Passives in radius of Whispers of Doom can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="whispers of doom"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="whispers of doom",value=true}}},nil} -c["Passives in radius of Zealot's Oath can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="impossibleEscapeKeystone",value="zealot's oath"}},[2]={flags=0,keywordFlags=0,name="ImpossibleEscapeKeystones",type="LIST",value={key="zealot's oath",value=true}}},nil} +c["Passives in radius of Acrobatics can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="acrobatics"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="acrobatics",value=true}}},nil} +c["Passives in radius of Ancestral Bond can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="ancestral bond"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="ancestral bond",value=true}}},nil} +c["Passives in radius of Avatar of Fire can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="avatar of fire"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="avatar of fire",value=true}}},nil} +c["Passives in radius of Blood Magic can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="blood magic"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="blood magic",value=true}}},nil} +c["Passives in radius of Bulwark can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="bulwark"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="bulwark",value=true}}},nil} +c["Passives in radius of Chaos Inoculation can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="chaos inoculation"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="chaos inoculation",value=true}}},nil} +c["Passives in radius of Conduit can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="conduit"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="conduit",value=true}}},nil} +c["Passives in radius of Dance with Death can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="dance with death"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="dance with death",value=true}}},nil} +c["Passives in radius of Eldritch Battery can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="eldritch battery"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="eldritch battery",value=true}}},nil} +c["Passives in radius of Elemental Equilibrium can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="elemental equilibrium"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="elemental equilibrium",value=true}}},nil} +c["Passives in radius of Eternal Youth can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="eternal youth"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="eternal youth",value=true}}},nil} +c["Passives in radius of Giant's Blood can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="giant's blood"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="giant's blood",value=true}}},nil} +c["Passives in radius of Glancing Blows can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="glancing blows"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="glancing blows",value=true}}},nil} +c["Passives in radius of Heartstopper can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="heartstopper"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="heartstopper",value=true}}},nil} +c["Passives in radius of Iron Reflexes can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="iron reflexes"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="iron reflexes",value=true}}},nil} +c["Passives in radius of Mind Over Matter can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="mind over matter"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="mind over matter",value=true}}},nil} +c["Passives in radius of Necromantic Talisman can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="necromantic talisman"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="necromantic talisman",value=true}}},nil} +c["Passives in radius of Oasis can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="oasis"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="oasis",value=true}}},nil} +c["Passives in radius of Pain Attunement can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="pain attunement"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="pain attunement",value=true}}},nil} +c["Passives in radius of Resolute Technique can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="resolute technique"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="resolute technique",value=true}}},nil} +c["Passives in radius of Resonance can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="resonance"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="resonance",value=true}}},nil} +c["Passives in radius of Unwavering Stance can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="unwavering stance"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="unwavering stance",value=true}}},nil} +c["Passives in radius of Vaal Pact can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="vaal pact"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="vaal pact",value=true}}},nil} +c["Passives in radius of Whispers of Doom can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="whispers of doom"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="whispers of doom",value=true}}},nil} +c["Passives in radius of Zealot's Oath can be Allocated without being connected to your tree"]={{[1]={flags=0,keywordFlags=0,name="JewelData",type="LIST",value={key="fromNothingKeystone",value="zealot's oath"}},[2]={flags=0,keywordFlags=0,name="FromNothingKeystones",type="LIST",value={key="zealot's oath",value=true}}},nil} c["Permanently Intimidate enemies on Block"]={{[1]={[1]={type="Condition",var="BlockedRecently"},flags=0,keywordFlags=0,name="EnemyModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="Condition:Intimidated",type="FLAG",value=true}}}},nil} c["Physical Damage Reduction from Armour is based on your combined Armour and Evasion Rating"]={nil,"Physical Damage Reduction from Armour is based on your combined Armour and Evasion Rating "} c["Physical Damage Reduction from Armour is based on your combined Armour and Evasion Rating 40% less Evasion Rating"]={nil,"Physical Damage Reduction from Armour is based on your combined Armour and Evasion Rating 40% less Evasion Rating "} diff --git a/src/Modules/Data.lua b/src/Modules/Data.lua index c49758e0e3..b102bad5be 100644 --- a/src/Modules/Data.lua +++ b/src/Modules/Data.lua @@ -501,19 +501,19 @@ data.jewelRadii = { { inner = 2400, outer = 2880, col = "^x0B9300", label = "Variable" }, }, ["4_0"] = { - { inner = 0, outer = 1000, col = "^xFF0000", label = "Small" }, - { inner = 0, outer = 1150, col = "^xFF0000", label = "Medium" }, - { inner = 0, outer = 1300, col = "^xFF0000", label = "Large" }, - { inner = 0, outer = 1500, col = "^xFF0000", label = "Very Large" }, - - { inner = 650, outer = 950, col = "^xFF0000", label = "Variable" }, - { inner = 800, outer = 1100, col = "^xFF0000", label = "Variable" }, - { inner = 950, outer = 1250, col = "^xFF0000", label = "Variable" }, - { inner = 1100, outer = 1400, col = "^xFF0000", label = "Variable" }, - { inner = 1250, outer = 1550, col = "^xFF0000", label = "Variable" }, - { inner = 1400, outer = 1700, col = "^xFF0000", label = "Variable" }, - { inner = 1650, outer = 1950, col = "^xFF0000", label = "Variable" }, - { inner = 1800, outer = 2100, col = "^xFF0000", label = "Variable" }, + { inner = 0, outer = 1000, col = "^xBB6600", label = "Small" }, + { inner = 0, outer = 1150, col = "^x66FFCC", label = "Medium" }, + { inner = 0, outer = 1300, col = "^x2222CC", label = "Large" }, + { inner = 0, outer = 1500, col = "^xC100FF", label = "Very Large" }, + + { inner = 650, outer = 950, col = "^xD35400", label = "Variable" }, + { inner = 800, outer = 1100, col = "^x66FFCC", label = "Variable" }, + { inner = 950, outer = 1250, col = "^x2222CC", label = "Variable" }, + { inner = 1100, outer = 1400, col = "^xC100FF", label = "Variable" }, + { inner = 1250, outer = 1550, col = "^x0B9300", label = "Variable" }, + { inner = 1400, outer = 1700, col = "^xFFCC00", label = "Variable" }, + { inner = 1650, outer = 1950, col = "^xFF6600", label = "Variable" }, + { inner = 1800, outer = 2100, col = "^x0099FF", label = "Variable" }, } } diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 5037356cad..e479b72449 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -4485,20 +4485,23 @@ local specialModList = { } end, -- Jewels ["passives in radius of ([%a%s']+) can be allocated without being connected to your tree"] = function(_, name) return { - mod("JewelData", "LIST", { key = "impossibleEscapeKeystone", value = name }), - mod("ImpossibleEscapeKeystones", "LIST", { key = name, value = true }), + mod("JewelData", "LIST", { key = "fromNothingKeystone", value = name }), + mod("FromNothingKeystones", "LIST", { key = name, value = true }), } end, ["passives in radius can be allocated without being connected to your tree"] = { mod("JewelData", "LIST", { key = "intuitiveLeapLike", value = true }) }, - ["affects passives in small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 4 }) }, - ["affects passives in medium ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 5 }) }, - ["affects passives in large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 6 }) }, - ["affects passives in very large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 7 }) }, - ["affects passives in massive ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 8 }) }, - ["only affects passives in small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 4 }) }, - ["only affects passives in medium ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 5 }) }, - ["only affects passives in large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 6 }) }, - ["only affects passives in very large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 7 }) }, - ["only affects passives in massive ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 8 }) }, + ["affects passives in small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 6 }) }, + ["affects passives in medium ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 8 }) }, + ["affects passives in large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 10 }) }, + ["affects passives in very large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 11 }) }, + ["affects passives in massive ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 12 }) }, + ["only affects passives in very small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 5 }) }, + ["only affects passives in small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 6 }) }, + ["only affects passives in medium%-small ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 7 }) }, + ["only affects passives in medium ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 8 }) }, + ["only affects passives in medium%-large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 9 }) }, + ["only affects passives in large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 10 }) }, + ["only affects passives in very large ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 11 }) }, + ["only affects passives in massive ring"] = { mod("JewelData", "LIST", { key = "radiusIndex", value = 12 }) }, ["primordial"] = { mod("Multiplier:PrimordialItem", "BASE", 1) }, ["spectres have a base duration of (%d+) seconds"] = { mod("SkillData", "LIST", { key = "duration", value = 6 }, { type = "SkillName", skillName = "Raise Spectre", includeTransfigured = true }) }, ["flasks applied to you have (%d+)%% increased effect"] = function(num) return { mod("FlaskEffect", "INC", num, { type = "ActorCondition", actor = "player"}) } end,