Skip to content

09 Efeito de Partícula

Neste capítulo, adicionaremos efeito de partícula ao Note.

Declarando

Como antes, declare o efeito de partícula a ser usado:

TypeScript
export const particle = defineParticle({
    effects: {
        note: ParticleEffectName.NoteCircularTapCyan,
    },
})
JavaScript
export const particle = defineParticle({
    effects: {
        note: ParticleEffectName.NoteCircularTapCyan,
    },
})

Jogando

Diferentemente do modo de reprodução, em que reproduzimos o efeito de partículas de forma reativa quando o jogador toca na nota, no modo de observação reproduzimos o efeito de partículas quando a nota desaparece.

No entanto, a nota pode desaparecer devido ao salto de tempo, e nesse caso não queremos que o efeito de partícula seja reproduzido. Podemos verificar time.skip e retorno antecipado.

TypeScript
export class Note extends Archetype {
    // ...

    terminate() {
        if (time.skip) return

        const layout = Rect.one
            .mul(2 * note.radius)
            .scale(1, -1)
            .translate(0, 1)

        particle.effects.note.spawn(layout, 0.3, false)
    }
}
JavaScript
export class Note extends Archetype {
    // ...

    terminate() {
        if (time.skip) return

        const layout = Rect.one
            .mul(2 * note.radius)
            .scale(1, -1)
            .translate(0, 1)

        particle.effects.note.spawn(layout, 0.3, false)
    }
}