blob: d9747c94163ed1d9ad4cbc2663e367d9181edaa7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
package game
import (
"fmt"
"strings"
"thehouseoficarus/internal/net"
)
func (g *Game) executeHideAllExits(sess *net.Session, args []string, rawInput string) {
if !g.checkAdmin(sess) {
sess.WriteLine("Unknown command.")
return
}
p := sess.Player
if p == nil {
return
}
if p.Flags == nil {
sess.WriteLine("No discovered exits to clear.")
return
}
var cleared []string
for k := range p.Flags {
if strings.HasPrefix(k, hiddenExitFlagPrefix) {
cleared = append(cleared, k)
}
}
if len(cleared) == 0 {
sess.WriteLine("No discovered exits to clear.")
return
}
for _, k := range cleared {
delete(p.Flags, k)
}
g.AccountStore.SaveCharacter(p)
sess.WriteLine(fmt.Sprintf("Cleared %d discovered exit(s).", len(cleared)))
}
|