Итак, некоторые команды в Minecraft, могут использовать в качестве селектора игрока его
ник. Например, если я выполню в чате команду
/gamemode creative ArtemkaFomin, я установлю себе творческий режим игры. В данном случае, для того, чтобы интерпретатор смог понять, кому надо изменить режим игры, я указал непосредственно свой ник. Однако, такой подход не всегда удобен, а иногда вовсе не допустим, поскольку мы не всегда можем
заранее знать, кто будет играть на нашей карте. Для таких целей были созданы
селекторы, которые смогут сами выбирать игрока
по определённым параметрам. Давайте их рассмотрим.
Базовые селекторы:
@p - Ближайший игрок.
@a - Все игроки.
@r - Случайный игрок.
@e - Сущности. Например, стрелы, снежки и свиньи.
Естественно, чаще всего нам надо выбирать не просто всех игроков, а например, игрока с определённым игровом режиме. Для этого существуют специальные
аргументы, которые используются вместе с базовыми селекторами.
Синтаксис добавления аргументов:
/tell @p[arg1=4,arg2=9]Отлично! Теперь давайте попробуем разобрать все возможные аргументы.
Аргументы x, y, z: Отвечают за то, на каких координатах будет искаться игрок. По-умолчанию поиск ведётся на всех координатах, а при определённых условиях - от командного блока.
Аргумент r: Отвечает за радиус поиска игрока. Поиск ведётся от командного блока, если не указаны аргументы x, y и z. Если они указаны - поиск ведётся от них.
Аргумент rm: Производит поиск по минимальному радиусу. Имеется ввиду поиск игрока по условию "Не ближе чем rm блоков от стартовой точки".
Аргумент m: Отвечает за игровой режим игрока, которого мы ищем. Используется крайне редко. Может принимать значения 0 (Режим выживания), 1 (Творческий режим) или 2 (Приключенческий режим).
Аргумент c: Отвечает за количество игроков. Например, конструкция @a[c=1] выберет всего одного игрока, не смотря на то, что базовый параметр выбран @a - все игроки.
Аргумент l: Отвечает за максимальный уровень выбираемого игрока. Учтите: Конструкция @a[l=15] будет искать людей с 15 и менее очками опыта, а @a[l=15L] с 15 и менее уровнями.
Аргумент lm: Отвечает за минимальный уровень выбираемого игрока. Учтите: Конструкция @a[lm=15] будет искать людей с 15 и более очками опыта, а @a[lm=15L] с 15 и более уровнями.
Аргумент score_{имяСтатистики}=X: Отвечает за поиск игроков с X очков в выбранной статистике.
Аргумент score_{имяСтатистики}_min=X: Отвечает за поиск игроков с X и большим количеством очков в выбранной статистике.
Аргумент team: Отвечает за поиск игроков в определённой команде.
Аргумент name: Отвечает за поиск игрока с определённым ником.
Если перед значением аргумента указать "
!" (Например: @a[name=!name]), то будет производиться поиск игроков
не соответствующих параметрам.