nano9 0.1.0-alpha.4

A Pico-8 compatibility layer for Bevy
Documentation
use bevy::prelude::*;
use nano9::prelude::*;

fn init(mut pico8: Pico8) {
    pico8.cls(None).unwrap();
    pico8.color(None).unwrap();
}

fn update(mut pico8: Pico8, mut x: Local<u32>) {
    let _ = pico8.pset(UVec2::new(*x, *x), None);
    *x += 1;
}

fn main() -> Result<(), ConfigError> {
    let content = include_str!("../assets/Nano9.toml");
    let mut config = Config::from_str(content)?;
    config.inject_template(None)?;
    // let config = Config::pico8();
    // let config = Config::gameboy();

    App::new()
        .add_systems(OnEnter(RunState::Init), init)
        .add_systems(Update, update.run_if(in_state(RunState::Run)));
        .add_plugins(Nano9Plugins::new(config))
        .add_systems(PreUpdate, run_pico8_when_loaded)
        .run();
}