aboutsummaryrefslogtreecommitdiff
path: root/user/state.go
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2026-03-08 14:12:03 +0100
committerAnhgelus Morhtuuzh <william@herges.fr>2026-03-08 14:12:03 +0100
commit3bcf74c47d1597ba650dc5a55868f83f5f547ad7 (patch)
treee092050c003aac0fde195578f0909e9f6fec5dc6 /user/state.go
parentddd6306752186c149f8ad3bf2f59b5428cf01296 (diff)
feat(user): leave gorm
Diffstat (limited to 'user/state.go')
-rw-r--r--user/state.go39
1 files changed, 18 insertions, 21 deletions
diff --git a/user/state.go b/user/state.go
index f2bfa5c..5e5df87 100644
--- a/user/state.go
+++ b/user/state.go
@@ -22,12 +22,11 @@ type XPCached struct {
}
type CopaingCached struct {
- ID uint
- DiscordID uint64
- GuildID uint64
- XP uint
- XPs []XPCached
- XPToAdd uint
+ ID uint64
+ GuildID uint64
+ XP uint
+ XPs []XPCached
+ XPToAdd uint
}
// copaing turns a CopaingCached into a Copaing.
@@ -37,7 +36,7 @@ type CopaingCached struct {
// - sync the copaing cached, use CopaingCached.Sync for that.
// TL;DR: don't use this method, unless you know what are you doing.
func (cc *CopaingCached) copaing(ctx context.Context) *Copaing {
- c := &Copaing{DiscordID: cc.DiscordID, GuildID: cc.GuildID}
+ c := &Copaing{ID: cc.ID, GuildID: cc.GuildID}
if err := c.load(ctx); err != nil {
panic(err)
}
@@ -65,7 +64,7 @@ func (cc *CopaingCached) Save(ctx context.Context) error {
state.mu.Lock()
defer state.mu.Unlock()
- return state.storage.Write(KeyCopaingCachedRaw(cc.GuildID, cc.DiscordID), *cc)
+ return state.storage.Write(KeyCopaingCachedRaw(cc.GuildID, cc.ID), *cc)
}
func (cc *CopaingCached) SaveInDB(ctx context.Context) error {
@@ -116,19 +115,18 @@ func saveStateInDB(ctx context.Context) error {
func FromCopaing(c *Copaing) *CopaingCached {
return &CopaingCached{
- ID: c.ID,
- DiscordID: c.DiscordID,
- GuildID: c.GuildID,
- XP: calcXP(c),
- XPs: generateXPs(c),
- XPToAdd: 0,
+ ID: c.ID,
+ GuildID: c.GuildID,
+ XP: calcXP(c),
+ XPs: generateXPs(c),
+ XPToAdd: 0,
}
}
const KeyCopaingCachedPrefix = "cc:"
func KeyCopaingCached(c *Copaing) string {
- return KeyCopaingCachedRaw(c.GuildID, c.DiscordID)
+ return KeyCopaingCachedRaw(c.GuildID, c.ID)
}
func KeyCopaingCachedRaw(guildID, copaingID uint64) string {
@@ -166,12 +164,11 @@ func SetState(ctx context.Context, state *State) context.Context {
func deepCopy(src CopaingCached) CopaingCached {
res := CopaingCached{
- ID: src.ID,
- DiscordID: src.DiscordID,
- GuildID: src.GuildID,
- XP: src.XP,
- XPToAdd: src.XPToAdd,
- XPs: make([]XPCached, len(src.XPs)),
+ ID: src.ID,
+ GuildID: src.GuildID,
+ XP: src.XP,
+ XPToAdd: src.XPToAdd,
+ XPs: make([]XPCached, len(src.XPs)),
}
copy(res.XPs, src.XPs)
return res