1use::bevy_dynamic_bundle::prelude::*;
2use::bevy::prelude::*;
3
4#[derive(Component, Clone)]
5struct Spawner(DynamicBundel);
6
7#[derive(Component, Clone)]
8struct ComponentA(i32);
9
10fn main() {
11 App::new().add_systems(Startup, (setup, spawn, query).chain()).run();
12}
13
14fn setup(mut commands: Commands) {
15 let dyn_bundle = DynamicBundel::new(ComponentA(2));
16
17 commands.spawn(Spawner(dyn_bundle));
18
19
20}
21
22fn spawn(mut commands: Commands, spawner_q: Query<&Spawner>) {
23 let spawner = spawner_q.get_single().unwrap();
24 commands.dyn_spawn(spawner.0.clone());
25}
26
27fn query(components: Query<&ComponentA>) {
28 assert_eq!(2 ,components.get_single().unwrap().0);
29}