Skip to content

Commit beb7d02

Browse files
committed
Change stats command to use accessors, more cleanup needed
1 parent f3c7cd9 commit beb7d02

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

internal/usercommands/status.go

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ func Status(rest string, user *users.UserRecord, room *rooms.Room, flags events.
3232
user.SendText(tplTxt)
3333
}
3434

35+
// TODO: use GetStatInfoNames to populate the list of stat names.
3536
question := cmdPrompt.Ask(`Increase which?`, []string{`strength`, `speed`, `smarts`, `vitality`, `mysticism`, `perception`, `quit`}, `quit`)
3637
if !question.Done {
3738
return true, nil
@@ -42,6 +43,7 @@ func Status(rest string, user *users.UserRecord, room *rooms.Room, flags events.
4243
return true, nil
4344
}
4445

46+
// TODO: use GetStatInfoNames to populate the list of stat names.
4547
match, closeMatch := util.FindMatchIn(question.Response, []string{`strength`, `speed`, `smarts`, `vitality`, `mysticism`, `perception`}...)
4648

4749
question.RejectResponse() // Always reset this question, since we want to keep reusing it.
@@ -62,28 +64,28 @@ func Status(rest string, user *users.UserRecord, room *rooms.Room, flags events.
6264

6365
switch selection {
6466
case `strength`:
65-
before = user.Character.Stats.Strength.Value - user.Character.Stats.Strength.Mods
66-
user.Character.Stats.Strength.Training += 1
67+
before = user.Character.Stats.Get("Strength").Value - user.Character.Stats.Get("Strength").Mods
68+
user.Character.Stats.Get("Strength").Training += 1
6769
spent = 1
6870
case `speed`:
69-
before = user.Character.Stats.Speed.Value - user.Character.Stats.Speed.Mods
70-
user.Character.Stats.Speed.Training += 1
71+
before = user.Character.Stats.Get(".Speed.").Value - user.Character.Stats.Get(".Speed.").Mods
72+
user.Character.Stats.Get(".Speed.").Training += 1
7173
spent = 1
7274
case `smarts`:
73-
before = user.Character.Stats.Smarts.Value - user.Character.Stats.Smarts.Mods
74-
user.Character.Stats.Smarts.Training += 1
75+
before = user.Character.Stats.Get(".Smarts.").Value - user.Character.Stats.Get(".Smarts.").Mods
76+
user.Character.Stats.Get(".Smarts.").Training += 1
7577
spent = 1
7678
case `vitality`:
77-
before = user.Character.Stats.Vitality.Value - user.Character.Stats.Vitality.Mods
78-
user.Character.Stats.Vitality.Training += 1
79+
before = user.Character.Stats.Get(".Vitality.").Value - user.Character.Stats.Get(".Vitality.").Mods
80+
user.Character.Stats.Get(".Vitality.").Training += 1
7981
spent = 1
8082
case `mysticism`:
81-
before = user.Character.Stats.Mysticism.Value - user.Character.Stats.Mysticism.Mods
82-
user.Character.Stats.Mysticism.Training += 1
83+
before = user.Character.Stats.Get(".Mysticism.").Value - user.Character.Stats.Get(".Mysticism.").Mods
84+
user.Character.Stats.Get(".Mysticism.").Training += 1
8385
spent = 1
8486
case `perception`:
85-
before = user.Character.Stats.Perception.Value - user.Character.Stats.Perception.Mods
86-
user.Character.Stats.Perception.Training += 1
87+
before = user.Character.Stats.Get(".Perception.").Value - user.Character.Stats.Get(".Perception.").Mods
88+
user.Character.Stats.Get(".Perception.").Training += 1
8789
spent = 1
8890
}
8991

0 commit comments

Comments
 (0)