Skip to content

Commit 34ffec6

Browse files
LocalIdentityLocalIdentity
andauthored
Fix Rune Daggers not counting as different weapon type for Mastery (#9198)
Rune Daggers were not counting as different weapon types for the purpose of the Mastery that increases your damage when using 2 different weapon types Co-authored-by: LocalIdentity <localidentity2@gmail.com>
1 parent 238d451 commit 34ffec6

File tree

5 files changed

+22
-21
lines changed

5 files changed

+22
-21
lines changed

src/Classes/Item.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1438,6 +1438,7 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum)
14381438
local weaponData = { }
14391439
self.weaponData[slotNum] = weaponData
14401440
weaponData.type = self.base.type
1441+
weaponData.subType = self.base.subType
14411442
weaponData.name = self.name
14421443
weaponData.AttackSpeedInc = calcLocal(modList, "Speed", "INC", ModFlag.Attack) + m_floor(self.quality / 8 * calcLocal(modList, "AlternateQualityLocalAttackSpeedPer8Quality", "INC", 0))
14431444
weaponData.AttackRate = round(self.base.weapon.AttackRateBase * (1 + weaponData.AttackSpeedInc / 100), 2)

src/Classes/ItemsTab.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3344,7 +3344,7 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode)
33443344
if base.weapon then
33453345
-- Weapon-specific info
33463346
local weaponData = item.weaponData[slotNum]
3347-
tooltip:AddLine(fontSizeBig, s_format("^x7F7F7F%s", self.build.data.weaponTypeInfo[base.type].label or base.type), "FONTIN SC")
3347+
tooltip:AddLine(fontSizeBig, s_format("^x7F7F7F%s", self.build.data.weaponTypeInfo[base.type].label or base.subType or base.type), "FONTIN SC")
33483348
if item.quality > 0 then
33493349
tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FQuality: "..colorCodes.MAGIC.."+%d%%", item.quality), "FONTIN SC")
33503350
end

