【アドオン小技メモ】 "文字"を追加する

 軽く内容を書く程度なのでアドオン初心者でもわかるような親切さはありません。
 「(要検証)」または「未検証」の部分はヒマなら試してみてください。結果がわかった/知っている場合はこのサイトのコメント欄ででも教えてくれるとありがたいです。

○具体的にはどういうこと?

 文字通り、「文字」を追加します──文字だけに笑。
 この文字は主に/tellraw、/titlerawコマンドで効果を発揮します。下の図のように、絵文字のようなものも追加することができます。
 ちなみにバニラにもいくつか絵文字が搭載されていますが、使って面白いものはあんまりないという印象……。下の図の絵文字がそれにあたります。

○使い方

■コマンドで使う

/tellraw @a { "rawtext" : [ { "text" : "\ue100" } ] }

 このコマンドを実行すると、満腹度ゲージのアイコンが画面左上のチャット欄に出力されると思います。
 「\ue100」とは何でしょう? 厳密には「unicode(ユニコード)」というものですが、ようは「文字のid」です。もちろんこの日本語にもありますし、もっと言えばマインクラフト特有のものではありません。詳しくは「unicode」で検索。
 それぞれのidにテクスチャがあてられており、その配分も後ほど説明します。

※コマンドでやってみたけど「/ue100」が表示されてしまう? ──スラッシュの向きに気をつけてください。

■追加する

 ゼロからは作らずに、バニラのテンプレートから作ります。リソースの「font」フォルダにありますが、公式が配布しているものにはないので、androidなら.apk抽出が必要だったりします。
 以下の.zipファイルをそのまま解凍すれば当の「font」フォルダ一つが出てくるのでそのまま使えます。どうしても手に入らない場合はどうぞ。
 新しいファイルを作らずにテンプレートに追加していくのは面倒だからというのもあるんですが、なにより文字は新しいファイルを追加しても追加できないからです。ここは我流でと言って新しいファイルで作ってできなくて泣きついたりしないでください。

①追加したい文字のテクスチャ

 今回は説明用にglyph_E1.pngを使うとします。このファイルなら空白があるので、既存の文字を潰すことなく追加できます
 そしてその空白にテクスチャを描いていくわけですが、そこで必要なポイントをまとめておきます。
  • ​全体は256x256の画像だが文字として使われるのは縦横16分割した16x16で一つの文字
  • 透過はたぶんできない(要検証)
  • /titlerawとかで文字と文字の間隔が空くので二つで一つの文字に見えるとかおすすめしません
  • glyph_E0.pngは512x512となっており(他にあるかはわかりません)、同じく16分割した32x32で一つの文字です

②文字のID

 基本は「\u○○○○」になります。まず頭の二桁はファイルの名前から来ています「glyph_E1.png」なら「e1」です。
 次の二桁はテクスチャの場所です。16x16に分割してあるんでしたね。左上から右に「00, 01, 02, ……, 0a, 0b, ……, 0f」です。何でアルファベットが出現するかは「16進数」を知っていればわかります。まあ、知らなくても法則はわかりますよね。
 そして上から二段目の行になると左から「10, 11, 12, ……, 1a, 1b, ……, 1f」と続き、最後の右下は「ff」になるはずです。
 例えば満腹ゲージのアイコンなら「glyph_E1.png」の一番左上にあるので「\ue100」です。
 glyph_E0.pngなどはとくにそうなんですが、一行まるまる何もなかったりするので数え飛ばさないようにしましょう。

③実際に使う

 /tellraw, /titlerawコマンドならこの記事の初めに話したようにIDを打ち込めば表示されます
 看板、金床によるアイテムの命名、sayコマンド(チャット)、スコアボードの名前、.langファイルによるテキスト表示には使えますが、方法が変わります。(それらは検証しましたが、他の文字を表示する方法は未検証です 本とか)

 以下のリンクの「文字検索」にIDの少し形を変えたものを書きます。「\ue100」なら「u+e100」です。バックスラッシュをなくしてuと一桁目の間に+をいれます。すると、下に予測変換みたく出てくるのでそこを押し、プレビューが表示されたら「↓」ボタンを押し、今度は「文字検索」の上のボックスに目当ての文字が表示されるのでコピーします。当然マイクラの外なので文字化けして四角になったり四角に×の記号になったりします(✳)。そしてもうわかったと思いますが、そのまま貼り付けて使用します。

(✳)厳密な話をすると、確かにユニコードとはマイクラの外でも使われているものですが、u+e0○○やu+e1○○などはとくに「私用領域」とよばれ、ゲーム内などで自由に文字を追加できるようにテクスチャが指定されておらず、わざとそのIDを空きにしてあります。だから当然追加した文字がマイクラの外で表示されることはなく、逆にu+e0○○などがマイクラの外で文字化けしないことはありません。もし既存の文字を潰して追加したならばその潰す前の文字が表示されることがあります。
 もちろんこのリンクを使わなくても、ユニコードのid(u+e100とか)から文字を検索してコピペできれば何でもいいです。わたしはAndroidなので「UnicodePad」というアプリを使います。

 そういえば一部のデバイスではペーストがマイクラ内でできませんね。これもまたわたしはAndroidで、「Hacker's Keyboard」というアプリならばctrlキーが使えるのでスマホでもペーストできます。そういう特殊なキーボードがないと無理でしょうね。

■既存の特殊絵文字

 既存のものをいくつかコピペできるようにしておきます。間違っていたらごめんなさい。

①ue080 

②ue081 

③ue082 

④ue083 

⑤ue084 

⑥ue085 

⑦ue086 

⑧ue087 

⑨ue0a0 

⑩ue0a1 

⑪ue100 

⑫ue101 

⑬ue102 

⑭ue103 

MinecraftBEアドオン-ヒント倉庫

MimecraftBEのアドオン作りで困ったときにここで解決できるようにと個人によって作られたものです

0コメント

  • 1000 / 1000