bevy_intro_screen 0.1.2

Highly customizable introductio n(splash) screen library for Bevy games
# bevy_intro_screen

This is a versatile Bevy library designed to create engaging and customizable introductory screens for your game. Initially conceived for splash screens, its flexibility allows for adaptation as loading screens between game states.

### Features

* **Customizable:** Tailor the appearance and behavior of your intro screen to perfectly match your game's style.
* **Flexible Duration:** Control the display time of your intro screen, whether fixed or dynamic based on loading progress.
* **Robust Failure Handling:** Implement custom error management for unexpected situations.
* **Extensible:** Easily add custom components and systems to expand functionality.

## Getting Started

1. Add the dependency to your `Cargo.toml`:
```rust
[dependencies]
bevy_intro_screen = "0.1.0" 
```

2. Import the necessary stuff:
```rust,ignore
use bevy::prelude::*;
use bevy_intro_screen::prelude::*;

fn main() {
    let run_at = ..;
    let transition_to = ..;
    // Included options include using egui;
    let ui = ..;
    let preferences = IntroPreferences::builder()
        .run_at(run_at)
        .transition_to(transition_to)
        .skip_on_input(true)
        .duration(FixedDuration::new(transition_to))
        .ui(ui)
        .build();

    let splash_plugin = IntroScreenPlugin::builder()
        .preferences(preferences)
        .failure_manager(OnFailureContinue)
        .build();

    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(splash_plugin)
        .run()
}
```

Please note that the examples provided here are simplified and serve as a starting point. For comprehensive documentation of the crate, please visit the [crate documentation](https://docs.rs/bevy_intro_screen) for a better understanding of the crate's functionalities and APIs.

For more examples, please refer to the examples directory.

## Usage Beyond Intro Screens

While primarily designed for splash screens, this library can be adapted to function as a loading screen between game states

## Contributing

Contributions are welcome! Feel free to open issues or pull requests.