diff --git a/.gitignore b/.gitignore index 1d1c2f4..44962b9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,2 @@ -token.txt -roles.txt bot.db config.json diff --git a/main.go b/main.go index a83ef20..ee22d2e 100644 --- a/main.go +++ b/main.go @@ -2,10 +2,8 @@ package main import ( "fmt" - "io/ioutil" "os" "os/signal" - "strings" "syscall" "github.com/bwmarrin/discordgo" @@ -13,14 +11,13 @@ import ( "PermissionGacha/db" "PermissionGacha/modules/active" "PermissionGacha/modules/commands" + "PermissionGacha/modules/config" "PermissionGacha/modules/level" "PermissionGacha/modules/starboard" ) func main() { - token, _ := ioutil.ReadFile("token.txt") - - dg, err := discordgo.New(strings.TrimSpace(string(token))) + dg, err := discordgo.New(config.BotToken) if err != nil { fmt.Println("Error creating Discord session:", err) return diff --git a/modules/config/config.go b/modules/config/config.go index 25c3aa0..50071ec 100644 --- a/modules/config/config.go +++ b/modules/config/config.go @@ -11,6 +11,8 @@ type config struct { GuildID string `json:"guildID"` PrestigeRequirement int `json:"prestigeFactor"` StarChannel string `json:"starChannel"` + BotToken string `json:"token"` + LevelRoles []string `json:"roles"` } type activeNerf struct { @@ -36,6 +38,8 @@ func init() { GuildID = output.GuildID PrestigeRequirement = output.PrestigeRequirement StarChannel = output.StarChannel + BotToken = output.BotToken + LevelRoles = output.LevelRoles } //Exposed Variables @@ -47,3 +51,5 @@ var CommandPrefix string var GuildID string var PrestigeRequirement int var StarChannel string +var BotToken string +var LevelRoles []string diff --git a/modules/roles/assigner.go b/modules/roles/assigner.go index 1423074..0cb550f 100644 --- a/modules/roles/assigner.go +++ b/modules/roles/assigner.go @@ -9,7 +9,7 @@ import ( func GiveLevelRoles(s *discordgo.Session, discordID string, oldLevel, newLevel int) { for i := oldLevel + 1; i <= newLevel; i++ { - s.GuildMemberRoleAdd(config.GuildID, discordID, rolesFromLevel[i-1]) + s.GuildMemberRoleAdd(config.GuildID, discordID, config.LevelRoles[i-1]) } } @@ -20,7 +20,7 @@ func RemoveAllLevelRoles(s *discordgo.Session, discordID string) { return } for _, v := range member.Roles { - for _, w := range rolesFromLevel { + for _, w := range config.LevelRoles { if v == w { s.GuildMemberRoleRemove(config.GuildID, discordID, v) break diff --git a/modules/roles/check.go b/modules/roles/check.go index 114b631..875d5ac 100644 --- a/modules/roles/check.go +++ b/modules/roles/check.go @@ -15,9 +15,9 @@ func GetOldLevel(s *discordgo.Session, id string) (int, error) { } foundLevel := 0 levelSearchLoop: - for i := len(rolesFromLevel); i > 0; i-- { + for i := len(config.LevelRoles); i > 0; i-- { for _, v := range member.Roles { - if rolesFromLevel[i-1] == v { + if config.LevelRoles[i-1] == v { foundLevel = i break levelSearchLoop } diff --git a/modules/roles/roles.go b/modules/roles/roles.go deleted file mode 100644 index bcabcf6..0000000 --- a/modules/roles/roles.go +++ /dev/null @@ -1,16 +0,0 @@ -package roles - -import ( - "io/ioutil" - "strings" -) - -var rolesFromLevel []string - -func init() { - listOfRoles, _ := ioutil.ReadFile("roles.txt") - rolesFromLevel = strings.Split(string(listOfRoles), "\n") - for k, v := range rolesFromLevel { - rolesFromLevel[k] = strings.TrimSpace(v) - } -}