Optimize perf. of crafting algo. (55% savings)

This commit is contained in:
Andrew Miner
2015-02-22 23:19:12 -08:00
parent 0ec909a11e
commit aa42053c6e
2 changed files with 8 additions and 5 deletions
+7 -4
View File
@@ -100,11 +100,14 @@ module.exports = class Recipe extends BaseModel
return 0
produces: (itemSlug)->
for stack in @output
if stack.itemSlug.matches itemSlug
return true
if not @_produces?
@_produces = {}
return false
for stack in @output
@_produces[stack.itemSlug.qualified] = true
@_produces[stack.itemSlug.item] = true
return @_produces[itemSlug.qualified]
requires: (itemSlug)->
for stack in @input