diff --git a/common/templates/general.go b/common/templates/general.go index 8d13fe93ac..0e6f02b578 100644 --- a/common/templates/general.go +++ b/common/templates/general.go @@ -431,6 +431,19 @@ func CreateMessageSend(values ...interface{}) (*discordgo.MessageSend, error) { } msg.Components = append(msg.Components, discordgo.ActionsRow{[]discordgo.MessageComponent{menu}}) } + case "sticker": + if val == nil { + continue + } + v, _ := indirect(reflect.ValueOf(val)) + if v.Kind() == reflect.Slice { + const maxStickers = 3 // Discord limitation + for i := 0; i < v.Len() && i < maxStickers; i++ { + msg.StickerIDs = append(msg.StickerIDs, ToInt64(v.Index(i).Interface())) + } + } else { + msg.StickerIDs = append(msg.StickerIDs, ToInt64(val)) + } default: return nil, errors.New(`invalid key "` + key + `" passed to send message builder`) }