src/Data/Bases/dagger.lua

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ itemBases["Ethereal Blade"] = {
144144

145145
itemBases["Carving Knife"] = {
146146
type = "Dagger",
147-
subType = "Rune",
147+
subType = "Rune Dagger",
148148
socketLimit = 3,
149149
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
150150
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -155,7 +155,7 @@ itemBases["Carving Knife"] = {
155155
}
156156
itemBases["Boot Knife"] = {
157157
type = "Dagger",
158-
subType = "Rune",
158+
subType = "Rune Dagger",
159159
socketLimit = 3,
160160
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
161161
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -166,7 +166,7 @@ itemBases["Boot Knife"] = {
166166
}
167167
itemBases["Copper Kris"] = {
168168
type = "Dagger",
169-
subType = "Rune",
169+
subType = "Rune Dagger",
170170
socketLimit = 3,
171171
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
172172
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -177,7 +177,7 @@ itemBases["Copper Kris"] = {
177177
}
178178
itemBases["Skean"] = {
179179
type = "Dagger",
180-
subType = "Rune",
180+
subType = "Rune Dagger",
181181
socketLimit = 3,
182182
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
183183
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -188,7 +188,7 @@ itemBases["Skean"] = {
188188
}
189189
itemBases["Imp Dagger"] = {
190190
type = "Dagger",
191-
subType = "Rune",
191+
subType = "Rune Dagger",
192192
socketLimit = 3,
193193
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
194194
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -199,7 +199,7 @@ itemBases["Imp Dagger"] = {
199199
}
200200
itemBases["Butcher Knife"] = {
201201
type = "Dagger",
202-
subType = "Rune",
202+
subType = "Rune Dagger",
203203
socketLimit = 3,
204204
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
205205
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -210,7 +210,7 @@ itemBases["Butcher Knife"] = {
210210
}
211211
itemBases["Boot Blade"] = {
212212
type = "Dagger",
213-
subType = "Rune",
213+
subType = "Rune Dagger",
214214
socketLimit = 3,
215215
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
216216
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -221,7 +221,7 @@ itemBases["Boot Blade"] = {
221221
}
222222
itemBases["Golden Kris"] = {
223223
type = "Dagger",
224-
subType = "Rune",
224+
subType = "Rune Dagger",
225225
socketLimit = 3,
226226
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
227227
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -232,7 +232,7 @@ itemBases["Golden Kris"] = {
232232
}
233233
itemBases["Royal Skean"] = {
234234
type = "Dagger",
235-
subType = "Rune",
235+
subType = "Rune Dagger",
236236
socketLimit = 3,
237237
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
238238
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -243,7 +243,7 @@ itemBases["Royal Skean"] = {
243243
}
244244
itemBases["Fiend Dagger"] = {
245245
type = "Dagger",
246-
subType = "Rune",
246+
subType = "Rune Dagger",
247247
socketLimit = 3,
248248
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
249249
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -254,7 +254,7 @@ itemBases["Fiend Dagger"] = {
254254
}
255255
itemBases["Slaughter Knife"] = {
256256
type = "Dagger",
257-
subType = "Rune",
257+
subType = "Rune Dagger",
258258
socketLimit = 3,
259259
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, weapon = true, },
260260
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -265,7 +265,7 @@ itemBases["Slaughter Knife"] = {
265265
}
266266
itemBases["Ezomyte Dagger"] = {
267267
type = "Dagger",
268-
subType = "Rune",
268+
subType = "Rune Dagger",
269269
socketLimit = 3,
270270
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, top_tier_base_item_type = true, weapon = true, },
271271
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -276,7 +276,7 @@ itemBases["Ezomyte Dagger"] = {
276276
}
277277
itemBases["Platinum Kris"] = {
278278
type = "Dagger",
279-
subType = "Rune",
279+
subType = "Rune Dagger",
280280
socketLimit = 3,
281281
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, top_tier_base_item_type = true, weapon = true, },
282282
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -287,7 +287,7 @@ itemBases["Platinum Kris"] = {
287287
}
288288
itemBases["Imperial Skean"] = {
289289
type = "Dagger",
290-
subType = "Rune",
290+
subType = "Rune Dagger",
291291
socketLimit = 3,
292292
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, top_tier_base_item_type = true, weapon = true, },
293293
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -298,7 +298,7 @@ itemBases["Imperial Skean"] = {
298298
}
299299
itemBases["Demon Dagger"] = {
300300
type = "Dagger",
301-
subType = "Rune",
301+
subType = "Rune Dagger",
302302
socketLimit = 3,
303303
tags = { dagger = true, default = true, one_hand_weapon = true, onehand = true, top_tier_base_item_type = true, weapon = true, },
304304
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -309,7 +309,7 @@ itemBases["Demon Dagger"] = {
309309
}
310310
itemBases["Flickerflame Blade"] = {
311311
type = "Dagger",
312-
subType = "Rune",
312+
subType = "Rune Dagger",
313313
socketLimit = 3,
314314
tags = { dagger = true, default = true, experimental_base = true, not_for_sale = true, one_hand_weapon = true, onehand = true, weapon = true, },
315315
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -320,7 +320,7 @@ itemBases["Flickerflame Blade"] = {
320320
}
321321
itemBases["Flashfire Blade"] = {
322322
type = "Dagger",
323-
subType = "Rune",
323+
subType = "Rune Dagger",
324324
socketLimit = 3,
325325
tags = { dagger = true, default = true, experimental_base = true, not_for_sale = true, one_hand_weapon = true, onehand = true, weapon = true, },
326326
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },
@@ -331,7 +331,7 @@ itemBases["Flashfire Blade"] = {
331331
}
332332
itemBases["Infernal Blade"] = {
333333
type = "Dagger",
334-
subType = "Rune",
334+
subType = "Rune Dagger",
335335
socketLimit = 3,
336336
tags = { dagger = true, default = true, experimental_base = true, not_for_sale = true, one_hand_weapon = true, onehand = true, weapon = true, },
337337
influenceTags = { shaper = "rune_dagger_shaper", elder = "rune_dagger_elder", adjudicator = "rune_dagger_adjudicator", basilisk = "rune_dagger_basilisk", crusader = "rune_dagger_crusader", eyrie = "rune_dagger_eyrie", cleansing = "rune_dagger_cleansing", tangle = "rune_dagger_tangle" },

src/Export/Bases/dagger.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ local itemBases = ...
77
#baseMatch BaseType Metadata/Items/Weapons/OneHandWeapons/Daggers/AbstractDagger
88

99
#type Dagger
10-
#subType Rune
10+
#subType Rune Dagger
1111
#influenceBaseTag rune_dagger
1212
#socketLimit 3
1313
#baseMatch BaseType Metadata/Items/Weapons/OneHandWeapons/Daggers/AbstractRuneDagger

src/Modules/CalcPerform.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ local function doActorAttribsConditions(env, actor)
214214
if (actor.weaponData1.type == "Dagger" or actor.weaponData1.countsAsAll1H) and (actor.weaponData2.type == "Dagger" or actor.weaponData2.countsAsAll1H) then
215215
condList["DualWieldingDaggers"] = true
216216
end
217-
if (env.data.weaponTypeInfo[actor.weaponData1.type].label or actor.weaponData1.type) ~= (env.data.weaponTypeInfo[actor.weaponData2.type].label or actor.weaponData2.type) then
217+
if (env.data.weaponTypeInfo[actor.weaponData1.type].label or actor.weaponData1.subType or actor.weaponData1.type) ~= (env.data.weaponTypeInfo[actor.weaponData2.type].label or actor.weaponData2.subType or actor.weaponData2.type) then
218218
local info1 = env.data.weaponTypeInfo[actor.weaponData1.type]
219219
local info2 = env.data.weaponTypeInfo[actor.weaponData2.type]
220220
if info1.oneHand and info2.oneHand then

0 commit comments

Comments
 (0)