71 lines
7.2 KiB
Go
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
|
|
}
|