Команда /execute разделена на подкоманды. Подкоманды делятся на три категории:
Модификатор: подкоманды, которые позволяют изменить способ выполнения команды. Например, изменить исполнителя и место исполнения команды.
Условие: подкоманды, которые могут препятствовать выполнению команды. Например, команда выполнится, если существует определённая сущность.
Запись: подкоманды, которые сохраняют результат или успешность исполнения команды.
Команда /execute может содержать неограниченное число подкоманд, кроме подкоманды run <команда>. Эта подкоманда может быть записана лишь один раз в конце всей цепочки подкоманд. Обратите внимание, что нельзя использовать / в начале команды, записанной с run.
Изменяет измерение, позицию и поворот выполнения команды на такие же, что у целей (сам исполнитель не изменяется). Если целей несколько, команда выполнится по разу с каждым местом выполнения.
Примеры:
/execute at @p run setblock ^ ^ ^2 diamond_block: ставит алмазный блок впереди ближайшего игрока.
/execute as @a at @p run tp @s ^ ^ ^2: телепортирует всех игроков в точку перед ближайшим игроком.
Выполняет команду так, будто взгляд исполнителя направлен на указанную точку привязки целей. Если целей несколько, команда выполнится по разу с каждым поворотом исполнителя.
Пример:
/execute as @p at @s anchored eyes facing entity @e[type=cow,limit=1,sort=nearest] eyes run setblock ^ ^ ^5 diamond_block: ставит алмазный блок между «глазами» ближайшего игрока и «глазами» ближайшей к нему коровой в 5 блоках от этого игрока.
Выполняет команду так, будто взгляд исполнителя направлен на указанную позицию.
Пример:
/execute as @p at @s facing 0 0 0 run setblock ^ ^ ^5 diamond_block: ставит алмазный блок между ближайшим игроком и позицией (0, 0, 0) в 5 блоках от этого игрока.
Изменяет позицию выполнения команды на указанную позицию.
Пример:
/execute positioned 0 64 0 run setblock ~ ~ ~ diamond_block: ставит алмазный блок на позицию (0, 64, 0), однако измерение, в котором выполняется команда, сохраняется.
Изменяет позицию выполнения команды на такую же, что у целей. Если целей несколько, команда выполнится по разу с позицией каждой цели.
Пример:
/execute positioned as @p run setblock ~ ~ ~ diamond_block: ставит алмазный блок на позицию ближайшего игрока, однако измерение, в котором выполняется команда, сохраняется.
Изменяет поворот выполнения команды на указанный поворот.
Пример:
/execute at @p rotated ~30 0 run setblock ^ ^ ^4 diamond_block: ставит алмазный блок впереди ближайшего игрока, будто его поворот головы повёрнут на 30 градусов вправо, а наклон равен 0 градусам.
Изменяет поворот выполнения команды на такой же, что у целей. Если целей несколько, команда выполнится по разу с поворотом каждой цели.
Пример:
/execute at @p rotated as @e[type=cow,limit=1,sort=nearest] run setblock ^ ^ ^4 diamond_block: ставит алмазный блок впереди ближайшего игрока, будто его поворот головы такой же, что у ближайшей к нему коровы.
Аргументы
Аргумент
Тип
Описание
Свойства
<оси>
Оси
Комбинация букв x, y и z. Например: x,xz,zyx, yz.
—
(feet|eyes)
Литерал
Точка сущности, к которой привязываются локальные координаты (^ ^ ^):
Проверяет соответствие блока на позиции указанному.
Проверка:
if: проверяет нахождение на указанной позиции указанного блока.
unless: проверяет нахождение на указанной позиции любого блока, кроме указанного.
Примеры:
/execute if block 0 64 0 diamond_block run say Алмазный блок!: выводит в чат сообщение, если на координатах (0, 64, 0) найдет алмазный блок.
/execute as @a at @s unless block ~ ~-1 ~ air run say Не воздух!: относительно каждого игрока проверяется наличие воздуха под ним; если его нет, в чат выводится сообщение.
Проверяет соответствие области [начало → конец] и области-назначения.
Проверка:
if: проверяет полное соответсвие областей.
unless: проверяет несоответсвие областей.
Пример:
/execute if blocks 0 0 0 10 10 10 20 20 20 masked run say Полное соответствие!: выводит в чат сообщение, если область [(0, 0, 0) → (10, 10, 10)] полностью соответствует области [(20, 20, 20) → (30, 30, 30)].
if: условие выполнено — количество проверяемых блоков; иначе — 0.
Проверяет истинность сравнения указанным образом счёта цели в задаче-цели и счёта источника в задаче-источнике.
Проверка:
if: проверяет соответсвие выражения истине.
unless: проверяет соответсвие выражения лжи.
Пример:
/execute if score Alex obj < Steve obj run say Alex < Steve: выводит в чат сообщение, если счёт Alex в задаче obj меньше, чем счёт Steve в той же задаче.
success : записывает успешность выполнения команды.
Если команда выполнена неуспешно (success равен 0), result тоже будет равным 0.
Значение будет записано, когда вся команда полностью закончит выполнение.
Использование
Команда
/execute store (result|success) block <позиция> <путь> (byte|double|float|int|long|short) <множитель>
Записывает значение по указанному пути в NBT-данные блока-сущности, располагающегося на указанной позиции, в качестве умноженного на множитель числа с указанным типом.
Пример:
/execute store result block 0 65 0 RecordItem.Count byte 1.5 run scoreboard players get Alex obj: предполагая, что на (0, 65, 0) находится проигрыватель, изменяет количество вставленных в него предметов на значение счёта Alex в задаче obj, умноженное на 1,5.
/execute store (result|success) bossbar <ID> (value|max)
Записывает значение в текущее или максимальное значение боссбара с указанным ID.
Пример:
/execute store result bossbar foo:bar value run data get entity Alex Health: Записывает значение NBT-тега Health игрока Alex в текущее значение боссбара foo:bar.
/execute store (result|success) entity <цель> <путь> (byte|double|float|int|long|short) <множитель>
Записывает значение по указанному пути в NBT-данные цели в качестве умноженного на множитель числа с указанным типом.
Эта подкоманда не может изменять NBT-данные игроков. NBT-данные по пути «Inventory[индекс].tag» или «EnderItems[индекс].tag» являются исключением и могут быть изменены.
Пример:
/execute as @e[type=pig] at @s store success entity @s Saddle byte 1 if entity @p[distance=..5]: если в радиусе пяти блоков вокруг свиньи есть игрок, на неё наденется седло.
/execute store (result|success) score <цели> <задача>
Записывает значение в счёт целей в задаче.
Пример:
/execute store result score Свиней obj if entity @e[type=pig]: записывает в счёт «Свиней» задачи obj количество найденных свиней в прогруженных чанках.
Аргументы
Аргумент
Тип
Описание
Свойства
(result|success)
Литерал
Тип возвращаемого значение, которое нужно записать: