Эффекты экипировки
Используя мод-дополнение ArmorSetEffect, вы можете добавить экипировке специальные эффекты.
Сначала необходимо импортировать группы мода:
import mods.seteffect.ArmorSetEffect;
Затем создается новый эффект для экипировки (в примере iron_set
). Потом перечисляются элементы брони с указанием слотов, в которых они должны находиться: .inSlot(slot, item)
После устанавливаются дополнительные параметры, по типу:
addParticle(particles, particle_options)
– добавляет частицы при ношении брони..setIgnoreNBT()
– для игнорирования NBT,.requireGamestages("saudade")
– для учета эры при наличии мода Game Stages,.setPackmode("saudade_mode")
– для учета режима при наличии мода PackMode..applyFlight(true/false)
– для установки возможности летать при надетой броне.
И теперь самое главное – эффекты:
.addEffect(effect.newInstance(time, level).hideParticles())
– устанавливает эффект, накладываемый при ношении брони;.addImmunity(effect)
– дает иммунитет к эффекту при ношении брони;.addAttackerEffect(effect:minecraft:poison.newInstance(time, level))
– накладывает эффект на атакующее существо.
где slot – слот, item – предмет экипировки, effect – эффект, time – длительность эффекта в тиках (1 секунда = 20 тиков) level – уровень эффекта, particles – вид частиц, particle_options – настройки частиц.
Пример для железной брони
Устанавливает эффект скорости без частиц
Добавляет иммунитет от слепоты
Накладывает эффект отравления на атакующих врагов
Добавляет частицы злых жителей при надетой брони
import mods.seteffect.ArmorSetEffect;
val iron_set = new ArmorSetEffect("iron_set")
.inSlot(<equipmentslottype:head>, <item:minecraft:iron_helmet>)
.inSlot(<equipmentslottype:chest>, <item:minecraft:iron_chestplate>)
.inSlot(<equipmentslottype:legs>, <item:minecraft:iron_leggings>)
.inSlot(<equipmentslottype:feet>, <item:minecraft:iron_boots>)
.setIgnoreNBT()
.addEffect(<effect:minecraft:speed>.newInstance(100, 5).hideParticles())
.addImmunity(<effect:minecraft:blindness>)
.addAttackerEffect(<effect:minecraft:poison>.newInstance(60, 1))
.addParticle("minecraft:angry_villager", 1.0f, 1.0f, 1.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, -5.0f, -5.0f, -5.0f, 2.0f, 0.3f, 2);
iron_set.register();
Last updated