Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Стартап [ПЕРЕВОД] Цветные частицы

Dexel

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
SiRiuS_OSiRiuS
Самая прямая ссылка на страницу с оригинальным текстом (EN)

Существует три вида частиц, которым можно менять цвета. Тем не менее, это работает не так очевидно.

Частицы REDSTONE, SPELL_MOB и SPELL_MOB_AMBIENT имеют настраиваемые цвета, если предоставлять одну специальную информацию во время их спавна.

Вам нужно будет использовать метод Player.spawnParticle, который берёт максимальный набор параметров. В частности, вам нужно будет изменять смещение X,Y,Z, чтобы контролировать цвет, "extra" для яркости и "count", чтобы переключить изменение цвета.

Что эти параметры делают в этом случае:
  • count: Должен быть установлен на 0, это активирует цветные частицы. Обратите внимание, что это значит, что вы не можете спавнить более одной цветной частицы за раз (за один вызов/пакет)
  • extra: Контролирует яркость цвета частицы, вероятно, вам нужно установить это на 1
  • offsetX: Вставьте сюда значение от 0 до 1, чтобы контролировать красный компонент цвета частицы
  • offsetY: Вставьте сюда значение от 0 до 1, чтобы контролировать зелёный компонент цвета частицы
  • offsetZ: Вставьте сюда значение от 0 до 1, чтобы контролировать синий компонент цвета частицы
Таким образом, чтобы заспавнить зелёную частицу редстоуна, вам нужно совершить такой вызов:
Java:
player.spawnParticle(Particle.REDSTONE, x, y, z, 0, 0.001, 1, 0, 1);
Вы могли заметить, что красный компонент не установлен на 0. Это нюанс клиентов, если красный компонент установлен на 0, частица всегда будет рендериться красной (Натурально...)

Это касается только частицы REDSTONE. Если вы хотите, чтобы красный вообще отсутствовал в вашей частице, вы можете использовать Float.MIN_VALUE, и частица будет отображаться без красного компонента.
 
Йоооо, что это? Лол, ни разу не слышал про это, хотя не удивительно, метод новый вроде как, с 1.12. Отличная штука, мерси боку!
Правда не обязательно брать именно player.spawnParticle, можно и через Location, главное активировать цвет и настроить его
 
Некоторое дополнение: FALLING_DUST так же может воспроизводить различные цвета, но принцип другой. В данном случае количество цветов ограничено, но наврядли понадобятся какие-нибудь ещё дополнительные к этим цвета.
Частица приобретает цвет, который указан в extra, менять количество, разброс и скорость можно как угодно. Цвет зависит от дополнительного значения, который является MaterialData.
Пример спавна красной частицы:
Java:
spawnParticle(Particle.FALLING_DUST, loc, count, 0.01, 0.01, 0.01, speed, new MaterialData(Material.LAVA));
 
Йоооо, что это? Лол, ни разу не слышал про это, хотя не удивительно, метод новый вроде как, с 1.12. Отличная штука, мерси боку!
Правда не обязательно брать именно player.spawnParticle, можно и через Location, главное активировать цвет и настроить его
Оригинальная статья была написана 20 апреля 2017. Вроде бы тогда 1.12 ещё не вышел.
 

Поделиться этой страницей

Назад
Верх