サバイバルだとエンチャントに限界があるので無制限にエンチャントできる設備をmod無しプラグインなしで作ります
統合版では出来ません
環境はjava 1.16.4 tuinity server forge導入済みですが1.13以降のバニラならいけます(多分)
まぁ正確には鉄床ではなくチェストです
目次
使い方
本と本の合成
チェストの中にこのようにアイテムを配置します
左から 効率強化V 効率強化V 魔法のエンチャント本([anvil:1]の付いたアイテム) です
目の前のボタンをクリックします
すると効率強化VIのエンチャント本になっています
アイテムとアイテムの合成
先程作った効率強化VIのエンチャント本は鉄床を使って装備に合成すると効率強化Vになってしまいます
なのでこのチェストが役に立ちます
チェストの中にこのようにアイテムを配置します
左から ダイヤモンドピッケル 効率強化VI 魔法のエンチャント本([anvil:1]の付いたアイテム) です
目の前のボタンをクリックします
するとダイヤモンドピッケルに効率強化VIのエンチャントが付いています
ダイヤモンドピッケルを木の棒にして上記のことをやると木の棒にエンチャントを付けることが出来ます
準備
同じものを作る人はいないと思いますが参考程度にどうぞ
まず”魔法のエンチャント本”を作ります
/give @s enchanted_book
ゲットしたエンチャント本をQで落とします
/data merge entity @e[type=!minecraft:player,limit=1,sort=nearest] {Item:{tag:{anvil:1}}}
アイテム化したエンチャント本の近くで実行し[anvil:1]のnbtタグを給付します
/scoreboard objectives add super_anvil
スコアボードを作成してください
コマンドブロックの解説
左下から解説します
本と本の合成
座標(174, 84, 266)にあるチェストを鉄床にしたい際のコマンドです
座標は各自変えてください
execute if data block 174 64 266 Items[2].tag.anvil run data remove block 174 64 266 Items[2]
3番目のスロットにあるアイテムにanvilがあるか確認します
あるならそのアイテムを消します
ノーコストでエンチャントを可能にしたいならこのコマンドは要りません
execute store result score anvil_1 super_anvil run data get block 174 64 266 Items[0].tag.StoredEnchantments[0].lvl
スコアボードのanvil_1に1番目のスロットにあるエンチャントのレベルを追加します
execute store result score anvil_2 super_anvil run data get block 174 64 266 Items[1].tag.StoredEnchantments[0].lvl
スコアボードのanvil_2に2番目のスロットにあるエンチャントのレベルを追加します
execute if score anvil_1 super_anvil = anvil_2 super_anvil run scoreboard players add anvil_1 super_anvil 1
スコアボードのanvil_1とanvil_2が同じ値どうかチェックします
同じならanvil_1を1増やします
execute store result block 174 64 266 Items[0].tag.StoredEnchantments[0].lvl short 1 run scoreboard players get anvil_1 super_anvil
スコアボードのanvil_1を1番目のスロットにあるアイテムのエンチャントレベルに代入します
data remove block 174 64 266 Items[1]
2番目のスロットにあるアイテムを削除します
アイテムと本の合成
座標(174, 84, 264)にあるチェストを鉄床にしたい際のコマンドです
座標は各自変えてください
execute if data block 174 64 264 Items[2].tag.anvil run data remove block 174 64 264 Items[2]
3番目のスロットにあるアイテムにanvilがあるか確認します
あるならそのアイテムを消します
ノーコストでエンチャントを可能にしたいならこのコマンドは要りません
data modify block 174 64 264 Items[0].tag.Enchantments append from block 174 64 264 Items[1].tag.StoredEnchantments[0]
スコアボードの2番目のスロットにあるアイテムのエンチャント(StoredEnchantments)を2番目のスロットにあるアイテムのエンチャント(Enchantments)に代入します
data remove block 174 64 264 Items[1]
1番目のスロットにあるアイテムを削除します