コマブロだけで疑似的にレシピを追加する Minecraft(JE)

ふと、コマブロだけでクラフトレシピが追加できないか思い立ち、色々試したので共有。

 

本+エメラルドでエンチャントされた本をクラフトしてみます。

 

コマンドの作成にはMCstacker様を使わせていただきました。

 

レシピの設定

上向きのドロッパーを2つ用意します。

 

説明のためにA,Bと呼びます。

 

上向きドロッパーA,B

 

ドロッパーAの横に赤石ブロックを置きます。Bに入力が入らないように注意します。

ドロッパーのテクスチャを変えて見やすくしてます。

 

それではドロッパーAにアイテムを入れます。

 

これがそのままレシピになります。

 

アイテムを重ねても問題ない。

 

Bには完成品を入れます。

 

 

次にコマンドです。リピートコマンドブロックを用意して以下のコマンドをコピペします。

 

/execute as @e[tag=craft] at @s if blocks [座標A] [座標A] ~ ~-1 ~ masked run clone [座標B] [座標B] ~ ~-1 ~ replace

[座標A]にはドロッパーAの座標を、[座標B]にはドロッパーBの座標を入力します。

 

リピート 無条件 常時実行

 

レシピの設定は以上です。

 

 

 

作業台の設定

 

レシピを作りましたが、肝心の作業台がありません。

もちろん、普通の作業台を使ってもクラフトはできません。

 

そこで特殊な作業台を作りたいと思います。

 

 

以下のコマンドを先ほどのリピートコマブロにチェーンしてください。

/execute at @e[type=item,nbt={Item:{id:"minecraft:magma_cream",Count:1b,tag:{craft_ball:0}}}] run summon armor_stand ~ ~ ~ {Tags:["craft"]}

 

常時実行を忘れずに

 

次のコマンドをチャットで実行してください。

/give @p magma_cream{HideFlags:1,craft_ball:0,Enchantments:[{id:"minecraft:infinity",lvl:1s}]} 1

 

これが手に入る

このアイテムを捨てて、アーマースタンドが召喚されればOKです。

 

アーマースタンドを透明にしてもよいですが、サバイバルで破壊できなくなります。

 

 

 

実際にクラフトする

 

さきほど手に入れたマグマクリームをもって上向きドロッパーの上に乗ります。

 

マグマクリームを捨ててアーマースタンドをドロッパーの上に召喚します。

 

アーマースタンドが乗ってる間、このドロッパーが特殊作業台になります。

 

こんなかんじ

 

ドロッパーの側面にレバーを付けておきます。

 

クラフトしてみましょう!!

 

作ったレシピ通りにアイテムを並べて…

 

レバーを引くと…

 

 

 

できた!!!

 

 

ということで完成です。

 

 

レシピの追加はドロッパーA,Bを追加するだけです。

 

 

おまけ

マグマクリームからアマスタをわざわざ召喚したのは、交易でアイテム交換→それを使って作業台を作る。とやりたかったからです。

 

もちろん、アマスタをsummonしても使えます。

/summon armor_stand ~ ~ ~ {Tags:["craft"]}

 

村人のコマンドも一応置いておきます。

/summon villager ~ ~ ~ {Invulnerable:1b,Tags:["craft"],VillagerData:{profession:"minecraft:nitwit"},Offers:{Recipes:[{rewardExp:0b,maxUses:10000000,xp:0,buy:{id:"minecraft:emerald",Count:1b},sell:{id:"minecraft:magma_cream",Count:1b,tag:{HideFlags:1,craft_ball:0,Enchantments:[{id:"minecraft:infinity",lvl:1s}]}}}]}}

*1

 

 

 

最初にドロッパーAの横に赤石ブロックを置いたやつですが、アレがないと動きません。

どうやらマイクラのバグでドロッパーをcloneでドロッパーに置き換えた時、中身が読み込まれないみたいです。

 

そこで強制的に読み込みを行わせるために

赤石入力ONのA→赤石入力OFFのB

とcloneして、レバーの赤石入力で更新させることで中身を読み込ませています。

 

まぁ…おまじないだと思っておきましょう!

*2

 

ここまで読んでくれてありがとう!またね!

*1:交易内容はエメラルド1つ→マグマクリームにしてます。

*2:1tickの赤石入力で壊れるかも…?大丈夫だと思いますが…