use bevy::prelude::*;
use super::WebAssetIo;
#[derive(Default)]
pub struct WebAssetPlugin {
pub asset_plugin: AssetPlugin,
}
impl Plugin for WebAssetPlugin {
fn build(&self, app: &mut App) {
if self.asset_plugin.watch_for_changes {
warn!("bevy_web_asset currently breaks regular filesystem hot reloading, see https://github.com/johanhelsing/bevy_web_asset/issues/1");
}
let asset_io = {
let default_io = self.asset_plugin.create_platform_default_asset_io();
WebAssetIo { default_io }
};
app.insert_resource(AssetServer::new(asset_io));
let asset_plugin = AssetPlugin {
asset_folder: self.asset_plugin.asset_folder.clone(),
watch_for_changes: self.asset_plugin.watch_for_changes,
};
app.add_plugin(asset_plugin);
}
}