diff --git a/src/HttpServer/logic/function.go b/src/HttpServer/logic/function.go index 57471dc..9b7b653 100644 --- a/src/HttpServer/logic/function.go +++ b/src/HttpServer/logic/function.go @@ -211,6 +211,27 @@ func (u *UserData) CalcRandRedBagNum() float32 { return addnum } +//计算主界面猫的数量 包含37级猫 +func (u *UserData) CalcMainCatNum() int { + var sumnum int + for _, v := range u.PosInfo { + if v.Cat < REDCATIDEXTRA { + sumnum++ + } + + if v.Cat > REDCATIDEXTRA && v.Cat < BOXGIFTEXTRA { + cfg := jsonconf.GetRedCatConfig(v.Cat) + if cfg != nil { + if cfg.Is_37 == 1 { + sumnum++ + } + } + } + } + + return sumnum +} + //加红包接口 func (u *UserData) AddRedPackect(num float32, atype int) (int, error) { SERVERKEY := conf.GetCoinConf().Key diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index d50b085..981ef2f 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -2016,6 +2016,14 @@ func HandlerRecovery(w http.ResponseWriter, data string, uuid int) { break } + catnum := uinfo.CalcMainCatNum() + if catnum <= 1 { + logger.Error("HandlerRecovery CatLV failed=%v", err) + resp.Code = 1 + resp.Message = "当前只有一只猫咪无法回收!" + break + } + cfg := jsonconf.GetCatConfig(uinfo.PosInfo[rdata.Position].Cat) if cfg == nil { logger.Error("HandlerRecovery CatLVCFG failed=%v", uinfo.PosInfo[rdata.Position].Cat) -- libgit2 0.21.0