diff --git a/job.go b/job.go index 9875dd3..b24c4a2 100644 --- a/job.go +++ b/job.go @@ -2063,6 +2063,7 @@ func jobCraftAll(j Job) { totalRecipes = make(map[string]int64) completeItems = make(map[string]float64) + // pre-fill maps with references and quantities muxObjItem.RLock() for _, o := range objItems { if o.ItemTypeID == cacheObjSubType[`item_other`] { @@ -2081,6 +2082,7 @@ func jobCraftAll(j Job) { } muxObjItem.RUnlock() + // check what we have in store for _, i := range p2.Vault { if item, ok := itemParts[i.ItemID64]; ok { totalParts[item] = i.Quantity @@ -2092,6 +2094,9 @@ func jobCraftAll(j Job) { for k, i := range ratioItems { recipes, _ := totalRecipes[k] parts, _ := totalParts[k] + if k == "a83" || k == "a84" { + log.Printf("jobCraftAll[%s] ratio : %d | parts : %d | recipes : %d", i, parts, recipes) + } if (recipes > 0 && parts > (i-1)) || (parts >= i) { completeItems[k] = float64(MinInt64(recipes*i, parts) / i) maxItems = MaxInt64(maxItems, int64(completeItems[k]))