From b20f111cbbe476a00c78bda4cb2cbe6f8fc88016 Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Tue, 29 Apr 2025 14:38:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=8E=A9=E5=AE=B6=E5=85=A8?= =?UTF-8?q?=E6=9C=8D=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/VarMgr.go | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/server/game/VarMgr.go b/src/server/game/VarMgr.go index 4b52a9be..b8d5a35b 100644 --- a/src/server/game/VarMgr.go +++ b/src/server/game/VarMgr.go @@ -5,7 +5,6 @@ import ( "server/GoUtil" "server/game/mod/card" "server/game/mod/msg" - "sync" "time" ) @@ -15,7 +14,7 @@ type VarMgr struct { type VarData struct { Var map[string]interface{} - UserVar sync.Map + UserVar map[string]*VarUserData ZeroTime int64 } @@ -40,6 +39,9 @@ func (f *VarMgr) Init() { if f.data.(*VarData).Var == nil { f.data.(*VarData).Var = make(map[string]interface{}) } + if f.data.(*VarData).UserVar == nil { + f.data.(*VarData).UserVar = make(map[string]*VarUserData) + } if f.getData().ZeroTime == GoUtil.ZeroTimestamp() { f.ZeroUpdate(&msg.Msg{}) } @@ -68,29 +70,26 @@ func (f *VarMgr) ZeroUpdate(m *msg.Msg) (interface{}, error) { } func (f *VarMgr) SetVar(key string, value interface{}) { - f.getData().UserVar.Store(key, value) + f.getData().Var[key] = value } func (f *VarMgr) GetVar(key string) interface{} { - value, _ := f.getData().UserVar.Load(key) - return value + return f.getData().Var[key] } func (f *VarMgr) SetUserVar(key string, value *VarUserData) { - f.getData().UserVar.Store(key, value) + f.getData().UserVar[key] = value } func (f *VarMgr) GetUserVar(key string) *VarUserData { - value, _ := f.getData().UserVar.Load(key) - if value == nil { - value = &VarUserData{} - f.getData().UserVar.Store(key, value) + if v, ok := f.getData().UserVar[key]; ok { + return v } - return value.(*VarUserData) + return nil } func (f *VarMgr) DelVar(key string) { - f.getData().UserVar.Delete(key) + delete(f.getData().Var, key) } func (f *VarMgr) getData() *VarData {