Голосования
Каким лаунчером Вы пользуетесь?
   Результаты
Архивы голосований
Идет загрузка…

Идет загрузка…

Minecraft - что такое указатели и селекторы в командах (@a, @p ...)

Дата публикации Просмотров Просмотров: 39348 Комментарии Комментарии: 0
Категории Интересное, Советы начинающим, Гайды, Главная
Метка

В Minecraft существуют команды, где нужно вводить цель (имя игрока или сущности), например когда мы хотим выдать какому-то игроку предмет или определенному мобу какой то эффект от зелья, либо всем сущностям поблизости. В Minecraft есть такой механизм и он предоставляет нам большие возможности, для указания какой то конкретной цели. Это может пригодиться вам, например, когда вы делаете какую-то карту, либо при администрирования сервера или же просто для развлечения)

Указатели

Итак, давайте рассмотрим виды целей, которые вы можете ввести:

@p Ближайший игрок
@r Случайный игрок
@e Все сущности (игроки, мобы, предметы и т.д)
@a Все игроки
@s Исполнитель команды (т.е игрок, который ввел команду). Если исполнитель — не сущность, а, например, командный блок, то селектор ничего не найдёт.

Указатели (примеры)

Чтобы было понятно, как использовать указатели, давайте я приведу вам несколько примеров.

  1. Выдаем всем игрокам режим игры creative
  2. /gamemode creative @a

    Видим, что здесь вместо указания конкретного игрока мы указали @a, что по таблице выше означает всех игроков, таким образом мы выдали креатив всем игрокам на сервере.

  3. Установим всем сущностям эффект левитации на 10 секунд
  4. /effect give @e minecraft:levitation 10

    По таблице выше указатель @e, означает выбор всех существ, таким образом мы всем игрокам (себе в том числе), мобам эффект левитации на 10 секунд.

  5. Выдадим себе 5 печенек
  6. /give @s minecraft:cookie 5

    Указатель @s позволяет нам выдать самому себе предметы, и это будет работать вне зависимости от вашего никнейма.

Селекторы в Minecraft

Сами по себе указатели без селекторов не настолько сильные, сколько указатели в купе с селекторами, и сейчас вы узнаете, почему. С помощью селектора @e и селектора @a, вы уже знаете что нам доступен набор всех существ и всех игроков. Но что если мы хотим выбрать не всех игроков, а только 5? Здесь нам помогут селекторы. С их помощью мы можем написать @a[limit=5], и этот селектор позволит нам ограничиться только 5-ю игроками. Давайте рассмотрим полный список селекторов.

x Координата X, с которой производится поиск сущностей (по умолчанию - координата исполнителя или позиция командного блока или 0 если выполнена с объекта не в мире.
y Координата Y, с которой производится поиск сущностей.
z Координата Z, с которой производится поиск сущностей.
dx Координата X объекта в мире.
dy Координата Y объекта в мире.
dz Координата Z объекта в мире.
distance‌ Указывает максимальный радиус поиска от координат исполнителя
team Выбирает игроков, входящих в определенную команду (у игрока должна быть указана команда)
name Выбирает по нику игрока или названию сущности
type Тип сущности, конкретный ID, например minecraft:arrow - стрела
tag Наличие или отсутствие определенного тега у сущности
family‌ Принадлежность сущности, например это предмет или моб, монстр.
sort Сортировка (есть 4 вида сортировки): arbitrary - по времени создания сущности, random - случайная сортировка, nearest - самые ближайшие сущности, furthest - самые дальние сущности
predicate‌ Выборка по информации о предмете, в формате JSON
advancements‌ Выборка по наличию и отсутствию достижений
nbt‌ NBT теги
x_rotation‌ Поворот сущности вертикальный (в градусах)
y_rotation‌ Поворот сущности горизонтальный (в градусах)

Селекторы (примеры)

  1. Выберем 5 случайных игроков, находящихся в радиусе 100 блоков и выдадим им по алмазу
  2. /give @a[limit=5,sort=random,distance‌=100] minecraft:diamond

    Здесь мы видим, что можно указывать сразу несколько селекторов, таким образом мы можем комбинировать их.

  3. Убъем всю нечисть на карте (монстров)
  4. /kill @e[family!=undead]

    Здесь мы видим, что вместо равенства мы можем использовать отрицание, таким образом undead обозначает живых мобов, а мы выбираем всех неживиых сущностей

  5. Телепортируем всех коров, повернутых на угол от 30 до 90 градусов к нам
  6. /tp @e[type=cow,x_rotation=30..90] ~ ~ ~

    Две точки между двумя числами означают диапозон значений и с помощью него мы можем выбрать, как показано в примере, угол поворота или какую-то квадратную область, если зададим селектор [dx=-5..5,dy=-5..5,dz=-5..5],

Заключение

Мы рассмотрели указатели в Minecraft и некоторые примеры команд с указателями, и поняли что для них существуют селекторы (парамерты), и также некоторые примеры команд с ними.

А синтаксис указателя выглядит вот так:

@<вид_цели>[<параметр>=<значение>,<параметр>=<значение>,…].

Параметры добавляются после вида цели (указателя) в квадратных скобках и разделяются запятыми и мы должны также понимать что синтаксис всех указателей и их значения чувствительны к регистру.

Спасибо за внимание, надеюсь это было вам полезно!

Комментарии к данной записи:



Вы сможете оставить комментарий анонимно. Укажите своё имя в форму выше и введите только нижние символы проверочного кода.

     

  

Введите только нижние символы проверочного кода.


(обязательно)

Навигационное меню

Просто выберите нужный раздел, и кликайте по ссылкам, чтобы перейти на нужную страницу. Чтобы закрыть это окно, нажми на крестик справа, либо сюда.

Вспомогательные моды

OptiFine HD Forge(клиент,сервер) Animation API Tesla Aroma1997Core Baubles Player API Render Player Api Immibi's Core iChun Util

Лаунчеры

Tlauncher Randomcraft launcher