samba/util/model/configRoom.go
2025-06-04 09:51:39 +08:00

53 lines
982 B
Go

package model
import (
"context"
"encoding/json"
"github.com/go-redis/redis/v8"
"samba/pkg/log"
"samba/stub"
"strconv"
)
type RoomConfigOp struct {
rdb *redis.Client
key string
}
func NewRoomConfigOp() *RoomConfigOp {
return &RoomConfigOp{rdb: rdbConfig, key: "room"}
}
func (t *RoomConfigOp) Load() {
table, err := t.rdb.HGetAll(context.Background(), t.key).Result()
if err != nil {
log.Error(err.Error())
return
}
roomId := int64(0)
for k, v := range table {
roomId, err = strconv.ParseInt(k, 10, 64)
if err != nil {
log.Error(err.Error())
continue
}
room := &stub.Room{}
if err = json.Unmarshal([]byte(v), room); err != nil {
log.Error(err.Error())
continue
}
stub.Rooms[int(roomId)] = room
}
return
}
func InitStub() {
NewRoomConfigOp().Load()
NewClubRobotConfigOp().Load()
NewGlobalConfigOp().Load()
NewGlobalAIConfigOp().Load()
NewGamePlayTypeConfigOp().Load()
NewEmoteConfigOp().Load()
NewBankruptConfigOp().Load()
}