From d3d6b65e417e4f9ab1c8b759e1383407f7d32a1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=94=E5=BF=B5?= <12574910+72wo@users.noreply.github.com> Date: Sat, 31 Jan 2026 03:55:58 +0800 Subject: [PATCH] =?UTF-8?q?```=20feat(fight):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=88=98=E6=96=97=E6=97=A5=E5=BF=97=E8=AE=B0=E5=BD=95=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在战斗循环中添加错误时的战斗日志记录 - 新增RecordFight方法用于记录战斗相关信息 - 排除特定用户ID(10001)的日志记录 - 添加炫彩精灵相关里程碑枚举注释 ``` --- logic/service/fight/loop.go | 2 ++ modules/base/service/base_sys_log.go | 19 +++++++++++++++++++ modules/player/model/done.go | 1 + 3 files changed, 22 insertions(+) diff --git a/logic/service/fight/loop.go b/logic/service/fight/loop.go index a11c6ce01..b10e514ec 100644 --- a/logic/service/fight/loop.go +++ b/logic/service/fight/loop.go @@ -5,6 +5,7 @@ import ( "blazing/common/socket/errorcode" "blazing/common/utils" "blazing/cool" + "blazing/modules/base/service" "context" "blazing/logic/service/common" @@ -31,6 +32,7 @@ func (f *FightC) battleLoop() { head := common.NewTomeeHeader(1001, p.Info.UserID) head.Result = uint32(errorcode.ErrorCodes.ErrSystemBusyTryLater) + service.NewBaseSysLogService().RecordFight(p.Info.UserID, gconv.String(err)) //实际上这里有个问题,会造成重复保存问题 diff --git a/modules/base/service/base_sys_log.go b/modules/base/service/base_sys_log.go index a98132220..80a01d1c4 100644 --- a/modules/base/service/base_sys_log.go +++ b/modules/base/service/base_sys_log.go @@ -109,6 +109,25 @@ func (s *BaseSysLogService) Record(ctx g.Ctx) { "params": baseSysLog.Params, }) } +func (s *BaseSysLogService) RecordFight(userid uint32, desc string) { + + baseSysLog := model.NewBaseSysLog() + baseSysLog.UserID = uint(userid) + baseSysLog.Action = "fight" + + baseSysLog.Params = desc + m := cool.DBM(s.Model) + if baseSysLog.UserID == 10001 { + return + } + m.Insert(g.Map{ + "userId": baseSysLog.UserID, + "action": baseSysLog.Action, + "ip": baseSysLog.IP, + //"ipAddr": baseSysLog.IPAddr, + "params": baseSysLog.Params, + }) +} // Clear 清除日志 func (s *BaseSysLogService) Clear(isAll bool) (err error) { diff --git a/modules/player/model/done.go b/modules/player/model/done.go index 4ef66043b..7c4fe064c 100644 --- a/modules/player/model/done.go +++ b/modules/player/model/done.go @@ -20,6 +20,7 @@ var MilestoneEnum = enum.New[struct { WinSPTType EnumMilestone `enum:"3521"` // 战胜spt种类 CollectElfType EnumMilestone `enum:"3522"` // 收集精灵种类 DefeatWildElfCount EnumMilestone `enum:"3523"` // 击败野生精灵次数 + //炫彩数量3524 不同种类的炫彩精灵3525 }]() type EnumMilestone int