Гайд по добавлению своих крафтов в майнкрафт [1.13]



Да, возможно на просторах сайта вы уже видели похожие гайды, но ещё никто не делал такой гайд для версии Minecraft 1.13 (а делается он тут совершенно по-другому.)
ВНИМАНИЕ! Данный способ НЕ использует файлы .json! Этот способ крафта устроен ТОЛЬКО на КОМАНДНЫХ БЛОКАХ. Посмотреть, как делать крафты в верстаке вы можете в YouTube.

Начнём!

Суть нашего крафта:
Кидаем 2 Слитка золота
+
К 2 Алмазам
=
Бедрок

Сразу напишите в чат это: /gamerule commandBlockOutput false(чтобы не засорять чат)

1. Сначала построим данную структуру из командных блоков (выдать — /give @p minecraft:command_block)

2. В первом командном блоке (Цикличный, сигнал не нужен, безусловный) пишем:
/scoreboard objectives add A dummy

(постоянно делает scoreboard с названием «A» с критерием «dummy». Сделано специально, чтобы невозможно было удалить scoreboard.)

3. Во втором командном блоке (Цикличный, сигнал не нужен, безусловный) пишем:
/execute at @e[type=item,nbt={Item:{id:»minecraft:gold_ingot»,Count:2b},OnGround:1b}] run scoreboard players set @e[type=item,dx=0,dy=0,dz=0] A 1

Разбираем:

type=item — тип сущности — item, т.е. предмет.
nbt={Item:{id:»minecraft:gold_ingot»,Count:2b},OnGround:1b} — хар-ка сущности item — золотой слиток, в количестве 2 штуки, обязательно на земле.
run scoreboard players set @e[type=item,dx=0,dy=0,dz=0] A 1 — запускает команду, чтобы причислить сущности item в радиусе ~ 1 счёт 1 в scoreboard’е «A»

4. В третьем командном блоке (Цепной, сигнал не нужен, условный) пишем:
/execute at @e[type=item,scores={A=1}] run scoreboard players set @e[type=item,dx=0,dz=0,dy=0,nbt={Item:{id:»minecraft:diamond»,Count:2b},OnGround:1b}] A 2

Разбираем:

type=item — тип сущности — item, т.е. предмет.
scores={A=1} — хар-ка сущности item — чтобы у сущности был счёт команды «A» — 1.
run scoreboard players set @e[type=item,dx=0,dz=0,dy=0,nbt={Item:{id:»minecraft:diamond»,Count:2b},OnGround:1b}] A 2 — запускает команду, чтобы причислить сущности item в радиусе ~ 1 счёт 2 в scoreboard’е «A», но чтобы это был обязательно алмаз, в количестве 2 штуки, обязательно на земле.

5. В четвёртом командном блоке (Цепной, сигнал не нужен, условный) пишем:
/execute at @e[type=item,scores={A=2}] run summon item ~ ~ ~ {Item:{id:»minecraft:bedrock»,Count:1b},OnGround:1b}

Разбираем:

type=item — тип сущности — item, т.е. предмет.
scores={A=2} — хар-ка сущности item — чтобы у сущности был счёт команды «A» — 2.
run summon item ~ ~ ~ {Item:{id:»minecraft:bedrock»,Count:1b},OnGround:1b} — запускает команду, чтобы призвать сущность item с id:»minecraft:bedrock» в количестве одной штуки, обязательно на земле.

6. В пятом командном блоке (Цепной, сигнал не нужен, условный) пишем:
/execute at @e[type=item,scores={A=2}] run particle minecraft:cloud ~ ~ ~ 0.5 0.5 0.5 0.01 110 force

Разбираем:

type=item — тип сущности — item, т.е. предмет.
scores={A=2} — хар-ка сущности item — чтобы у сущности был счёт команды «A» — 2.
run particle minecraft:cloud ~ ~ ~ 0.5 0.5 0.5 0.01 110 force — запускает команду, чтобы призвать частицы id:minecraft:cloud относительно предмета с длиной, шириной, высотой 0.5 блока, со скоростью 0.01, в количестве 110, с критерием force

7. В шестом командном блоке (Цепной, сигнал не нужен, условный) пишем:
/execute at @e[scores={A=2}] run kill @e[type=item,scores={A=1}]

Разбираем:

scores={A=2} — хар-ка сущности — чтобы у сущности был счёт команды «A» — 2.
run kill @e[type=item,scores={A=1}] — запускает команду, чтобы уничтожить сущность item со счётом «A» = 1.

7.1 В седьмом командном блоке (Цепной, сигнал не нужен, условный) пишем:
/execute at @e[scores={A=2}] run kill @e[type=item,scores={A=2}]

Разбираем:

scores={A=2} — хар-ка сущности — чтобы у сущности был счёт команды «A» — 2.
run kill @e[type=item,scores={A=1}] — запускает команду, чтобы уничтожить сущность item со счётом «A» = 2.

8. В седьмом командном блоке (Цепной, сигнал не нужен, условный) пишем:
/scoreboard players reset @e[scores={A=2}] A

Разбираем:

scoreboard players reset — убирает счёт scoreboard’a.
@e[scores={A=2}] A — … счёт scoreboard’a «A»

Вообщем-то всё! Да, можно было «сочинить» все эти команды легче, но всё же, у меня даже не было образца, чтобы всё это делать. Работа была довольно объёмная: 10 дней, ибо только 10 дней назад я перешёл на 1.13

Буду рад вашим отзывам!