bevy-playground/src/main.rs

57 lines
1.5 KiB
Rust

use bevy::audio::{AudioPlugin, SpatialScale};
use bevy::prelude::*;
mod assets;
mod camera;
mod main_menu;
mod movement;
mod player;
mod statue;
fn main() {
let mut app = App::new();
app.add_plugins(
DefaultPlugins
.set(WindowPlugin {
primary_window: Some(Window {
title: "Kodo Tag".into(),
mode: bevy::window::WindowMode::BorderlessFullscreen,
// resolution: (640. * 2., 360. * 2.).into(),
..default()
}),
..default()
})
.set(AudioPlugin {
default_spatial_scale: SpatialScale::new_2d(1.),
global_volume: GlobalVolume::new(1.),
..default()
})
.set(ImagePlugin::default_nearest()),
)
.add_plugins((
statue::Statue,
camera::CameraPlugin,
assets::AssetPlugin,
player::Player,
main_menu::MainMenu,
movement::Movement,
))
.add_systems(Update, exit_on_escape)
.insert_resource(ClearColor(Color::rgb(0.1, 0., 0.3)))
.insert_resource(AmbientLight {
color: Color::rgb(1., 1., 1.),
brightness: 1.,
});
app.run()
}
fn exit_on_escape(
keyboard_input: Res<ButtonInput<KeyCode>>,
mut app_exit_events: ResMut<Events<bevy::app::AppExit>>,
) {
if keyboard_input.pressed(KeyCode::Escape) {
app_exit_events.send(bevy::app::AppExit);
}
}