go_dreamfactory/modules/entertainment/api_surrender.go
2023-12-18 14:37:56 +08:00

51 lines
1.3 KiB
Go

package entertainment
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
//参数校验
func (this *apiComp) SurrenderCheck(session comm.IUserSession, req *pb.EntertainSurrenderReq) (errdata *pb.ErrorData) {
if req.Roomid == "" {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
}
return
}
func (this *apiComp) Surrender(session comm.IUserSession, req *pb.EntertainSurrenderReq) (errdata *pb.ErrorData) {
var (
list *pb.DBXXLData
err error
)
if list, err = this.module.model.getEntertainmList(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
// 操作消息返回
if list.Touxiang <= 0 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_EntertainMaxTouxiangCount,
Title: pb.ErrorCode_EntertainMaxTouxiangCount.ToString(),
}
}
if errdata = this.module.gameMgr.RoomDistribute(req.Roomid, session, "surrender", req); errdata == nil {
list.Touxiang -= 1
this.module.model.modifyEntertainmList(session.GetUserId(), map[string]interface{}{
"touxiang": list.Touxiang,
})
session.SendMsg(string(this.module.GetType()), "surrender", &pb.EntertainSurrenderResp{
Leftcount: list.Touxiang,
})
}
return
}