diff --git a/modules/plunder/api_getlist.go b/modules/plunder/api_getlist.go index 48d563e62..6e2679ac1 100644 --- a/modules/plunder/api_getlist.go +++ b/modules/plunder/api_getlist.go @@ -3,6 +3,7 @@ package plunder import ( "go_dreamfactory/comm" "go_dreamfactory/pb" + "go_dreamfactory/sys/configure" ) func (this *apiComp) GetListCheck(session comm.IUserSession, req *pb.PlunderGetListReq) (errdata *pb.ErrorData) { @@ -12,14 +13,15 @@ func (this *apiComp) GetListCheck(session comm.IUserSession, req *pb.PlunderGetL // 获取基本信息 func (this *apiComp) GetList(session comm.IUserSession, req *pb.PlunderGetListReq) (errdata *pb.ErrorData) { var ( - err error - list *pb.DBPlunder - land *pb.DBPlunderLand + err error + list *pb.DBPlunder + land *pb.DBPlunderLand + update map[string]interface{} ) if errdata = this.GetListCheck(session, req); errdata != nil { return } - + update = make(map[string]interface{}) if list, err = this.module.modelPlunder.getPlunderData(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, @@ -49,9 +51,17 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.PlunderGetListRe if len(list.Source) == 0 { list.Source, err = this.module.modelPlunder.refreshGoodsInfo() list.Setout = []int32{} - this.module.modelPlunder.changePlunderData(session.GetUserId(), map[string]interface{}{ - "source": list.Source, - }) + update["setout"] = list.Setout + } + // 校验解锁的是否到期 + for _, v := range list.Line { + if v.Closetime > 0 && v.Closetime < configure.Now().Unix() { + v.Closetime = -1 + update["line"] = list.Line + } + } + if len(update) > 0 { + this.module.modelPlunder.changePlunderData(session.GetUserId(), update) } session.SendMsg(string(this.module.GetType()), "getlist", &pb.PlunderGetListResp{ List: list, diff --git a/modules/plunder/api_unlock.go b/modules/plunder/api_unlock.go index e9be6500e..1930475c7 100644 --- a/modules/plunder/api_unlock.go +++ b/modules/plunder/api_unlock.go @@ -3,6 +3,7 @@ package plunder import ( "go_dreamfactory/comm" "go_dreamfactory/pb" + "go_dreamfactory/sys/configure" cfg "go_dreamfactory/sys/configure/structs" ) @@ -42,12 +43,17 @@ func (this *apiComp) Unlock(session comm.IUserSession, req *pb.PlunderUnlockReq) return } // 校验数据够不够 - globalConf := this.module.ModuleTools.GetGlobalConf() - - this.module.ConsumeRes(session, []*cfg.Gameatn{globalConf.PlunderPvpCollegeNum}, true) - - session.SendMsg(string(this.module.GetType()), "unlock", &pb.PlunderUnlockReq{}) + if errdata = this.module.ConsumeRes(session, []*cfg.Gameatn{globalConf.PlunderPvpCollegeNum}, true); errdata != nil { + return + } + list.Line[req.Pos].Closetime = configure.Now().Unix() + int64(globalConf.PlunderPvpCollegeTime)*24*3600 + this.module.modelPlunder.changePlunderData(session.GetUserId(), map[string]interface{}{ + "line": list.Line, + }) + session.SendMsg(string(this.module.GetType()), "unlock", &pb.PlunderUnlockResp{ + Line: list.Line, + }) return }