Une bibliothèque qui ajoute la possibilité d'utiliser un balisage inspiré de MarkDown pour écrire des composants de chat Minecraft !
Il fournit une syntaxe de balisage personnalisée vaguement basée sur MarkDown qui ajoute la possibilité d'utiliser toute la puissance des messages de composants avec la même simplicité que les codes de formatage existants. (Ce qu'il peut toujours prendre en charge !) Il inclut également un moyen de remplacer directement les espaces réservés dans les messages, à la fois basés sur des chaînes et des composants !
Cela nécessite l'API de chat kyori-adventure, vous devez donc fournir l'une des bibliothèques de plateforme dans votre projet afin d'utiliser ces messages ! Voir ce plugin pour une implémentation simple.
Description | Syntaxe | Plus d'informations | Aperçu |
---|---|---|---|
Héritage des couleurs | &6Text | Codes de formatage | |
Couleur | &gold&Text | Noms des couleurs | |
Couleur hexadécimale RVB | &#ff00ff&Text | Format hexadécimal complet | |
Couleur hexadécimale RVB | &#f0f&Text | Format court (équivalent au long) | |
Pente | &#f0f-#fff&Text | Dégradés en ligne | |
Arc-en-ciel | &rainbow&Text | Arc-en-ciel en ligne | |
Phase arc-en-ciel | &rainbow:20&Text | Inline Rainbow avec une phase | |
Audacieux | **Text** | ||
Italique | ##Text## | ||
Souligné | __Text__ | ||
Barré | ~~Text~~ | ||
Obscurci | ??Text?? |
Vous pouvez définir des événements de clic et de survol avec la syntaxe de lien MarkDown couramment utilisée, ainsi que spécifier le formatage, la police et les couleurs de cette façon.
Description | Syntaxe |
---|---|
Syntaxe générale | [Text](text-color text-formatting... link hover text) |
Lien simple | [Text](https://example.com) |
Commande simple | [Text](/command to run) |
Lien + Survol | [Text](https://example.com Hover Text) |
Formatage du texte | [Text](blue underline !bold) |
Pente | [Text](#fff-#000) |
Arc-en-ciel | [Text](rainbow) |
Arc-en-ciel progressif | [Text](rainbow:20) |
Formatage du texte + Lien + Survol | [Text](#0000ff underline https://example.com Hover Text) |
Description | Syntaxe | Plus d'informations |
---|---|---|
Syntaxe générale | [Text](action=value) | ClickEvent.Action, HoverEvent.Action |
Lien | [Text](open_url=https://example.com) | |
Couleur | [Text](color=red) | Noms des couleurs |
Couleur hexadécimale RVB | [Text](color=#ff00ff) | Format hexadécimal complet |
Couleur hexadécimale RVB | [Text](color=#f0f) | Format court (équivalent au long) |
Dégradé de couleur RVB | [Text](color=#fff-#000) | Dégradé de deux couleurs. (Prend en charge toutes les formes de couleurs) |
Dégradé de couleurs RVB | [Text](color=#fff-#333-#222) | Dégradé de trois couleurs. |
Arc-en-ciel RVB | [Text](color=rainbow) | Un arc-en-ciel RVB. |
Arc-en-ciel RVB progressif | [Text](color=rainbow:50) | Un arc-en-ciel RVB avec une phase spécifique. |
Formatage | [Text](format=underline,bold) | Spécifier le formatage |
Désactiver le formatage | [Text](format=!underline) | Désactivez le formatage spécifique avec un ! préfixe |
Fonte | [Text](font=custom_font) | Définir une police personnalisée à partir d'un pack de ressources |
Exécuter la commande | [Text](run_command=/command string) | Exécuter la commande en cliquant |
Suggérer une commande | [Text](suggest_command=/command) | Proposer une commande au clic |
Survol simple | [Text](hover=Hover Text) | Afficher le texte de survol |
Texte survolé | [Text](show_text=Hover Text) | Afficher le texte de survol |
Informations sur l'entité de survol | [Text](show_entity=uuid:pig Name) | Afficher les informations sur l'entité. |
Survolez les informations sur l'article | [Text](show_item=stone*2 nbt...) | Afficher les informations sur l'article, des informations supplémentaires doivent être fournies sous forme de chaîne du nbt dans json |
Insertion | [Text](insert=insert into input) | Insérer dans l'entrée lors d'un clic sur Shift, peut être combiné avec d'autres événements |
Tous les paramètres avancés peuvent être chaînés/inclus dans une définition d'événement. Vous ne pouvez cependant pas ajouter plusieurs couleurs différentes ni effectuer des actions de clic et de survol !
L'accès principal à l'API de la bibliothèque se fait via la classe MineDown et ses méthodes d'analyse.
Par exemple, vous pouvez l'utiliser comme ceci dans votre plugin Bukkit :
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( new MineDown ( rawMessage ). replace ( replacements ). toComponent ());
ou avec une approche statique :
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( MineDown . parse ( rawMessage , replacements ));
Jetez un œil aux JavaDocs MineDown pour des informations plus détaillées sur la bibliothèque et les classes incluses.
Vous pouvez facilement inclure cette bibliothèque dans votre plugin en utilisant maven. Assurez-vous de le déplacer dans le package de votre plugin !
< 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 bibliothèque originale de discussion BungeeCord n'est plus maintenue et a été remplacée par cette implémentation d'aventure. Si vous devez toujours utiliser la version héritée (trouvée sur la branche legacy
), vous pouvez l'inclure comme ceci :
< 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 >
Alternativement, vous pouvez également dépendre directement de mon plugin MineDown au lieu d'ombrager dans cette bibliothèque ! MineDown Plugin inclut une version non déplacée de cette bibliothèque.
MineDown est sous licence open source 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.