Change host lookup to be optional
Some parts of the logic do not make use of the host column in the players table, allow the field to be empty and do not query for an empty value (which might return bogus entries) if no value is passed to the lookup function. This additionally avoids the need for the hardcoded initial host when configuring the bot player. Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
This commit is contained in:
parent
394d6ca2fa
commit
accf16c92a
@ -65,8 +65,12 @@ func NewWatDb() *WatDb {
|
||||
|
||||
func (w *WatDb) User(nick, host string, create bool) Player {
|
||||
var player Player
|
||||
query := "nick = ?"
|
||||
if host != "" {
|
||||
query = query + " or host = ?"
|
||||
}
|
||||
// Try and get a user
|
||||
if err := w.db.First(&player, "nick = ? or host = ?", nick, host).Error; err != nil && create {
|
||||
if err := w.db.First(&player, query, nick, host).Error; err != nil && create {
|
||||
fmt.Printf("Creating user: %s\n", err.Error())
|
||||
// No user, make another
|
||||
player.Nick = nick
|
||||
|
@ -28,7 +28,7 @@ var unconscious = "wat, your hands fumble and fail you. try resting, weakling."
|
||||
|
||||
func NewWatGame(bot *WatBot, db *WatDb) *WatGame {
|
||||
g := WatGame{bot, db, Player{}, nil, nil, nil, nil, map[string]int{}}
|
||||
g.me = g.db.User(bot.Nick, "amia8t89xfp8y.liberta.casa", true)
|
||||
g.me = g.db.User(bot.Nick, "", true)
|
||||
g.commands = map[string](func(*Player, []string) string){
|
||||
//"wat": g.megaWat,
|
||||
"steroid": g.Steroid,
|
||||
|
Loading…
Reference in New Issue
Block a user