diff --git a/main.go b/main.go index 6890710..67c0a0a 100644 --- a/main.go +++ b/main.go @@ -18,6 +18,7 @@ var discordInbound stringArrayFlags var discordOutbound stringArrayFlags var addr = flag.String("redis", "redis:6379", "Redis server address") +var modules = flag.String("modules", "all", "Which party pack reactions to enable") func init() { zerolog.TimeFieldFormat = zerolog.TimeFormatUnix diff --git a/reactions.go b/reactions.go index 34c8877..f8eaf1c 100644 --- a/reactions.go +++ b/reactions.go @@ -10,28 +10,30 @@ func reactions(message Message) (string, bool) { reactionContent := "" switchToken := strings.Split(message.Content, " ")[0] - switch switchToken { - case "!shrug": - reactionContent = "¯\\_(ツ)_/¯" - case "!lenny": - reactionContent = "( ͡° ͜ʖ ͡°)" - case "!tableflip": - reactionContent = "(╯°□°)╯︵ ┻━┻" - case "!tablefix": - reactionContent = "┬─┬ノ( º _ ºノ)" - case "!8ball": - reactionContent = make8BallAnswer() - case "!epeen": - reactionContent = epeen(message.From) - case "!ipinfo": - reactionContent = ipinfo(message.Content) - case "!roll": - reactionContent = diceTrigger(message.From, message.Content) - case "!choose": - reactionContent = decisions(message.From, message.Content) - case "!dadjoke": - reactionContent = jokeTrigger() + if *modules == "all" || strings.Contains(*modules, switchToken[1:]) { + switch switchToken { + case "!shrug": + reactionContent = "¯\\_(ツ)_/¯" + case "!lenny": + reactionContent = "( ͡° ͜ʖ ͡°)" + case "!tableflip": + reactionContent = "(╯°□°)╯︵ ┻━┻" + case "!tablefix": + reactionContent = "┬─┬ノ( º _ ºノ)" + case "!8ball": + reactionContent = make8BallAnswer() + case "!epeen": + reactionContent = epeen(message.From) + case "!ipinfo": + reactionContent = ipinfo(message.Content) + case "!roll": + reactionContent = diceTrigger(message.From, message.Content) + case "!choose": + reactionContent = decisions(message.From, message.Content) + case "!dadjoke": + reactionContent = jokeTrigger() + } } return reactionContent, reactionContent != ""