Files
GoBunnyBot/commands.go
2022-03-04 17:31:48 -06:00

71 lines
7.2 KiB
Go

/*
This contains all of our commands used throughout the bot except for image gathering
*/
package main
import (
"math"
"math/rand"
"strconv"
"strings"
)
// flip a coin
func coinflip(author string, content string) string{
// get a random 1 or 0
num := math.Mod(float64(rand.Intn(100)), 2) // modulo of random number between 0 and 100
// default heads/tails text in case nothing was set from the user
heads := "heads"
tails := "tails"
// try to split to see if heads/tails were set by user
message := strings.Fields(content)
// if the custom heads/tails was requested, set it
if(len(message) > 2) {
heads = message[1]
tails = message[2]
}
// return string based on number
if int(num) == 0 { // heads
return "<@" + author + "> flipped a coin, it landed on **" + heads + "!**"
} else { // tails
return "<@" + author + "> flipped a coin, it landed on **" + tails + "!**"
}
}
// roll number
func roll(author string) string{
min := 1
max := 100
num := rand.Intn(max - min) + min
return "<@" + author + "> rolls a number between 1 and 100. They roll **" + strconv.Itoa(num) + "**."
}
// source code
func source() string {
return "BunnyBot is a Discord bot written in Go. You can view the source code here: https://github.com/omgdanieltam/BunnyBot"
}
// moon command
func moon(content string) string {
// default moon location
moonLocation := ""
// try to split message
message := strings.Fields(content)
// if there was extra text indicating where what we want to go to the moon, save it
if(len(message) > 1) {
moonLocation = strings.ToUpper(message[1])
}
// set our moon text
var moonText string = "\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u0020\u2726\u0020\u3000\u3000\u3000\u3000\u2002\u2002\u0020\u3000\n\u3000\u3000\u3000\u02DA\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002A\u3000\u3000\u3000\u3000\u3000\n\u3000\u3000\u0020\u2008\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u0020\u3000\u3000\u2008\u3000\u3000\u3000\u3000\u3000\n\u0020\u2726\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u0020\u3000\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u3000\u3000\u3000\u3000\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002C\u3000\u3000\u2002\u2002\u2002\u3000\n\n\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\uFF9F\u3000\u2002\u2002\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\n\n\u3000\u3000\u3000\u3000\u3000\u3000\u002C\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u2008\u2008\u2008\u2008\u3000\u3000\u3000\u3000\n\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u2008\u2600\uFE0F\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u2008\u2008\u200A\n\u3000\u2008\u2008\u2008\u2008\u2008\u200A\u3000\u3000\u3000\u3000\u3000\u2008\u2008\u200A\u200A\u2008\u2008\u200A\u200A\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\n\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\n\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u200A\u200A\u200A\u2008\u2008\u200A\u200A\u3000\u2008\u2008\u2008\u3000\u3000\u3000\u3000\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\n\u3000\u3000\u200A\u200A\u200A\u2008\u2008\u200A\u200A\u3000\u2008\u2008\u2008\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u200A\u200A\u200A\u2008\u2008\u200A\u200A\u3000\u2008\u2008\u2008\u0020\u2726\u0020\n\u2002\u2002\u2002\u3000\u3000\u3000\u002C\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000" + moonLocation + "\u0020:rocket:\u0020\u3000\u3000\u3000\u3000\u0020\u3000\u3000\u002C\u3000\u3000\u3000\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\n\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u2008\u3000\u3000\u0020\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u2008\u3000\u200A\u200A\u2008\u2008\n\u2008\u2008\u2008\u2008\u200A\u200A\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u02DA\u3000\u3000\u3000\u0020\u3000\u0020\u2002\u2002\u3000\u3000\u3000\u3000\u002C\u3000\u3000\u3000\u3000\u3000\u3000\n\u3000\u3000\u3000\u3000\u200A\u200A\u200A\u200A\u200A\u200A\u200A\u3000\u200A\u2008\u2008\u2008\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\n\u2008\u3000\u3000\u2002\u2002\u2002\u2002\u3000\u3000\u3000\u3000\u3000\u2008\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002A\u0020\u3000\n\u2002\u2002\u3000\u3000\u3000\u3000\u3000\u0020\u2726\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u200A\u200A\u200A\u200A\u200A\u200A\u200A\u200A\u200A\u3000\u2008\u2008\u2008\u2008\u2008\u2008\u2008\u2008\u3000\u3000\u3000\u3000\u0020\u3000\u3000\u2008\u3000\n\u3000\u3000\u3000\u3000\u3000\u2008\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u2002\u2002\u2002\u2002\u3000\u3000\u002E\n\u3000\u2008\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u0020:new_moon:\n\u3000\u3000\u3000\u3000\u3000\u200A\u200A\u200A\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u2002\u2002\n\n\u3000\u02DA\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\uFF9F\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\n\u002E\u0020\u3000\u3000\u2008\u3000\u0020:earth_americas:\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u200D\u0020\u002C\u3000\u0020\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002A\n\u002E\u3000\u3000\u3000\u3000\u3000\u2008\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u0020\u2726\u0020\u3000\u3000\u3000\u3000\u2002\u2002\u0020\u3000\n\u3000\u3000\u3000\u02DA\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002A\u3000\u3000\u3000\u3000\u3000\u3000\u2008\u0020\u2008\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u3000\u002E"
return moonText
}