MarkDown にインスピレーションを得たマークアップを使用して Minecraft チャット コンポーネントを作成する機能を追加するライブラリです。
これは、MarkDown に大まかに基づいたカスタム マークアップ構文を提供し、従来の書式設定コードと同じ単純さでコンポーネント メッセージの能力を最大限に活用する機能を追加します。 (これはまだサポート可能です!) また、メッセージ内のプレースホルダー (文字列ベースとコンポーネントベースの両方) を直接置き換える方法も含まれています。
これには kyori-adventure チャット API が必要なので、これらのメッセージを使用するにはプロジェクトにプラットフォーム ライブラリの 1 つを提供する必要があります。簡単な実装については、このプラグインを参照してください。
説明 | 構文 | 詳細情報 | プレビュー |
---|---|---|---|
カラーレガシー | &6Text | コードのフォーマット | |
色 | &gold&Text | 色の名前 | |
RGB 16 進カラー | &#ff00ff&Text | 完全な 16 進形式 | |
RGB 16 進カラー | &#f0f&Text | ショートフォーマット(ロングフォーマットと同等) | |
勾配 | &#f0f-#fff&Text | インライングラデーション | |
虹 | &rainbow&Text | インラインレインボー | |
レインボーフェーズ | &rainbow:20&Text | フェーズ付きインラインレインボー | |
大胆な | **Text** | ||
イタリック | ##Text## | ||
下線付き | __Text__ | ||
取り消し線 | ~~Text~~ | ||
難読化された | ??Text?? |
一般的に使用される MarkDown リンク構文を使用してクリック イベントとホバー イベントを定義したり、書式設定、フォント、色を指定したりできます。
説明 | 構文 |
---|---|
一般的な構文 | [Text](text-color text-formatting... link hover text) |
シンプルリンク | [Text](https://example.com) |
簡単なコマンド | [Text](/command to run) |
リンク+ホバー | [Text](https://example.com Hover Text) |
テキストの書式設定 | [Text](blue underline !bold) |
勾配 | [Text](#fff-#000) |
虹 | [Text](rainbow) |
段階的なレインボー | [Text](rainbow:20) |
テキストの書式設定 + リンク + ホバー | [Text](#0000ff underline https://example.com Hover Text) |
説明 | 構文 | 詳細情報 |
---|---|---|
一般的な構文 | [Text](action=value) | ClickEvent.Action、HoverEvent.Action |
リンク | [Text](open_url=https://example.com) | |
色 | [Text](color=red) | 色の名前 |
RGB 16 進カラー | [Text](color=#ff00ff) | 完全な 16 進形式 |
RGB 16 進カラー | [Text](color=#f0f) | ショートフォーマット(ロングフォーマットと同等) |
RGBカラーグラデーション | [Text](color=#fff-#000) | 2色のグラデーション。 (すべてのカラーフォームをサポート) |
RGBカラーグラデーション | [Text](color=#fff-#333-#222) | 3色のグラデーション。 |
RGBレインボー | [Text](color=rainbow) | RGB の虹。 |
段階的な RGB レインボー | [Text](color=rainbow:50) | 特定の位相を持つ RGB レインボー。 |
書式設定 | [Text](format=underline,bold) | 書式設定の指定 |
フォーマットを無効にする | [Text](format=!underline) | ! を使用して特定の書式設定を無効にします。接頭語 |
フォント | [Text](font=custom_font) | リソースパックからカスタムフォントを設定する |
コマンドの実行 | [Text](run_command=/command string) | クリック時にコマンドを実行 |
コマンドの提案 | [Text](suggest_command=/command) | クリック時にコマンドを提案する |
シンプルなホバー | [Text](hover=Hover Text) | ホバーテキストを表示 |
ホバーテキスト | [Text](show_text=Hover Text) | ホバーテキストを表示 |
ホバーエンティティ情報 | [Text](show_entity=uuid:pig Name) | エンティティ情報を表示します。 |
ホバーアイテム情報 | [Text](show_item=stone*2 nbt...) | アイテム情報を表示します。追加情報は json の nbt の文字列として提供する必要があります |
挿入 | [Text](insert=insert into input) | シフトクリックで入力に挿入、他のイベントと組み合わせ可能 |
すべての詳細設定はイベント定義に連鎖したり、イベント定義に含めたりすることができます。ただし、複数の異なる色を追加したり、クリックやホバー操作を追加したりすることはできません。
ライブラリの主な API アクセスは、 MineDown .class とその解析メソッドを介して行われます。
たとえば、Bukkit プラグインで次のように使用できます。
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( new MineDown ( rawMessage ). replace ( replacements ). toComponent ());
または静的なアプローチを使用します。
BukkitAudiences . create ( plugin ). player ( player ). sendMessage ( MineDown . parse ( rawMessage , replacements ));
ライブラリと含まれるクラスの詳細については、 MineDown JavaDocs を参照してください。
Maven を使用すると、このライブラリをプラグインに簡単に組み込むことができます。必ずプラグインのパッケージに再配置してください。
< 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 >
元の BungeeCord チャット ライブラリは維持されなくなり、このアドベンチャー実装に置き換えられました。レガシー バージョン ( legacy
ブランチにある) を引き続き使用する必要がある場合は、次のように含めることができます。
< 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 >
あるいは、このライブラリのシェーディングの代わりに、私のMineDownプラグインに直接依存することもできます。 MineDownプラグインには、このライブラリの再配置されていないバージョンが含まれています。
MineDown 、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.