Datos
El código lee los datos del momento en que se usa el comando, con un punto. Todo es de solo lectura: el código no puede cambiar quién es el usuario, solo pedir acciones (Acciones).
| Nombre | Qué es | Campos |
|---|---|---|
.User |
Quien usó el comando | ID, Username, GlobalName, Mention, Avatar (un enlace), IsBot |
.Member |
La misma persona como miembro de este servidor | Nick, DisplayName, RoleIDs (una lista de ID), JoinedAt (segundos unix) |
.Guild |
El servidor | ID, Name, MemberCount, Icon (un enlace) |
.Channel |
El canal donde se usó | ID, Name, Mention |
.Message |
El mensaje que usó el comando, o el mensaje en el que está un botón | ID, Content, Link, Embeds (una lista de mapas con Title, Description, Footer, Author, AuthorIcon, FooterIcon, Thumbnail, Image y Color) |
.Args |
Lo que se escribió después del comando, separado por espacios | Una lista de textos |
.RawArgs |
Lo mismo, como un solo texto | |
.Cmd |
El nombre del comando que se usó | |
.Prefix |
El prefijo que inició el comando: el del servidor, o el propio del comando. Vacío para los activadores startswith, exact y contains |
|
.Trigger |
Por qué corre el código: "command", "button", "select", "modal" o "reaction" |
|
.Button |
Cuando se usó un botón o un menú: un mapa con ID y Data. nil en un comando |
ID, Data |
.Values |
Cuando se usó un menú, los valores elegidos. Una lista vacía en otro caso | Una lista de textos |
.Modal |
Cuando se envió un formulario (modal): un mapa con ID y Data. Mira Botones y menús |
ID, Data |
.Fields |
Cuando se envió un formulario: lo que se escribió, por el id de cada campo, como .Fields.reason |
|
.Reaction |
Cuando alguien reaccionó: un mapa con Emoji y Added. Mira Reacciones |
Emoji, Added |
Ejemplo:
{{ .User.Username }} escribió {{ len .Args }} palabras en {{ .Channel.Mention }}.Argumentos
Sección titulada «Argumentos»Cada argumento es texto, aunque sea un número. Las funciones de matemáticas entienden un texto que contiene un número, así que
{{ add (index .Args 0) 1 }} funciona. Para comprobar cuántos se dieron, usa len:
{{ if lt (len .Args) 1 }}Usa: {{ .Prefix }}{{ .Cmd }} <algo>{{ return }}{{ end }}Leer un argumento que no existe, como {{ index .Args 3 }} con dos argumentos, es un error.
.Member.RoleIDs es una lista de ID de roles. Para saber si el miembro tiene un rol, usa hasRole:
{{ if hasRole "223456789012345678" }}Tienes el rol.{{ end }}