From 32d66d96fd0b5da83f8584fc79dcee719050a845 Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Wed, 18 Mar 2026 16:58:54 +0800 Subject: [PATCH] 1 --- src/server/game/activity_mgr.go | 12 ++++++++++++ src/server/game/player_data.go | 19 +++++++------------ 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/server/game/activity_mgr.go b/src/server/game/activity_mgr.go index a108e185..1b00de48 100644 --- a/src/server/game/activity_mgr.go +++ b/src/server/game/activity_mgr.go @@ -56,6 +56,18 @@ func (r *ActivityMgr) ZeroUpdate(m *msg.Msg) (interface{}, error) { return nil, nil } +func (r *ActivityMgr) GetActivityList() []ActivityCfg { + // 获取活动列表 + data := r.getData() + data.mu.Lock() + defer data.mu.Unlock() + list := make([]ActivityCfg, 0, len(data.List)) + for _, v := range data.List { + list = append(list, *v) + } + return list +} + func (r *ActivityMgr) GetActivityCfg(Id int) ActivityCfg { // 获取活动配置 data := r.getData() diff --git a/src/server/game/player_data.go b/src/server/game/player_data.go index e07d254b..7629f8bd 100644 --- a/src/server/game/player_data.go +++ b/src/server/game/player_data.go @@ -7,7 +7,6 @@ import ( "errors" "math" "server/conf" - activityCfg "server/conf/activity" cardCfg "server/conf/card" chargeCfg "server/conf/charge" fur_cfg "server/conf/fur" @@ -1192,9 +1191,8 @@ func (p *Player) TeLog(Type string, Param map[string]interface{}) { // 初始化活动 func (p *Player) InitActivity() { p.activity = make(map[int]*ActivityInfo) - ActivityList := activityCfg.GetActivityList() + ActivityList := G_GameLogicPtr.ActivityMgr.GetActivityList() Level := p.GetPlayerBaseMod().GetLevel() - ActivityMod := p.PlayMod.getActivityMod() now := GoUtil.Now() var startduration int64 var minduration int64 @@ -1203,24 +1201,21 @@ func (p *Player) InitActivity() { if v.Level > Level { continue } - Status := ActivityMod.GetActivityStatus(v) - if Status == 0 { - continue - } - startduration = v.StartTime - now - endduration = v.EndTime - now + 1 + Status := 1 + startduration = v.Strartime - now + endduration = v.Endtime - now + 1 if startduration > 0 && (minduration == 0 || minduration > startduration) { minduration = startduration } if endduration > 0 && (minduration == 0 || minduration > endduration) { minduration = endduration } - if v.StartTime > now || v.EndTime < now { + if v.Strartime > now || v.Endtime < now { continue } p.activity[v.Id] = &ActivityInfo{ - StartT: v.StartTime, - EndT: v.EndTime, + StartT: v.Strartime, + EndT: v.Endtime, Id: v.Id, Type: v.Type, Status: Status,