test craft all

This commit is contained in:
shoopea 2020-02-01 10:44:34 +08:00
parent 8112df10c0
commit 87278e293d

42
job.go
View File

@ -1935,12 +1935,12 @@ func jobCraftItem(j Job) {
func jobCraftAll(j Job) { func jobCraftAll(j Job) {
var ( var (
p JobPayloadCraftAll p JobPayloadCraftAll
p2 JobPayloadGetVault p2 JobPayloadGetVault
b []byte b []byte
requiredItems map[string]int64 partsItems map[int64]string
missingItems map[string]int64 recipesItems map[int64]string
availableItems map[string]int64 ratioItems map[string]int64
) )
err := setJobStart(j.ID64) err := setJobStart(j.ID64)
@ -1977,19 +1977,31 @@ func jobCraftAll(j Job) {
err = json.Unmarshal(b, &p2) err = json.Unmarshal(b, &p2)
logOnError(err, "jobCraftAll : Unmarshal(p2)") logOnError(err, "jobCraftAll : Unmarshal(p2)")
availableItems = make(map[string]int64) partsItems = make(map[string]int64)
requiredItems = make(map[string]int64) recipesItems = make(map[string]int64)
missingItems = make(map[string]int64) ratioItems = make(map[string]int64)
muxObjItem.RLock() muxObjItem.RLock()
defer muxObjItem.RUnlock() for _, o := range objItems {
for _, v := range objItems { if o.ItemTypeID == cacheObjSubType[`item_other`] {
if v.ItemTypeID == cacheObjSubType[`item_other`] { if o.Craftable && o.Craft != nil {
availableItems[v.Code] = 0 for _, i := range o.Craft.Items {
requiredItems[v.Code] = 0 p, _ := getObjItem(i.ItemID64)
missingItems[v.Code] = 0 if p.ItemTypeID == cacheObjSubType[`item_part`] {
ratioItems[o.Code] = i.Quantity
partsItems[p.ObjID64] = o.Code
} else if p.ItemTypeID == cacheObjSubType[`item_recipe`] {
recipesItems[p.ObjID64] = o.Code
}
}
}
} }
} }
muxObjItem.RUnlock()
for _, i := range p2.Vault {
}
/* we can finish the job */ /* we can finish the job */
/* /*