【マイクラ】copy_custom_dataでデータをコピー【item_modifier】

【マイクラ】copy_custom_dataでデータをコピー【item_modifier】

この記事では、Minecraft Java Edition(バージョン1.20.5)の情報をもとに執筆しています。
そのほかのバージョンや機種などでの動作は保証できません。

こんにちは!
マインクラフターのなつめです。

なつめ

2016年からマイクラを楽しんでおり、最近はクリエイティブモードでコマンドを駆使して遊んでいます!

この記事では、こんな疑問を解決します!

本記事の内容
  • copy_custom_dataでcustom_dataをコピーする
  • 実例

copy_custom_dataはカスタムデータをコピーすることが出来る項目で、名前の通りですね。

コピー元はstorageやエンティティ、ブロックエンティティと幅広く扱えます。

そのため活用する機会も多く、覚えて損のない項目と言えます。
ぜひこの記事を参考に覚えてくださいね。

さっそく見ていきましょう!

本記事で紹介するデータパックのサンプルはGitHubにてダウンロードできます。

copy_custom_dataでcustom_dataをコピーする

copy_custom_dataはその名の通り、カスタムデータをコピーすることのできる項目です。

自由度の高いカスタムデータをコピーできるということで、それはそれは便利な項目と言って間違いありません。

今回はstorageに保存したものをコピーする例を挙げますが、エンティティやブロックエンティティなどからデータをコピーすることも可能です。

実例

実際の例を見ていきましょう。

まずはデータパックの構造です。

  • データパック本体
    • data
      • フォルダー
        (今回はsampleと命名したとします)
        • item_modifiers
          • jsonファイル
            (今回はtest.jsonと命名したとします)
    • pack.mcmeta

jsonファイルには以下のような記述を行います。

{
    "function": "minecraft:copy_custom_data",
    "source": {
      "type": "minecraft:storage",
      "source": "sample:storage"
    },
    "ops": [
      {
        "source": "ex001",
        "target": "setting",
        "op": "replace"
      }
    ]
  }
  

上記の記述の場合は、sample:storageのex001に格納されているデータをsettingとして対象となる存在にコピー(付与)します。

また、opがreplaceになっているので上書きする形ですね。

指定したデータを別の指定した格納場所へコピーできるのは、かなり便利と言えます。

item_modifierなので、itemコマンドで呼び出して適用させましょう。
エンティティやブロックエンティティの場合はルートテーブルで使うことになるはずです。

まとめ

というわけで、今回のまとめです。

ポイント
  • copy_custom_dataを使うことで、カスタムデータをコピーすることが出来る。

この記事は以上になります。

  • 【まとめ】functionコマンドの基本から応用【マイクラ】
  • 【まとめ】カスタムストラクチャーの実装・カスタム方法【マイクラ】