feat: Add arguments in learn command
This commit is contained in:
parent
73d905735b
commit
a6b42b79df
3 changed files with 26 additions and 11 deletions
|
@ -17,9 +17,13 @@ var arguments = utils.InlineCode("{user.name}") + "\n" +
|
|||
utils.InlineCode("{user.mention}") + "\n" +
|
||||
utils.InlineCode("{user.globalName}") + "\n" +
|
||||
utils.InlineCode("{user.id}") + "\n" +
|
||||
utils.InlineCode("{user.createdAt}") + "\n" +
|
||||
utils.InlineCode("{user.joinedAt}") + "\n" +
|
||||
utils.InlineCode("{muffin.version}") + "\n" +
|
||||
utils.InlineCode("{muffin.updatedAt}") + "\n" +
|
||||
utils.InlineCode("{muffin.statedAt}")
|
||||
utils.InlineCode("{muffin.statedAt}") + "\n" +
|
||||
utils.InlineCode("{muffin.name}") + "\n" +
|
||||
utils.InlineCode("{muffin.id}")
|
||||
|
||||
var LearnCommand *Command = &Command{
|
||||
ApplicationCommand: &discordgo.ApplicationCommand{
|
||||
|
|
|
@ -7,7 +7,7 @@ import (
|
|||
"git.wh64.net/muffin/goMuffin/utils"
|
||||
)
|
||||
|
||||
const MUFFIN_VERSION = "0.0.0-gopher_dev.250403b"
|
||||
const MUFFIN_VERSION = "5.0.0-gopher_dev.250404a"
|
||||
|
||||
var updatedString string = utils.Decimals.FindAllStringSubmatch(MUFFIN_VERSION, -1)[3][0]
|
||||
|
||||
|
|
|
@ -28,6 +28,25 @@ func argParser(content string) (args []string) {
|
|||
return
|
||||
}
|
||||
|
||||
func resultParser(content string, s *discordgo.Session, m *discordgo.MessageCreate) string {
|
||||
result := content
|
||||
userCreatedAt, _ := discordgo.SnowflakeTimestamp(m.Author.ID)
|
||||
|
||||
result = strings.ReplaceAll(result, "{user.name}", m.Author.Username)
|
||||
result = strings.ReplaceAll(result, "{user.mention}", m.Author.Mention())
|
||||
result = strings.ReplaceAll(result, "{user.globalName}", m.Author.GlobalName)
|
||||
result = strings.ReplaceAll(result, "{user.id}", m.Author.ID)
|
||||
result = strings.ReplaceAll(result, "{user.createdAt}", utils.TimeWithStyle(&userCreatedAt, utils.RelativeTime))
|
||||
result = strings.ReplaceAll(result, "{user.joinedAt}", utils.TimeWithStyle(&m.Member.JoinedAt, utils.RelativeTime))
|
||||
|
||||
result = strings.ReplaceAll(result, "{muffin.version}", configs.MUFFIN_VERSION)
|
||||
result = strings.ReplaceAll(result, "{muffin.updatedAt}", utils.TimeWithStyle(configs.UpdatedAt, utils.RelativeTime))
|
||||
result = strings.ReplaceAll(result, "{muffin.startedAt}", utils.TimeWithStyle(configs.StartedAt, utils.RelativeTime))
|
||||
result = strings.ReplaceAll(result, "{muffin.name}", s.State.User.Username)
|
||||
result = strings.ReplaceAll(result, "{muffin.id}", s.State.User.ID)
|
||||
return result
|
||||
}
|
||||
|
||||
// MessageCreate is handlers of messageCreate event
|
||||
func MessageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||
config := configs.Config
|
||||
|
@ -110,15 +129,7 @@ func MessageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
|
|||
if x > 2 && len(learnDatas) != 0 {
|
||||
data := learnDatas[rand.Intn(len(learnDatas))]
|
||||
user, _ := s.User(data.UserId)
|
||||
result := data.Result
|
||||
|
||||
result = strings.ReplaceAll(result, "{user.name}", m.Author.Username)
|
||||
result = strings.ReplaceAll(result, "{user.mention}", m.Author.Mention())
|
||||
result = strings.ReplaceAll(result, "{user.globalName}", m.Author.GlobalName)
|
||||
result = strings.ReplaceAll(result, "{user.id}", m.Author.ID)
|
||||
result = strings.ReplaceAll(result, "{muffin.version}", configs.MUFFIN_VERSION)
|
||||
result = strings.ReplaceAll(result, "{muffin.updatedAt}", utils.TimeWithStyle(configs.UpdatedAt, utils.RelativeTime))
|
||||
result = strings.ReplaceAll(result, "{muffin.startedAt}", utils.TimeWithStyle(configs.StartedAt, utils.RelativeTime))
|
||||
result := resultParser(data.Result, s, m)
|
||||
|
||||
s.ChannelMessageSendReply(m.ChannelID, fmt.Sprintf("%s\n%s", result, utils.InlineCode(fmt.Sprintf("%s님이 알려주셨어요.", user.Username))), m.Reference())
|
||||
return
|
||||
|
|
Loading…
Reference in a new issue