Руководство по команде setblock
Setblock (от англ. set — «установить», block — «блок») — команда, которая размещает блок.
Варианты команды
- Обычная команда:
/setblock <позиция> <блок> [replace|destroy|keep]
- Команда с указанием состояний блока:
/setblock <позиция> <блок[состояние_1=значение_1, состояние_2=значение_2]> [replace|destroy|keep]
- Команда с указанием NBT данных:
/setblock <позиция> <блок{"nbt 1":"значение 1", "nbt 2":"значение 2"}> [replace|destroy|keep]
- Команда с указанием состояний блока и NBT данных:
/setblock <позиция> <блок[состояние_1=значение_1]{"nbt 1":"значение 1"}> [replace|destroy|keep]
При указании NBT данных обязательно нужно заключать nbt и значение в кавычки, если они состоят из нескольких слов.
Название блока
Название блока записывается строчными латинскими буквами. Если в названии несколько слов, то они разделяются знаком подчеркивания " _ ".
Названия блоков можно предварять пространством имён minecraft:
, а можно и нет. Для блоков из модификации пространством имён, обычно, является название модификации.
- Примеры
minecraft:sandstone
— песчаник;minecraft:stone_slab
— каменная плита;minecraft:stone_pressure_plate
— каменная нажимная пластина;white_wool
— белая шерсть.
Состояния блоков
Состояния блока определяют некоторые параметры блока.
- Примеры состояний
- Компаратор направлен в одну из 4 сторон (
facing=north|south|east|west
). - Повторитель имеет задержку (
delay=1|2|3|4
) и может быть активирован (powered=true
) или неактивирован (powered=false
). - Ступени имеет различную форму (
shape=inner_left|inner_right|outer_left|outer_right|straight
).
Несколько возможных значений разделены вертикальной чертой |
.
- Примеры команд
/setblock ~ ~ ~1 chest[facing=north]
— установит перед игроком, который смотрит на юг, сундук, который направлен на север./setblock ~ ~ ~1 repeater[delay=2, powered=true]
— установит перед игроком активированный повторитель с задержкой 2.
Настройка размещения блока
replace
— заменяет старый блок новым.destroy
— подобенreplace
, но выбрасывает старый блок и его содержимое, как если бы он был добыт инструментом без чар.keep
— заменяет только воздух указанным блоком.
По умолчанию replace
.
- Примеры
Условие: Игрок стоит на открытом воздухе
/setblock ~ ~2 ~ stone keep
— установит камень над игроком./setblock ~ ~2 ~ sandstone destroy
— установит песчаник над игроком./setblock ~ ~2 ~ yellow_wool replace
— установит жёлтую шерсть над игроком.
Условие: Игрок стоит в узком каменном коридоре высотой в два блока
/setblock ~ ~2 ~ stone keep
— выведет сообщение о неудачном размещении блока./setblock ~ ~2 ~ sandstone destroy
— установит над игроком песчаник, заменяя камень; выпадет булыжник./setblock ~ ~2 ~ red_wool replace
— установит над игроком красную шерсть, заменяя камень.
NBT-данные
Позволяет указать содержимое блока (если оно у него может быть). Все параметры опциональны.
-
- CustomName — название блока (отображается при открытии интерфейса блока). Для командного блока имя будет заменено с использованием @.
-
- Lock — если значение не пустое, то, чтобы открыть интерфейс блока нужно взять определённый предмет с именем, указанным в этом параметре
-
- Items — число объектов в стойке. Всего есть 4 слота от 0 до 3. ID смотри в статье Структура объектов
- BrewTime — число тактов зелий
-
- Items — список объектов в сундуке. Всего есть 27 слотов от 0 до 26. Первый слот находится слева сверху. ID см. в Структура объектов (англ.)
-
- OutputSignal — определяет направление выходного сигнала. Используется потому, что сам блок использует четыре бита метаданных: вращение, состояние питания и состояние режима вычитания. Также, компаратор может содержать определённое количество энергии даже в цепях без красной пыли.
-
- Command — команда, помещённая в командный блок
- SuccessCount — количество успешных запусков команд. Счётчик обновляется только если командный блок был запущен красной пылью
- LastOutput — последняя выходная запись блока. Записывается всегда, даже при установке аргумента commandBlockOutput у команды gamerule в значение ложь (0). Также можно посмотреть, если открыть интерфейс командного блока
- TrackOutput — неизвестно, принимает значения 0/1 (ложь/правда)
- Примеры
/setblock ~ ~2 ~ command_block{Command:"say @a Привет"}
— установит над игроком командный блок с командойsay @a Привет
./setblock ~ ~2 ~ chest{Items:[{id:"diamond_sword",Count:1,Slot:0}]}
— установит над игроком сундук, в первом слоте которого лежит алмазный меч./setblock ~1 ~ ~1 chest[facing=west]{Items:[{id:"diamond_sword",Count:1,Slot:0}]}
— установит около игрока сундук, который направлен на запад и содержит алмазный меч.