Compare commits
2 Commits
6705870f81
...
3fe46fd116
Author | SHA1 | Date | |
---|---|---|---|
3fe46fd116
|
|||
bc5eb9b006
|
17
src/main.rs
17
src/main.rs
@ -1,12 +1,21 @@
|
||||
mod components;
|
||||
mod plugins;
|
||||
mod resources;
|
||||
mod systems;
|
||||
|
||||
use bevy::prelude::*;
|
||||
use systems::*;
|
||||
mod prelude {
|
||||
pub use crate::components::*;
|
||||
pub use crate::plugins::*;
|
||||
pub use crate::resources::*;
|
||||
pub use crate::systems::*;
|
||||
pub use bevy::prelude::*;
|
||||
}
|
||||
|
||||
use prelude::*;
|
||||
|
||||
fn main() {
|
||||
App::build()
|
||||
.add_startup_system(add_player.system())
|
||||
.add_system(greet_player.system())
|
||||
.add_plugins(DefaultPlugins)
|
||||
.add_plugin(PlayerPlugin)
|
||||
.run();
|
||||
}
|
||||
|
11
src/plugins/mod.rs
Normal file
11
src/plugins/mod.rs
Normal file
@ -0,0 +1,11 @@
|
||||
use crate::prelude::*;
|
||||
|
||||
pub struct PlayerPlugin;
|
||||
|
||||
impl Plugin for PlayerPlugin {
|
||||
fn build(&self, app: &mut AppBuilder) {
|
||||
app.insert_resource(GreetTimer(Timer::from_seconds(2.0, true)))
|
||||
.add_startup_system(add_player.system())
|
||||
.add_system(greet_player.system());
|
||||
}
|
||||
}
|
3
src/resources/mod.rs
Normal file
3
src/resources/mod.rs
Normal file
@ -0,0 +1,3 @@
|
||||
use crate::prelude::*;
|
||||
|
||||
pub struct GreetTimer(pub Timer);
|
@ -1,5 +1,4 @@
|
||||
use crate::components::{Name, Player};
|
||||
use bevy::prelude::*;
|
||||
use crate::prelude::*;
|
||||
|
||||
pub fn add_player(mut commands: Commands) {
|
||||
commands
|
||||
@ -8,8 +7,14 @@ pub fn add_player(mut commands: Commands) {
|
||||
.insert(Name("Player 1".to_string()));
|
||||
}
|
||||
|
||||
pub fn greet_player(query: Query<&Name, With<Player>>) {
|
||||
for name in query.iter() {
|
||||
println!("Hello, {}!", name.0);
|
||||
pub fn greet_player(
|
||||
query: Query<&Name, With<Player>>,
|
||||
time: Res<Time>,
|
||||
mut timer: ResMut<GreetTimer>,
|
||||
) {
|
||||
if timer.0.tick(time.delta()).just_finished() {
|
||||
for name in query.iter() {
|
||||
println!("Hello, {}!", name.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user