Частинки — це потужний інструмент. Вони можуть додати атмосфери красивій сцені або додати напруги в битву з босом. Нумо додаймо одну!
Реєстрація власних частинок
Ми додамо нову частинку іскор, яка імітуватиме рух частинки стрижня Енду.
Спочатку нам потрібно зареєструвати ParticleType у вашому ініціалізаторі мода, класі за допомогою вашого ID мода.
java
// This DefaultParticleType gets called when you want to use your particle in code.
public static final SimpleParticleType SPARKLE_PARTICLE = FabricParticleTypes.simple();
// Register our custom particle type in the mod initializer.
Registry.register(BuiltInRegistries.PARTICLE_TYPE, Identifier.fromNamespaceAndPath(MOD_ID, "sparkle_particle"), SPARKLE_PARTICLE);1
2
3
4
5
2
3
4
5
«sparkle_particle» малими літерами — це шлях JSON для текстури частинки. Пізніше ви створите новий файл JSON із такою назвою.
Реєстрація на стороні клієнту
Після того, як ви зареєстрували частинку в ініціалізаторі мода, вам також потрібно буде зареєструвати частинку в ініціалізаторі на стороні клієнта.
java
// For this example, we will use the end rod particle behaviour.
ParticleFactoryRegistry.getInstance().register(ExampleMod.SPARKLE_PARTICLE, EndRodParticle.Provider::new);1
2
2
В цьому прикладі ми реєструємо нашу частинку на стороні клієнта. Потім ми надаємо частинці деякий рух, використовуючи фабрику частинок стрижня Енду. Це означає, що наша частинка рухатиметься так само, як частинка стрижня Енду.
TIP
Ви можете побачити всі фабрики частинок, переглянувши всі реалізації інтерфейсу ParticleFactory. Це корисно, якщо ви хочете використовувати поведінку іншої частинки для своєї власної частинки.
- Гарячі клавіші IntelliJ: Ctrl+Alt+B
- Гарячі клавіші isual Studio Code: Ctrl+F12
Створення JSON і додання текстури
Вам потрібно буде створити 2 теки у вашій теці resources/assets/example-mod/.
| Шлях до теки | Пояснення |
|---|---|
/textures/particle | Тека particle міститиме всі текстури для всіх ваших частинок. |
/particles | Тека particles міститиме всі файли json для всіх ваших частинок. |
Для цього прикладу ми матимемо лише одну текстуру в textures/particle під назвою "sparkle_particle_texture.png".
Далі створіть новий файл JSON у particles з тим же ім’ям, що й шлях JSON, який ви використовували під час реєстрації свого ParticleType. Для цього прикладу нам потрібно буде створити sparkle_particle.json. Цей файл важливий, оскільки він дозволяє Minecraft знати, які текстури має використовувати наша частинка.
json
{
"textures": ["example-mod:sparkle_particle_texture"]
}1
2
3
2
3
TIP
Ви можете додати більше текстур до масиву textures, щоб створити анімацію частинок. Частинка буде циклічно переглядати текстури в масиві, починаючи з першої текстури.
Тестування нових частинок
Після того, як ви завершите файл JSON і збережете свою роботу, ви можете завантажити Minecraft і перевірити все!
Ви можете перевірити, чи все працює, ввівши таку команду:
mcfunction
/particle example-mod:sparkle_particle ~ ~1 ~1

INFO
За допомогою цієї команди частинка з’явиться всередині гравця. Ймовірно, вам доведеться пройти назад, щоб побачити це.
Крім того, ви також можете використовувати командний блок, щоб викликати частинку за допомогою такої ж команди.

