markov.go: undo multiple line responses

This commit is contained in:
an 2019-08-26 23:11:58 +02:00
parent c85e1adcc4
commit 59bf94f173
1 changed files with 3 additions and 10 deletions

View File

@ -49,11 +49,8 @@ func markovHandleMessage(m *Message) {
responseText := markovChain.Generate(*markovAnswerLen, text)
if responseText != "" {
go func() {
responses := strings.Split(responseText, "\n")
for _, s := range responses {
time.Sleep(time.Duration(rand.Intn(8)+2) * time.Second)
SayCh <- m.Channel + "\n" + s
}
time.Sleep(time.Duration(rand.Intn(8)+2) * time.Second)
SayCh <- m.Channel + "\n" + responseText
}()
}
}
@ -231,11 +228,7 @@ func (c *MarkovChain) Generate(n int, in string) string {
return start + " ... pfrrrz"
} else {
xlog.Debug("Found words: [%s]", strings.Join(words, " "))
answer := start + " " + strings.Join(words, " ")
if rand.Intn(100) < 25 {
answer = answer + "\n" + c.Generate(n, answer)
}
return answer
return start + " " + strings.Join(words, " ")
}
}