diff --git a/modules/level/scheduler.go b/modules/level/scheduler.go index 2cc3ed2..26a8e3b 100644 --- a/modules/level/scheduler.go +++ b/modules/level/scheduler.go @@ -46,8 +46,14 @@ func ScheduleUpdates(s *discordgo.Session) { return } if newLevel > oldLevel { - gacha.RollReward(s, checkID, newLevel-oldLevel) - roles.GiveLevelRoles(s, checkID, oldLevel, newLevel) + err = gacha.RollReward(s, checkID, newLevel-oldLevel) + if err != nil { + log.Error(s, err) + } + err = roles.GiveLevelRoles(s, checkID, oldLevel, newLevel) + if err != nil { + log.Error(s, err) + } } }(id, level) } diff --git a/modules/roles/assigner.go b/modules/roles/assigner.go index 0cb550f..4a0eeae 100644 --- a/modules/roles/assigner.go +++ b/modules/roles/assigner.go @@ -7,10 +7,14 @@ import ( "PermissionGacha/modules/log" ) -func GiveLevelRoles(s *discordgo.Session, discordID string, oldLevel, newLevel int) { +func GiveLevelRoles(s *discordgo.Session, discordID string, oldLevel, newLevel int) error { for i := oldLevel + 1; i <= newLevel; i++ { - s.GuildMemberRoleAdd(config.GuildID, discordID, config.LevelRoles[i-1]) + err := s.GuildMemberRoleAdd(config.GuildID, discordID, config.LevelRoles[i-1]) + if err != nil { + return err + } } + return nil } func RemoveAllLevelRoles(s *discordgo.Session, discordID string) {