Sonolus Wiki

19. 粒子效果

在本章中,我们将为音符添加粒子效果。

粒子效果

就像皮肤精灵图一样,我们需要通过引用它们的名称来声明我们想要访问哪些粒子效果:

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

音符

要给判定添加粒子效果,我们可以直接调用粒子效果的spawn

假设我们希望粒子效果是音符大小的两倍,持续 0.3 秒,并且不循环:

export class Note extends Archetype {
    // ...
    touch() {
        // ...

        for (const touch of touches) {
            // ...

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

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

            // ...
        }
    }

    // ...
}
export class Note extends Archetype {
    // ...
    touch() {
        // ...

        for (const touch of touches) {
            // ...

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

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

            // ...
        }
    }

    // ...
}