¡Una biblioteca que agrega la capacidad de usar un marcado inspirado en MarkDown para escribir componentes de chat de Minecraft!
Proporciona una sintaxis de marcado personalizada que se basa libremente en MarkDown y agrega la capacidad de utilizar todo el poder de los mensajes de componentes con la misma simplicidad que los códigos de formato heredados. (¡Que aún puede admitir!) También incluye una forma de reemplazar directamente los marcadores de posición en los mensajes, ¡tanto los basados en cadenas como los basados en componentes!
Esto requiere la API de chat de kyori-adventure, por lo que debes proporcionar una de las bibliotecas de la plataforma en tu proyecto para poder usar estos mensajes. Consulte este complemento para una implementación simple.
Descripción | Sintaxis | Más información | Avance |
---|---|---|---|
Legado de color | &6Text | Códigos de formato | |
Color | &gold&Text | Nombres de colores | |
Color hexagonal RGB | &#ff00ff&Text | Formato hexadecimal completo | |
Color hexagonal RGB | &#f0f&Text | Formato corto (equivalente al largo) | |
Gradiente | &#f0f-#fff&Text | gradientes en línea | |
Arcoíris | &rainbow&Text | Arco iris en línea | |
Fase del arco iris | &rainbow:20&Text | Arco iris en línea con una fase. | |
Atrevido | **Text** | ||
Itálico | ##Text## | ||
Testado | __Text__ | ||
Tachado | ~~Text~~ | ||
Ofuscado | ??Text?? |
Puede definir eventos de clic y desplazamiento con la sintaxis de enlace MarkDown comúnmente utilizada, así como especificar el formato, la fuente y los colores de esa manera.
Descripción | Sintaxis |
---|---|
Sintaxis general | [Text](text-color text-formatting... link hover text) |
Enlace sencillo | [Text](https://example.com) |
Comando sencillo | [Text](/command to run) |
Enlace + Colocar el cursor | [Text](https://example.com Hover Text) |
Formato de texto | [Text](blue underline !bold) |
Gradiente | [Text](#fff-#000) |
Arcoíris | [Text](rainbow) |
Arco iris en fases | [Text](rainbow:20) |
Formato de texto + Enlace + Pasar el cursor | [Text](#0000ff underline https://example.com Hover Text) |
Descripción | Sintaxis | Más información |
---|---|---|
Sintaxis general | [Text](action=value) | ClickEvent.Acción, HoverEvent.Acción |
Enlace | [Text](open_url=https://example.com) | |
Color | [Text](color=red) | Nombres de colores |
Color hexagonal RGB | [Text](color=#ff00ff) | Formato hexadecimal completo |
Color hexagonal RGB | [Text](color=#f0f) | Formato corto (equivalente al largo) |
Degradado de color RGB | [Text](color=#fff-#000) | Degradado de dos colores. (Admite todas las formas de color) |
Degradado de color RGB | [Text](color=#fff-#333-#222) | Degradado de tres colores. |
Arcoiris RGB | [Text](color=rainbow) | Un arcoíris RGB. |
Arco iris RGB en fases | [Text](color=rainbow:50) | Un arcoíris RGB con una fase específica. |
Formato | [Text](format=underline,bold) | Especificar formato |
Deshabilitar el formato | [Text](format=!underline) | Deshabilite el formato específico con un! prefijo |
Fuente | [Text](font=custom_font) | Establecer una fuente personalizada desde un paquete de recursos |
Ejecutar comando | [Text](run_command=/command string) | Ejecutar comando al hacer clic |
Sugerir comando | [Text](suggest_command=/command) | Sugerir un comando al hacer clic |
Desplazamiento sencillo | [Text](hover=Hover Text) | Mostrar texto flotante |
Texto flotante | [Text](show_text=Hover Text) | Mostrar texto flotante |
Información de la entidad al pasar el cursor | [Text](show_entity=uuid:pig Name) | Mostrar información de la entidad. |
Información del artículo al pasar el cursor | [Text](show_item=stone*2 nbt...) | Mostrar información del artículo; se debe proporcionar información adicional como una cadena de nbt en json |
Inserción | [Text](insert=insert into input) | Insertar en la entrada al hacer clic en Mayús, se puede combinar con otros eventos |
Todas las configuraciones avanzadas se pueden encadenar/incluir en una definición de evento. ¡Sin embargo, no puedes agregar varios colores diferentes ni hacer clic y colocar el cursor sobre las acciones!
El acceso API principal de la biblioteca es a través de MineDown .class y sus métodos de análisis.
Por ejemplo, puedes usarlo así en tu complemento Bukkit:
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( new MineDown ( rawMessage ). replace ( replacements ). toComponent ());
o con un enfoque estático:
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( MineDown . parse ( rawMessage , replacements ));
Eche un vistazo a MineDown JavaDocs para obtener información más detallada sobre la biblioteca y las clases incluidas.
Puede incluir fácilmente esta biblioteca en su complemento utilizando maven. ¡Asegúrate de reubicarlo en el paquete de tu complemento!
< repositories >
< repository >
< id >minebench-repo</ id >
< url >https://repo.minebench.de/</ url >
</ repository >
</ repositories >
< dependencies >
< dependency >
< groupId >de.themoep</ groupId >
< artifactId > MineDown -adventure</ artifactId >
< version >1.7.3-SNAPSHOT</ version >
< scope >compile</ scope >
</ dependency >
</ dependencies >
La biblioteca de chat BungeeCord original ya no se mantiene y ha sido reemplazada por esta implementación de aventura. Si necesita seguir usando la versión heredada (que se encuentra en la rama legacy
), puede incluirla de esta manera:
< dependencies >
< dependency >
< groupId >de.themoep</ groupId >
< artifactId > MineDown </ artifactId >
< version >1.7.1-SNAPSHOT</ version >
< scope >compile</ scope >
</ dependency >
</ dependencies >
< build >
< plugins >
< plugin >
< artifactId >maven-shade-plugin</ artifactId >
< version >3.1.0</ version >
< configuration >
< relocations >
< relocation >
< pattern >de.themoep. MineDown </ pattern >
< shadedPattern >your.package.path.libraries. MineDown </ shadedPattern >
</ relocation >
</ relocations >
</ configuration >
< executions >
< execution >
< phase >package</ phase >
< goals >
< goal >shade</ goal >
</ goals >
</ execution >
</ executions >
</ plugin >
</ plugins >
</ build >
Alternativamente, ¡también puedes depender directamente de mi complemento MineDown en lugar de sombrear en esta biblioteca! MineDown Plugin incluye una versión no reubicada de esta biblioteca.
MineDown tiene la licencia de código abierto del MIT:
Copyright (c) 2024 Max Lee (https://github.com/Phoenix616)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.