この記事では、Minecraft Java Edition(バージョン1.20.5)の情報をもとに執筆しています。
そのほかのバージョンや機種などでの動作は保証できません。
こんにちは!
マインクラフターのなつめです。
この記事では、こんな疑問を解決します!
- set_writable_book_pagesで記述内容を操作する
- 実例
set_writable_book_pagesは本と羽ペンに対して用意しておいたページを挿入することが出来ます。
そのため、同じ文章を何度も記述する必要性がなくなるなど、時短として有能な項目です。
挿入規則について詳しく掘り下げるほか、実際の例も見てきますので、ぜひ参考にしてくださいね。
それでは見ていきましょう!
本記事で紹介するデータパックのサンプルはGitHubにてダウンロードできます。
set_writable_book_pagesで記述内容を操作する
set_writable_book_pagesを適用することで、指示しておいた挿入方法で用意していたページを本と羽ペンに挿入します。
つまり、編集途中でもページの差し替えなどができるわけですね。
このset_writable_book_pagesでは本と羽ペンにのみ対応しており、記入済みの本には対応していません。
記入済みの本はset_written_book_pagesが対応しています。
また、挿入方法には4つあり、それぞれ以下のような特徴があります。
挿入方法 | 規則 |
---|---|
append | 最後のページに挿入 |
insert | 指定したページに当てはまるよう挿入 |
replace_all | 内容をすべて上書き |
replace_section | 指定したページからsizeで指定した分のページをまとめて上書き |
補足が必要なのはreplace_sectionでしょうか。
例えば、全6ページの本があったとします。
その本に対して、offsetが0、sizeが1を指定したset_writable_book_pagesを適用してみましょう。
するとoffsetにより1ページからsize分のページ、つまりは1ページ目と2ページ目を対象としてページの上書きが行われます。
結果としては、1、2ページ目が消えて、代わりに指示しておいたページが挿し込まれるわけですね。
まとめて上書きしたことで、計5ページの本になります。
理解するまでは少々難解な仕様ですが、便利な項目であることに違いありません。
実例
実際の例を見ていきましょう。
まずはデータパックの構造からです。
- データパック本体
- data
- フォルダー
(今回はsampleと命名したとします)- item_modifiers
- jsonファイル
(今回はtest.jsonと命名したとします)
- jsonファイル
- item_modifiers
- フォルダー
- pack.mcmeta
- data
今回はitem_modifierとしてappendを指示したものを例に見ていきます。
記述例としては、以下の通り。
{
"function": "minecraft:set_writable_book_pages",
"pages": [
"sample_text"
],
"mode": "append"
}
このitem_modifierを適用した場合、appendであるため最後のページにsample_textと記述されたページが挿入されます。
item_modifierを適用させる際は、itemコマンドでOKです。
以下は手元にあるアイテムに対して、sample:testを適用させるコマンドになります。
/item modify entity @s weapon.mainhand sample:test
まとめ
というわけで、今回のまとめです。
- set_writable_book_pagesを適用させることで、本と羽ペンに対して指示しておいたページを挿入することが出来る。
- 挿入方法には4種類あり、それぞれ異なる挿入規則が存在する。
この記事は以上になります。
2016年からマイクラを楽しんでおり、最近はクリエイティブモードでコマンドを駆使して遊んでいます!