we should always get a fun hat
This commit is contained in:
@ -48,10 +48,14 @@ func TestGetHelpMessage(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// it's just hats, what else is there to check
|
// it's just hats, what else is there to check beside if the string isn't empty
|
||||||
func TestGetHatMessage(t *testing.T) {
|
func TestGetHatMessage(t *testing.T) {
|
||||||
var hats string = getHatMessage()
|
var hats string = getHatMessage()
|
||||||
if len(hats) <= 0 {
|
if len(hats) <= 0 {
|
||||||
t.Fail()
|
t.Fail()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestGetTalkbackMessage(t *testing.T) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|||||||
@ -49,15 +49,29 @@ func getHelpMessage() string {
|
|||||||
func getHatMessage() string {
|
func getHatMessage() string {
|
||||||
hat := []string{"🧢", "👒", "⛑", "🎩", "🎓"}
|
hat := []string{"🧢", "👒", "⛑", "🎩", "🎓"}
|
||||||
rand.Seed(time.Now().UnixNano())
|
rand.Seed(time.Now().UnixNano())
|
||||||
var amount int = rand.Intn(len(hat))
|
var amount int = (rand.Intn(len(hat) -1) +1)
|
||||||
var bag []string
|
var bag []string
|
||||||
for i := 0; i < amount; i++ {
|
for i := 0; i < amount; i++ {
|
||||||
rand.Seed(time.Now().UnixNano())
|
rand.Seed(time.Now().UnixNano())
|
||||||
bag = append(bag, hat[rand.Intn(len(hat))])
|
bag = append(bag, hat[(rand.Intn(len(hat) -1) +1)])
|
||||||
}
|
}
|
||||||
return strings.Join(bag, " ")
|
return strings.Join(bag, " ")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getTalkbackMessage(message string) string {
|
||||||
|
for _, t := range ConfigRegister.Talkback {
|
||||||
|
for _, p := range t.Domain.Patterns {
|
||||||
|
rand.Seed(time.Now().UnixNano())
|
||||||
|
if strings.Contains(strings.ToLower(message), strings.ToLower(p)) &&
|
||||||
|
rand.Intn(2) == 1 {
|
||||||
|
rand.Seed(time.Now().UnixNano())
|
||||||
|
return t.Domain.Answers[rand.Intn(len(t.Domain.Answers))]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
func MessageHandler(s *discordgo.Session, m *discordgo.MessageCreate) {
|
func MessageHandler(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||||
for alias, _ := range CommandRegister {
|
for alias, _ := range CommandRegister {
|
||||||
if strings.HasPrefix(m.Content, alias) {
|
if strings.HasPrefix(m.Content, alias) {
|
||||||
@ -78,18 +92,11 @@ func MessageTalkback(s *discordgo.Session, m *discordgo.MessageCreate) {
|
|||||||
if m.Author.ID == s.State.User.ID {
|
if m.Author.ID == s.State.User.ID {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
for _, t := range ConfigRegister.Talkback {
|
var answer string = getTalkbackMessage(m.Content)
|
||||||
for _, p := range t.Domain.Patterns {
|
if answer != "" {
|
||||||
rand.Seed(time.Now().UnixNano())
|
|
||||||
if strings.Contains(strings.ToLower(m.Content), strings.ToLower(p)) &&
|
|
||||||
rand.Intn(2) == 1 {
|
|
||||||
rand.Seed(time.Now().UnixNano())
|
|
||||||
answer := t.Domain.Answers[rand.Intn(len(t.Domain.Answers))]
|
|
||||||
s.ChannelMessageSend(m.ChannelID, answer)
|
s.ChannelMessageSend(m.ChannelID, answer)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func MessageHelp(s *discordgo.Session, m *discordgo.MessageCreate, message string) {
|
func MessageHelp(s *discordgo.Session, m *discordgo.MessageCreate, message string) {
|
||||||
s.ChannelMessageSend(m.ChannelID, getHelpMessage())
|
s.ChannelMessageSend(m.ChannelID, getHelpMessage())
|
||||||
|
|||||||
Reference in New Issue
Block a user