1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
use bones_bevy_renderer::BonesBevyRenderer;
use bones_framework::prelude::*;

fn main() {
    // Setup logging
    setup_logs!();

    // First create bones game.
    let mut game = Game::new();

    // Create a new session for the game menu. Each session is it's own bones world with it's own
    // plugins, systems, and entities.
    game.sessions
        .create_with("menu", |session: &mut SessionBuilder| {
            session
                // Install the default bones_framework plugin for this session
                .install_plugin(DefaultSessionPlugin)
                // Add our menu system to the update stage
                .add_system_to_stage(Update, menu_system);
        });

    BonesBevyRenderer::new(game).app().run();
}

/// System to render the home menu.
fn menu_system(ctx: Res<EguiCtx>) {
    egui::CentralPanel::default().show(&ctx, |ui| {
        ui.label("Hello World");
    });
}