From c73d28cc796aff51f9f84001b9ae4d87e8074dc8 Mon Sep 17 00:00:00 2001 From: Luther Wen Xu Date: Fri, 13 Dec 2019 17:52:36 +0800 Subject: [PATCH] modules/config: Read all config from JSON instead of hardcoding them --- .gitignore | 1 + modules/config/active.go | 4 --- modules/config/botConfig.go | 3 --- modules/config/config.go | 49 +++++++++++++++++++++++++++++++++++++ modules/config/discordID.go | 3 --- modules/config/prestige.go | 3 --- modules/config/starboard.go | 3 --- 7 files changed, 50 insertions(+), 16 deletions(-) delete mode 100644 modules/config/active.go delete mode 100644 modules/config/botConfig.go create mode 100644 modules/config/config.go delete mode 100644 modules/config/discordID.go delete mode 100644 modules/config/prestige.go delete mode 100644 modules/config/starboard.go diff --git a/.gitignore b/.gitignore index 1c90908..1d1c2f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ token.txt roles.txt bot.db +config.json diff --git a/modules/config/active.go b/modules/config/active.go deleted file mode 100644 index e0ecc3d..0000000 --- a/modules/config/active.go +++ /dev/null @@ -1,4 +0,0 @@ -package config - -const GeneralChannelID = "645550570001924098" -const NotInGeneralNerf = 10 diff --git a/modules/config/botConfig.go b/modules/config/botConfig.go deleted file mode 100644 index adeb152..0000000 --- a/modules/config/botConfig.go +++ /dev/null @@ -1,3 +0,0 @@ -package config - -const CommandPrefix = "pgq" diff --git a/modules/config/config.go b/modules/config/config.go new file mode 100644 index 0000000..25c3aa0 --- /dev/null +++ b/modules/config/config.go @@ -0,0 +1,49 @@ +package config + +import ( + "encoding/json" + "io/ioutil" +) + +type config struct { + ActiveNerf activeNerf `json:"activeNerf"` + CommandPrefix string `json:"prefix"` + GuildID string `json:"guildID"` + PrestigeRequirement int `json:"prestigeFactor"` + StarChannel string `json:"starChannel"` +} + +type activeNerf struct { + GeneralChannelID string `json:"channelID"` + NotInGeneralNerf int `json:"nerfFactor"` +} + +func init() { + configFile, err := ioutil.ReadFile("config.json") + if err != nil { + panic(err) + } + var output config + err = json.Unmarshal([]byte(configFile), &output) + if err != nil { + panic(err) + } + + //Place everything into high level variables + GeneralChannelID = output.ActiveNerf.GeneralChannelID + NotInGeneralNerf = output.ActiveNerf.NotInGeneralNerf + CommandPrefix = output.CommandPrefix + GuildID = output.GuildID + PrestigeRequirement = output.PrestigeRequirement + StarChannel = output.StarChannel +} + +//Exposed Variables +var ( + GeneralChannelID string + NotInGeneralNerf int +) +var CommandPrefix string +var GuildID string +var PrestigeRequirement int +var StarChannel string diff --git a/modules/config/discordID.go b/modules/config/discordID.go deleted file mode 100644 index eca3d74..0000000 --- a/modules/config/discordID.go +++ /dev/null @@ -1,3 +0,0 @@ -package config - -const GuildID = "645550569573842945" diff --git a/modules/config/prestige.go b/modules/config/prestige.go deleted file mode 100644 index afbc8ea..0000000 --- a/modules/config/prestige.go +++ /dev/null @@ -1,3 +0,0 @@ -package config - -const PrestigeRequirement = 90000 diff --git a/modules/config/starboard.go b/modules/config/starboard.go deleted file mode 100644 index 3b4f1f6..0000000 --- a/modules/config/starboard.go +++ /dev/null @@ -1,3 +0,0 @@ -package config - -const StarChannel = "645551408283648000"