Creare Particelle Personalizzate
Le particelle sono uno strumento potente. Possono aggiungere atmosfera ad una bella scena, o aggiungere tensione una battaglia contro il boss al cardiopalma. Aggiungiamone una!
Registrare una particella personalizzata
Aggiungeremo una nuova particella "sparkle" che mimerà il movimento di una particella di barra dell'end (End Rod).
Devi prima registrare un ParticleType
nella classe mod initializer usando il tuo mod id.
java
// This DefaultParticleType gets called when you want to use your particle in code.
public static final DefaultParticleType SPARKLE_PARTICLE = FabricParticleTypes.simple();
// Register our custom particle type in the mod initializer.
Registry.register(Registries.PARTICLE_TYPE, new Identifier(MOD_ID, "sparkle_particle"), SPARKLE_PARTICLE);
La stringa "sparkle_particle" in minuscolo è il percorso JSON per la texture della particella. Dovrai creare un nuovo file JSON con lo stesso nome dopo.
Registrazione sul Client
Dopo aver registrato la particella nell'entrypoint ModInitializer
, dovrai anche registrare la particella nell'entrypoint ClientModInitializer
.
java
// For this example, we will use the end rod particle behaviour.
ParticleFactoryRegistry.getInstance().register(FabricDocsReference.SPARKLE_PARTICLE, EndRodParticle.Factory::new);
In questo esempio, stiamo registrando la nostra particella lato client. Stiamo dando un po' di movimento alla particella usando la particle factory della barra dell'end (end rod). Questo vuol dire che la nostra particella di muoverà proprio come una particella di una end rod.
TIP
You can see all the particle factories by looking at all the implementations of the ParticleFactory
interface. This is helpful if you want to use another particle's behaviour for your own particle.
Hotkey per IntelliJ: Ctrl+Alt+B
Hotkey per Visual Studio Code's: Ctrl+F12
Creare un file JSON e aggiungere le texture
Dovrai creare 2 cartelle all'interno della cartella resources/assets/<mod id here>/
.
Percorso della Cartella | Spiegazione |
---|---|
/textures/particle | La cartella particle conterrà tutte le texture per tutte le tue particelle. |
/particles | La cartella particles conterrà tutti i file json per tutte le tue particelle. |
Per questo esempio, avremo una sola texture dentro textures/particle
chiamata "sparkle_particle_texture.png".
Dopo, crea un nuovo file JSON dentro particles
con lo stesso nome del percorso JSON che hai usato quando hai registrato il tuo ParticoeType. Per questo esempio, dovremo creare sparkle_particle.json
. Questo file è importante perché fa conoscere a Minecraft quali texture dovebbe usare la nostra particella.
json
{
"textures": [
"fabric-docs-reference:sparkle_particle_texture"
]
}
TIP
Puoi aggiungere altre texture al vettore textures
per creare un animazione per la particella. La particella scorrerà attraverso le texture nel vettore, iniziando dalla prima.
Testare la nuova particella
Una volta completato il file JSON e salvato il tuo lavoro, puoi aprire Minecraft e testare tutto!
Puoi controllare se tutto ha funzionato scrivendo il comando seguente:
/particle <mod id here>:sparkle_particle ~ ~1 ~
INFO
La particlella comparirà all'interno del giocatore con questo comando. Probabilmente dovrai camminare all'indietro per vederla effettivamente.
Puoi anche usare un command block per far apparire la particella usando lo stesso comando.