From d8a25f44598a101b4531f36a29466ecac990a3e3 Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Fri, 16 Jun 2023 18:04:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E8=80=97=E4=BD=93=E5=8A=9B=E5=8A=A0?= =?UTF-8?q?=E7=BB=8F=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/imodule.go | 2 ++ modules/user/module.go | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/comm/imodule.go b/comm/imodule.go index 7921209b9..ef058bc18 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -170,6 +170,8 @@ type ( AddPer(session IUserSession, pers map[string]int32, bPush bool) (errdata *pb.ErrorData) SetUserCaravanLvChange(session IUserSession, caravanlv int32) error + //消耗体力加经验 + ConsumePsAddExp(session IUserSession, ps int) (errdata *pb.ErrorData) } //武器模块 IEquipment interface { diff --git a/modules/user/module.go b/modules/user/module.go index 1d3a8cec6..0beadc0e7 100644 --- a/modules/user/module.go +++ b/modules/user/module.go @@ -12,6 +12,7 @@ import ( "go_dreamfactory/sys/configure" "go_dreamfactory/sys/db" "go_dreamfactory/utils" + "math" "strings" "sync" "time" @@ -1122,3 +1123,27 @@ func (this *User) SetUserCaravanLvChange(session comm.IUserSession, caravanlv in } return this.modelUser.Change(session.GetUserId(), update) } + +func (this *User) ConsumePsAddExp(session comm.IUserSession, ps int) (errdata *pb.ErrorData) { + var ( + user *pb.DBUser + ) + if user = this.GetUser(session.GetUserId()); user == nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_UserNofound, + Title: pb.ErrorCode_UserNofound.ToString(), + } + return + } + ggd := this.ModuleTools.GetGlobalConf() + if ggd == nil { + return + } + //体力消耗,增加玩家经验 + exp := int32(math.Abs(float64(ps))) * ggd.FightPs + user.Exp += int64(exp) + + attrs := make(map[string]int32, 0) + attrs["exp"] = int32(user.Exp) + return this.AddAttributeValues(session, attrs, true) +}