Skip to content
Snippets Groups Projects
main.rs 1005 B
Newer Older
use bevy::asset::AssetServer;
use bevy::prelude::{App, Commands, PluginGroup, Res, Transform, Window, WindowPlugin};
use bevy::sprite::SpriteBundle;
Louis's avatar
Louis committed
use bevy::window::{WindowMode, WindowResolution};
use bevy::DefaultPlugins;
use shoot_the_revival::system::window_bounds;
Louis's avatar
Louis committed

fn spawn_ship(mut commands: Commands, assets: Res<AssetServer>) {
	let bounds = window_bounds();

	commands.spawn(SpriteBundle {
		texture: assets.load("sprites/ship.png"),
		transform: Transform::from_translation(bounds.half_size().extend(0.0)),
		..Default::default()
	});
}

Louis's avatar
Louis committed
fn main() {
Louis's avatar
Louis committed
	App::new()
		.add_plugins(DefaultPlugins.set(WindowPlugin {
			primary_window: Some(Window {
				mode: WindowMode::Windowed,
				title: String::from("Shoot: The Revival"),
				resizable: true,
				resolution: WindowResolution::new(1280.0, 800.0),
				fit_canvas_to_parent: true,
				..Default::default()
			}),
			..Default::default()
		}))
		.add_plugin(shoot_the_revival::system::SystemPlugin)
		.add_startup_system(spawn_ship)
Louis's avatar
Louis committed
		.run();
Louis's avatar
Louis committed
}