From beb0ea0ca44c96083a2ba2f683accc68ad30f1b1 Mon Sep 17 00:00:00 2001 From: Anhgelus Morhtuuzh Date: Mon, 15 Apr 2024 14:42:08 +0200 Subject: feat(config): base of guild config --- main.go | 42 +++++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) (limited to 'main.go') diff --git a/main.go b/main.go index caede84..adc2e1c 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,7 @@ import ( "flag" "github.com/anhgelus/gokord" "github.com/anhgelus/les-copaings-bot/commands" + "github.com/anhgelus/les-copaings-bot/config" "github.com/anhgelus/les-copaings-bot/xp" "github.com/bwmarrin/discordgo" ) @@ -21,20 +22,50 @@ func main() { panic(err) } - err = gokord.DB.AutoMigrate(&xp.Copaing{}) + err = gokord.DB.AutoMigrate(&xp.Copaing{}, &config.GuildConfig{}, &config.XpRole{}) if err != nil { panic(err) } - rankCmd := gokord.NewCommand("rank", "Affiche le niveau d'une personne"). + rankCmd := gokord.NewCommand("rank", "Affiche le niveau d'un copaing"). HasOption(). AddOption(gokord.NewOption( discordgo.ApplicationCommandOptionUser, "copaing", "Le niveau du Copaing que vous souhaitez obtenir", )). - SetHandler(commands.Rank). - ToCmd() + SetHandler(commands.Rank) + + configCmd := gokord.NewCommand("config", "Modifie la config"). + ContainsSub(). + AddSub( + gokord.NewCommand("show", "Affiche la config").SetHandler(commands.ConfigShow), + ). + AddSub( + gokord.NewCommand("xp", "Modifie l'xp"). + HasOption(). + AddOption(gokord.NewOption( + discordgo.ApplicationCommandOptionString, + "type", + "Type d'action à effectuer", + ). + AddChoice(gokord.NewChoice("Ajouter", "add")). + AddChoice(gokord.NewChoice("Supprimer", "del")). + AddChoice(gokord.NewChoice("Modifier", "edit")).IsRequired(), + ). + AddOption(gokord.NewOption( + discordgo.ApplicationCommandOptionInteger, + "level", + "Niveau du rôle", + ).IsRequired()). + AddOption(gokord.NewOption( + discordgo.ApplicationCommandOptionRole, + "role", + "Rôle", + ).IsRequired()). + SetHandler(commands.ConfigXP), + ). + SetHandler(commands.Config) bot := gokord.Bot{ Token: token, @@ -45,8 +76,9 @@ func main() { Url: "", }, }, - Commands: []*gokord.Cmd{ + Commands: []*gokord.GeneralCommand{ rankCmd, + configCmd, }, AfterInit: afterInit, } -- cgit v1.2.3