Начнём с описания базовых селекторов, а потом разберём все возможные аргументы, которые можно применить к уже имеющимся конструкциям.
Селектор | Комментарий | Пример употребления |
@a | Данный селектор выберет всех игроков. | /tp @a 0 0 0 (телепортация всех игроков на координаты x=0, y=0, z=0). |
@p | Данный селектор выбирает одного ближайшего игрока. | /gamemode creative @p (установка ближайшему игроку творческого режима). |
@r | Данный селектор выбирает одного случайного игрока. | /give @r minecraft:diamond (выдача случайному игроку одного алмаза). |
@e | Данный селектор выбирает всех сущностей (моб, игрок, падающий песок, фейерверк, выброшенный предмет т. п.). | /tp @e TQ (телепортация всех сущностей к игроку под ником «TQ»). |
Отлично! Теперь мы можем составлять некоторые элементарные команды, которых может вполне хватить для создания очень простой любительской карты. Однако мы пойдём дальше. В следующей таблице будут разобраны дополнительные аргументы для базовых селекторов. С их помощью можно намного более точно нацеливаться на различные объекты.
Однако сначала стоит определиться с тем, каким образом будут записываться дополнительные аргументы. На самом деле тут всё достаточно просто. В квадратных скобках (сразу после базового селектора) через запятую должны перечисляться пары «аргумент=значение аргумента» (@s[arg1=1,agr2=2,arg3=3]). Замечательно! Теперь давайте рассмотрим таблицу дополнительных аргументов для селекторов.
Дополнительный аргумент | Комментарий | Пример употребления |
x, y, z | Координаты нашей цели (данные аргументы задают начальную точку, от которой будет вестись поиск). | /tp @p[x=0,y=0,z=0,r=1] 1 1 1 (телепортация игрока, находящегося в радиусе одного блока от координат x=0, y=0, z=0 на точку x=1, y=1, z=1). |
r | Максимальный радиус поиска нашей цели от начальной точки (если команду выполняет игрок и не указаны коррективы x и/или y и/или z, то эта точка — его координаты, а если инструкция выполняется командным блоком и дополнительные аргументы x и/или y и/или z не установлены, то начальной точкой считаются координаты командного блока). | /gamemode creative @p[r=5] (установка творческого режима игроку, находящемуся в радиусе пяти блоков от начальной точки). |
rm | Минимальный радиус поиска нашей цели. Действует по принципу «не ближе чем данное количество блоков от начальной точки». | /tell @p[rm=6] Hello! (отправка личного сообщения игроку, не находящемуся в радиусе шести блоков от стартовой точки. Можно заменить парой «аргумент=значение аргумента» r=!6, однако более подробно этот пример будет рассмотрен несколько позже). |
m | Вероятно, сокращение от английского слова «mode». Является аргументом, уточняющий игровой режим необходимого нам игрока (или необходимых игроков). | /xp 1 @a[m=0] (выдача одного очка опыта всем игрокам с игровым режимом «выживание»). |
c | Количество выбираемых целей. Преимущество получают те игроки, которые располагаются в соответствующем списке (в списке игроков, который открывается при нажатии клавиши «Tab») первыми. | /gamemode creative @a[c=10] (установка творческого режима одному десятку игроков). |
l | Максимальный количество опыта у выбираемой цели. Для указания уровней используется буква «L» после значения аргумента. | /spawnpoint @a[l=5L] 2 2 2 (установка точки сохранения на координатах x=2, y=2, z=2 для всех игроков, у которых не более пяти уровней опыта). |
lm | Минимальное количество опыта у выбранной цели. | /give @p[lm=4] minecraft:stone (выдача одного камня ближайшему игроку, имеющему в запасе не менее четырёх очков опыта). |
score_{задача} | Максимальное количество очков у нашей цели в заданной переменной. | /effect @p[score_q=31] 1 60 (выдача имеющему максимум 31 очко в статистике «q» игроку эффекта скорости на одну минуту). |
score_{задача}_min | Минимальное количество очков у нашей цели в заданной переменной. | /gamemode creative @p[score_y_min=1] (выдача творческого режима игроку, имеющему минимум 1 очко в статистике «y»). |
team | Команда, в которой должен состоять выбранный нами игрок. | /give @a[team=red] minecraft:redstone_block (выдача всем состоящим в команде «red» игрокам одного блока из красного камня). |
name | Ник нашей цели. | /clear @p[name=IW] (отчистка инвентаря игрока под ником «IW»). |
type | Тип выбранной нами сущности. Пишется с прописной буквы. | /kill @e[type=Item] (уничтожение всех выброшенных предметов). |
Великолепно! Осталось только отметить, что конструкция «@s[arg1=!1]» используется для указания
. Помните пример с дополнительным аргументом rm? Тогда я отметил, что пару «аргумент=значение аргумента» rm=6 можно заменить на r=!6. Всё дело в том, что оба варианта подразумевают отсутствие нашей цели в радиусе шести блоков от начальной точки. Только во втором случае мы стоим наше условие на отрицании противоположного, а не на прямом утверждении.