-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathRecipes.lua
More file actions
454 lines (434 loc) · 17.6 KB
/
Copy pathRecipes.lua
File metadata and controls
454 lines (434 loc) · 17.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
---@class BFC
local BFC = select(2, ...)
---@type AbstractFramework
local AF = _G.AbstractFramework
BFC.learnedRecipes = {}
local GetRecipeInfo = C_TradeSkillUI.GetRecipeInfo
local function Process(recipeID, name, class, faction)
if not BFC.learnedRecipes[recipeID] then
BFC.learnedRecipes[recipeID] = {}
end
tinsert(BFC.learnedRecipes[recipeID], {name, class, faction})
end
local function ProcessRecipes(recipes, name, class, faction)
if not recipes then return end
for _, recipeID in pairs(recipes) do
Process(recipeID, name, class, faction)
end
end
function BFC.UpdateLearnedRecipes()
wipe(BFC.learnedRecipes)
for _, t in pairs(BFC_DB.publish.characters) do
ProcessRecipes(t.prof1.recipes, t.name, t.class, t.faction)
ProcessRecipes(t.prof2.recipes, t.name, t.class, t.faction)
end
end
local executor
---@param callback function
function BFC.UpdateLearnedRecipesWithCallback(callback)
wipe(BFC.learnedRecipes)
if not executor then
executor = AF.BuildOnUpdateExecutor(function(_, data, remaining, total)
Process(AF.Unpack4(data))
callback(remaining, total)
end, function()
collectgarbage("collect")
end)
end
for _, t in pairs(BFC_DB.publish.characters) do
for _, recipeID in pairs(t.prof1.recipes) do
executor:AddTask({recipeID, t.name, t.class, t.faction})
end
for _, recipeID in pairs(t.prof2.recipes) do
executor:AddTask({recipeID, t.name, t.class, t.faction})
end
end
executor:Execute()
end
-- https://warcraft.wiki.gg/wiki/TradeSkillLineID
-- local data = {
-- [professionID/skillLineID] = { -- C_TradeSkillUI.GetProfessionInfoBySkillLineID(skillLineID)
-- [categoryID] = { -- C_TradeSkillUI.GetCategoryInfo(categoryID)
-- recipeID, -- C_TradeSkillUI.GetRecipeInfo(recipeID)
-- }
-- }
-- }
-- BFC.professionRecipes = {
-- [171] = { -- 炼金术
-- [1977] = { -- 炼金石
-- 427185, -- 阿加炼金石
-- }
-- },
-- [164] = { -- 锻造
-- [2026] = { -- 美化装备
-- 450245, -- 圣化之步
-- 450250, -- 虹吸短剑
-- 450246, -- 贝雷达尔的壁垒
-- },
-- [2012] = { -- 竞争者板甲(PvP)
-- 455004, -- 阿加竞争者之剑
-- 455001, -- 阿加竞争者之斧
-- 455000, -- 阿加竞争者之盾
-- 454997, -- 阿加竞争者之镐
-- 454998, -- 阿加竞争者的匕首
-- 455003, -- 阿加竞争者的巨剑
-- 438917, -- 阿加竞争者的板甲头盔
-- 438916, -- 阿加竞争者的板甲手套
-- 438918, -- 阿加竞争者的板甲护胫
-- 438914, -- 阿加竞争者的板甲护胸
-- 438920, -- 阿加竞争者的板甲护腰
-- 438921, -- 阿加竞争者的板甲护臂
-- 438919, -- 阿加竞争者的板甲肩铠
-- 438915, -- 阿加竞争者的板甲靴子
-- 455002, -- 阿加竞争者的穿刺之刃
-- 454999, -- 阿加竞争者的节杖
-- },
-- [2016] = { -- 护甲
-- 450224, -- 永铸之盔
-- 450220, -- 永铸战靴
-- 450228, -- 永铸护手
-- 450227, -- 永铸肩胄
-- 450221, -- 永铸胸甲
-- 450226, -- 永铸腕甲
-- 450225, -- 永铸腿铠
-- 450222, -- 永铸重型腰带
-- 450223, -- 永铸防御者
-- 450265, -- 疏浚者的演进肩甲
-- 450263, -- 疏浚者的演进腿铠
-- 450262, -- 疏浚者的演进头盔
-- 450266, -- 疏浚者的演进护手
-- 450261, -- 疏浚者的演进防御者
-- 450264, -- 疏浚者的板甲臂甲
-- 450260, -- 疏浚者的演进重型腰带
-- 450259, -- 疏浚者的板甲护胸
-- 450258, -- 疏浚者的板甲战靴
-- },
-- [2024] = { -- 专业装备
-- 450279, -- 匠人制皮刀
-- 450280, -- 匠人制皮师的工具包
-- 450277, -- 匠人剥皮刀
-- 450276, -- 匠人矿镐
-- 450278, -- 匠人针线盒
-- 450282, -- 匠人铁匠工具箱
-- 450281, -- 匠人铁匠锤
-- 450275, -- 匠人镰刀
-- 450270, -- 熟稔针线盒
-- 450274, -- 熟稔铁匠工具箱
-- 450272, -- 熟练制皮匠的工具包
-- 450271, -- 熟稔制皮刀
-- 450273, -- 熟稔铁匠锤
-- 450267, -- 熟稔镰刀
-- 450269, -- 熟稔剥皮刀
-- 450268, -- 熟稔矿镐
-- 450283, -- 土灵大师之锤
-- },
-- [2021] = { -- 武器
-- 450242, -- 充能切斧
-- 450238, -- 充能大剑
-- 450235, -- 充能妖术剑
-- 450240, -- 充能碎击锤
-- 450237, -- 充能碎面锤
-- 450241, -- 充能祈锤
-- 450236, -- 充能符文斧
-- 450239, -- 充能长戟
-- 450233, -- 永铸之锤
-- 450230, -- 永铸匕首
-- 450234, -- 永铸巨斧
-- 450232, -- 永铸战刃
-- 450229, -- 永铸戳刺者
-- 450231, -- 永铸长剑
-- 450255, -- 镔爪巨锤
-- 450254, -- 镔爪指虎
-- 450253, -- 镔爪之剑
-- 450256, -- 镔爪斧
-- 450257, -- 镔爪巨斧
-- 450252, -- 镔爪短刀
-- 450251, -- 镔爪短剑
-- }
-- },
-- [333] = { -- 附魔
-- [2094] = { -- 棒和魔杖
-- 445323, -- 符文虚无石棒
-- 445372, -- 符文镔爪棒
-- 445355, -- 光耀魔法节杖
-- 445324, -- 魔化矛木手杖
-- 445361, -- 符文铋棒
-- },
-- [2093] = { -- 材料
-- 445347, -- 附魔符文先驱纹章
-- 445354, -- 附魔鎏金先驱纹章
-- 445399, -- 附魔风化先驱纹章
-- },
-- },
-- [202] = { -- 工程学
-- [2109] = { -- 专业装备
-- 447327, -- 亚基渔友
-- 447331, -- 亚基矿工的护头
-- 447333, -- 亚基能主动式负载平衡器
-- 447325, -- 亚基脑波发射器
-- 447329, -- 宝石匠的亚基夹钳
-- 447323, -- 弹簧支承的亚基纤维切割器
-- 447335, -- 矿工的亚基矿藏
-- 447328, -- 宝石匠的铋夹钳
-- 447334, -- 矿工的铋矿藏
-- 447326, -- 铋渔友
-- 447330, -- 铋矿工的护头
-- 447324, -- 铋脑波发射器
-- 447332, -- 铋能主动式负载平衡器
-- 447322, -- 弹簧支承的铋纤维切割器
-- },
-- [2108] = { -- 战斗设备
-- 447352, -- P.0.W. x2型
-- 447314, -- 勤勉聪慧激励器
-- 447317, -- 危险干扰抑制器
-- 447321, -- 叮当腕扣
-- 447320, -- 嗡鸣裹腕
-- 447316, -- 增压思路强化器
-- 447319, -- 排气臂铠
-- 447318, -- 爆裂护腕
-- 447315, -- 超频构想发生器
-- 447377, -- 追踪者的护目镜
-- 447379, -- 4UT0-41M3R
-- 447375, -- 助祭的护目镜
-- 447376, -- 探洞者的护目镜
-- 447378, -- 疏浚者的护目镜
-- },
-- [2013] = { -- 竞争者工艺(PvP)
-- 438922, -- 阿加竞争者的布甲护目镜
-- 438926, -- 阿加竞争者的布甲护腕
-- 438925, -- 阿加竞争者的板甲护目镜
-- 438929, -- 阿加竞争者的板甲护腕
-- 455005, -- 阿加竞争者的步枪
-- 438923, -- 阿加竞争者的皮甲护目镜
-- 438927, -- 阿加竞争者的皮甲护腕
-- 438924, -- 阿加竞争者的锁甲护目镜
-- 438928, -- 阿加竞争者的锁甲护腕
-- }
-- },
-- [773] = { -- 铭文
-- [2066] = { -- 专业论述
-- 444185, -- 制皮阿加论述
-- 444236, -- 剥皮阿加论述
-- 444223, -- 工程学阿加论述
-- 444187, -- 炼金阿加论述
-- 444189, -- 珠宝加工阿加论述
-- 444182, -- 草药学阿加论述
-- 444186, -- 裁缝阿加论述
-- 444183, -- 采矿阿加论述
-- 447868, -- 铭文阿加论述
-- 444184, -- 锻造阿加论述
-- 444188, -- 附魔阿加论述
-- },
-- [2059] = { -- 武器
-- 444199, -- 流浪者的划界指挥棒
-- 444197, -- 流浪者的火炬
-- 444198, -- 流浪者的精细腋杖
-- 444201, -- 审判官的指挥棒
-- 444196, -- 审判官的火炬
-- 444200, -- 审判官的腋杖
-- },
-- [2067] = { -- 竞争者工艺
-- 455007, -- 阿加竞争者之柱
-- 455006, -- 阿加竞争者之灯
-- 444336, -- 阿加竞争者的勋章
-- 455008, -- 阿加竞争者的法杖
-- 444337, -- 阿加竞争者的活跃徽记
-- 444338, -- 阿加竞争者的纹章
-- },
-- [2062] = { -- 专业装备
-- 444205, -- 辩才羽毛笔
-- 444207, -- 耐心炼金师的混金棒
-- 444209, -- 铭刻擀面杖
-- 444204, -- 抄写员的轻巧羽毛笔
-- 444208, -- 灼痕擀面杖
-- 444206, -- 草率炼金师的混金棒
-- },
-- },
-- [755] = { -- 珠宝加工
-- [1992] = { -- 珠宝
-- 435384, -- 土灵匠工之戒
-- 435385, -- 土灵匠工护符
-- 435383, -- 开裂的宝石吊坠
-- 435382, -- 知己之玑
-- 435380, -- 韧锻吊坠
-- 435379, -- 韧锻指环
-- },
-- [1994] = { -- 专业装备
-- 435376, -- 伪造者的字体检查器
-- 435372, -- 奢华放大镜
-- 435378, -- 小说家的眼镜
-- 435374, -- 附魔师的水晶
-- 435371, -- 光耀放大镜
-- 435375, -- 右手用的放大镜
-- 435373, -- 咒术师的破片
-- 435377, -- 说书人的眼镜
-- },
-- [1993] = { -- 竞争者工艺(PvP)
-- 435387, -- 阿加竞争者的护符
-- 435386, -- 阿加竞争者的玺戒
-- }
-- },
-- [165] = { -- 制皮
-- [2049] = { -- 蛛魔图样
-- 444068, -- 坠暗臂铠
-- 444070, -- 肾上腺素激涌腰带
-- },
-- [2015] = { -- 竞争者锁甲(PvP)
-- 438906, -- 阿加竞争者的链甲便鞋
-- 438912, -- 阿加竞争者的链甲手套
-- 438907, -- 阿加竞争者的链甲护胸
-- 438910, -- 阿加竞争者的链甲护腰
-- 438911, -- 阿加竞争者的链甲护腿
-- 438908, -- 阿加竞争者的链甲罩帽
-- 438909, -- 阿加竞争者的链甲肩章
-- 438913, -- 阿加竞争者的链甲腕扣
-- },
-- [2050] = { -- 阿拉希图样
-- 444071, -- 团结之焰涉水靴
-- 444073, -- 圣化的火炬手之握
-- },
-- [2046] = { -- 皮甲
-- 441052, -- 符烙之靴
-- 441054, -- 符烙帽子
-- 441053, -- 符烙手套
-- 441058, -- 符烙束腕
-- 441056, -- 符烙肩章
-- 441051, -- 符烙胸甲
-- 441057, -- 符烙腰带
-- 441055, -- 符烙裤子
-- 443698, -- 探洞者的熟稔之帽
-- 443699, -- 探洞者的熟稔马裤
-- 443700, -- 探洞者的熟稔肩甲
-- 443697, -- 探洞者的熟稔连指手套
-- 443701, -- 探洞者的熟稔腰带
-- 443695, -- 探洞者的皮甲卫衣
-- 443696, -- 探洞者的皮甲足垫
-- 443702, -- 探洞者的皮甲腕带
-- },
-- [2047] = { -- 锁甲
-- 441060, -- 刻纹便鞋
-- 441062, -- 刻纹头盔
-- 441061, -- 刻纹护手
-- 441063, -- 刻纹护腿
-- 441064, -- 刻纹肩甲
-- 441066, -- 刻纹腕扣
-- 441065, -- 刻纹腰链
-- 441059, -- 刻纹链甲
-- 443706, -- 追踪者的硬化护头
-- 443707, -- 追踪者的硬化腿链
-- 443708, -- 追踪者的硬化护肩
-- 443705, -- 追踪者的硬化护手
-- 443709, -- 追踪者的硬化腰链
-- 443703, -- 追踪者的几丁质半身甲
-- 443704, -- 追踪者的几丁质雨鞋
-- 443710, -- 追踪者的几丁质腕扣
-- },
-- [2054] = { -- 专业装备
-- 444111, -- 充能的碎屑大师的护手
-- 444108, -- 土灵熔炉主管的围裙
-- 444115, -- 土灵珠宝匠的护袍
-- 444113, -- 石缚草药师的背包
-- 444106, -- 蛛魔炼金师之帽
-- 444119, -- 邃渊追踪者的背包
-- 444121, -- 邃渊追踪者的软帽
-- 444117, -- 阿拉希制皮匠的工作服
-- 444105, -- 药剂师的软帽
-- 444107, -- 钢匠围裙
-- 444114, -- 宝石切割大师的围裙
-- 444110, -- 碎屑匠的手套
-- 444116, -- 塑革者的护衣
-- 444118, -- 逐革者的背包
-- 444112, -- 园丁的篮子
-- 444120, -- 逐革者的帽子
-- },
-- [2048] = { -- 野兽图样
-- 443960, -- 强化的刚毛飞靴
-- 443958, -- 忙碌蜜蜂腰扣
-- 443950, -- 滚雷击爪
-- 443961, -- 焖燃花粉半身甲
-- 443951, -- 饱经风霜的锋面外衣
-- 443949, -- 鸫羽裹腕
-- },
-- [2011] = { -- 竞争者皮甲(PvP)
-- 438904, -- 阿加竞争者的皮甲手套
-- 438899, -- 阿加竞争者的皮甲护胸
-- 438901, -- 阿加竞争者的皮甲肩章
-- 438902, -- 阿加竞争者的皮甲腰带
-- 438905, -- 阿加竞争者的皮甲裹腕
-- 438903, -- 阿加竞争者的皮甲长裤
-- 438898, -- 阿加竞争者的皮甲长靴
-- 438900, -- 阿加竞争者的皮甲面具
-- },
-- },
-- [197] = { -- 裁缝
-- [2101] = { -- 衣着
-- 446937, -- 圣化便鞋
-- 446941, -- 圣化兜帽
-- 446945, -- 圣化手套
-- 446944, -- 圣化披肩
-- 446940, -- 圣化披风
-- 446943, -- 圣化绑腿
-- 446938, -- 圣化腕扣
-- 446939, -- 圣化腰索
-- 446942, -- 圣化长袍
-- 446963, -- 先锋的完善手套
-- 446962, -- 先锋的完善披肩
-- 446959, -- 先锋的完善兜帽
-- 446961, -- 先锋的完善绑腿
-- 446958, -- 先锋的完善披风
-- 446957, -- 先锋的完善腰索
-- 446960, -- 先锋的布质长袍
-- 446955, -- 先锋的布质便鞋
-- 446956, -- 先锋的布质腕扣
-- },
-- [2104] = { -- 专业配饰
-- 446970, -- 匠人的园艺帽
-- 446974, -- 匠人的大厨帽
-- 446973, -- 匠人的炼金师长袍
-- 446971, -- 匠人的钓鱼帽
-- 446972, -- 匠人的附魔师之帽
-- 446975, -- 匠人裁缝的大衣
-- 456706, -- 阿加梭绸鱼线
-- 446964, -- 梭绸布园艺帽
-- 446969, -- 梭绸布大厨帽
-- 446968, -- 梭绸布炼金师长袍
-- 446967, -- 梭绸布裁缝大衣
-- 446965, -- 梭绸布钓鱼帽
-- 446966, -- 梭绸布附魔师之帽
-- },
-- [2106] = { -- 刺绣包
-- 446985, -- "无穷"魔法信囊
-- 446988, -- 园丁的种子袋
-- 446984, -- 塑革者的工具包
-- 446986, -- 奇才的工具箱
-- 454431, -- 斩离背包
-- 446987, -- 暗月旅行袋
-- 446983, -- 点火背包
-- 446990, -- 珠宝匠的提包
-- 446982, -- 调制者的手提包
-- 447888, -- 逐革者的购物袋
-- 446989, -- 采掘者的干粮袋
-- },
-- [2099] = { -- 织造曙光
-- 446934, -- 暖心旭日护腕
-- 446931, -- 织造曙光之履
-- 446930, -- 织造曙光之握
-- },
-- [2100] = { -- 织造萤暮
-- 446935, -- 沁凉夕阳护腕
-- 446933, -- 织造萤暮便鞋
-- 446932, -- 织造萤暮手套
-- },
-- [2010] = { -- 竞争者工艺(PvP)
-- 438893, -- 阿加竞争者的布甲兜帽
-- 438895, -- 阿加竞争者的布甲外衣
-- 438894, -- 阿加竞争者的布甲手套
-- 438889, -- 阿加竞争者的布甲护腿
-- 438897, -- 阿加竞争者的布甲披风
-- 438890, -- 阿加竞争者的布甲肩甲
-- 438892, -- 阿加竞争者的布甲腕带
-- 438896, -- 阿加竞争者的布甲腰带
-- 438891, -- 阿加竞争者的布甲踏靴
-- }
-- },
-- }