From 15679495be7c4f5053dde00d6d3cdf7add1d74df Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Tue, 24 Feb 2026 12:19:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E4=BF=9D=E5=AD=98=E5=8A=A0?= =?UTF-8?q?=E9=94=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/server_mod.go | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/server/game/server_mod.go b/src/server/game/server_mod.go index cddcee79..43757e59 100644 --- a/src/server/game/server_mod.go +++ b/src/server/game/server_mod.go @@ -139,7 +139,25 @@ func (s *ServerMod) SaveData() { DbData.Key = s.key DbData.UpdataTime = GoUtil.Now() var err error - DbData.ModData, err = GoUtil.GobMarshal(s.data) + switch s.data.(type) { + case *ChampshipData: + data := s.data.(*ChampshipData) + data.mu.Lock() + DbData.ModData, err = GoUtil.GobMarshal(s.data) + data.mu.Unlock() + case *MessageData: + data := s.data.(*MessageData) + data.mu.Lock() + DbData.ModData, err = GoUtil.GobMarshal(s.data) + data.mu.Unlock() + case *VarData: + data := s.data.(*VarData) + data.mu.Lock() + DbData.ModData, err = GoUtil.GobMarshal(s.data) + data.mu.Unlock() + default: + DbData.ModData, err = GoUtil.GobMarshal(s.data) + } if err != nil { log.Error("SaveData Marshal failed,Mod Key: %s err:%v", s.key, err) return