#bevy-plugin #message #game #engine #game-plugin #bevy

bevy_write_after

Bevy plugin to send messages after delay

1 unstable release

Uses new Rust 2024

0.17.0 Oct 30, 2025

#1116 in Game dev

CC0 license

39KB
92 lines

Bevy plugin to send messages after delay.

Example

use bevy::prelude::*;
use bevy_write_after::{MessagePool, WriteAfterPlugin};

#[derive(Message)]
struct MyMessage;

fn my_main() {
    App::new()
        .add_message::<MyMessage>()
        .add_plugins(WriteAfterPlugin)
        .add_systems(Startup, setup)
        .add_systems(Startup, some_system)
        .add_systems(Update, on_my_message.run_if(on_message::<MyMessage>));
}

fn setup(mut commands: Commands) {
    commands.spawn(MessagePool::default());
}

fn some_system(mut pool: Single<&mut MessagePool>) {
    pool.write_after(MyMessage, 1.0);
}

fn on_my_message() {
    println!("received my message");
}

Dependencies

~21–34MB
~557K SLoC