~starkingdoms/starkingdoms

ref: a2ff8f1ebb1deb91542e24cb73a025ef85253390 starkingdoms/crates/unified/src/particle_editor/hooks.rs -rw-r--r-- 539 bytes
a2ff8f1e — core feat: drag 5 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use bevy::prelude::*;

use crate::{particle_editor::ecs::SpawnDelayTimer, particles::ParticleEffect};

pub fn hooks_plugin(app: &mut App) {
    app.add_systems(Update, init_particle_effect);
}

fn init_particle_effect(
    mut commands: Commands,
    particle_effect: Query<(Entity, &ParticleEffect), Added<ParticleEffect>>,
) {
    for (entity, effect) in particle_effect {
        commands.get_entity(entity).unwrap().insert(
            SpawnDelayTimer::new(effect.batch_spawn_delay_seconds.sample(&mut rand::rng()))
        );
    }
}