diff --git a/examples/interrupted_lines.rs b/examples/interrupted_lines.rs new file mode 100644 index 0000000..a4ae165 --- /dev/null +++ b/examples/interrupted_lines.rs @@ -0,0 +1,27 @@ +use bevy::prelude::*; +use turtle_lib::builders::{DirectionalMovement, StopLine, Turnable}; +use turtle_lib::{get_a_turtle, TurtlePlugin}; + +use bevy::diagnostic::{FrameTimeDiagnosticsPlugin, LogDiagnosticsPlugin}; + +#[derive(Component, Reflect)] +struct Egon {} + +fn main() { + App::new() + .add_plugin(TurtlePlugin) + .add_startup_system(setup) + //.add_system(plan) + .add_plugin(LogDiagnosticsPlugin::default()) + .add_plugin(FrameTimeDiagnosticsPlugin::default()) + .run(); +} + +fn setup(mut commands: Commands) { + let mut turtle = get_a_turtle(); + turtle.set_speed(1); + + let mt = turtle.pen_up(); + + //commands.spawn((turtle, Egon {})); +} diff --git a/examples/koch.rs b/examples/koch.rs index f123ce2..d0909f2 100644 --- a/examples/koch.rs +++ b/examples/koch.rs @@ -1,12 +1,11 @@ use bevy::prelude::*; -use bevy_inspector_egui::Inspectable; use turtle_lib::builders::{DirectionalMovement, Turnable}; use turtle_lib::turtle_bundle::AnimatedTurtle; use turtle_lib::{get_a_turtle, TurtlePlugin}; use bevy::diagnostic::{FrameTimeDiagnosticsPlugin, LogDiagnosticsPlugin}; -#[derive(Component, Inspectable)] +#[derive(Component, Reflect)] struct Egon {} fn main() { diff --git a/examples/nikolaus.rs b/examples/nikolaus.rs new file mode 100644 index 0000000..4818011 --- /dev/null +++ b/examples/nikolaus.rs @@ -0,0 +1,73 @@ +use bevy::prelude::*; +use turtle_lib::builders::{DirectionalMovement, Turnable}; +use turtle_lib::turtle_bundle::AnimatedTurtle; +use turtle_lib::{get_a_turtle, TurtlePlugin}; + +use bevy::diagnostic::{FrameTimeDiagnosticsPlugin, LogDiagnosticsPlugin}; + +#[derive(Component, Reflect)] +struct Egon {} + +fn main() { + App::new() + .add_plugin(TurtlePlugin) + .add_startup_system(setup) + //.add_system(plan) + .add_plugin(LogDiagnosticsPlugin::default()) + .add_plugin(FrameTimeDiagnosticsPlugin::default()) + .run(); +} + +fn setup(mut commands: Commands) { + let mut turtle = get_a_turtle(); + turtle.set_speed(500); + stern(&mut turtle); + commands.spawn((turtle, Egon {})); +} + +fn stern(turtle: &mut AnimatedTurtle) { + // Draw the roof of the house + turtle.left(45); + turtle.forward(70); + turtle.right(90); + turtle.forward(70); + turtle.left(45); + + // Draw the sides of the house + turtle.left(90); + turtle.forward(100); + turtle.left(90); + turtle.forward(50); + turtle.left(90); + turtle.forward(100); + turtle.left(90); + turtle.forward(50); + + // Draw the door of the house + turtle.left(90); + turtle.forward(25); + turtle.right(90); + turtle.forward(20); + turtle.right(90); + turtle.forward(25); + turtle.left(90); + turtle.forward(50); + + // Draw the chimney of the house + turtle.left(90); + turtle.forward(25); + turtle.right(90); + turtle.forward(10); + turtle.right(90); + turtle.forward(25); + turtle.left(90); + turtle.forward(10); + turtle.left(90); + turtle.forward(10); + turtle.right(90); + turtle.forward(25); + turtle.left(90); + turtle.forward(10); + turtle.left(90); + turtle.forward(10); +} diff --git a/examples/stern.rs b/examples/stern.rs index 5e14ea4..87dd492 100644 --- a/examples/stern.rs +++ b/examples/stern.rs @@ -1,12 +1,11 @@ use bevy::prelude::*; -use bevy_inspector_egui::Inspectable; use turtle_lib::builders::{CurvedMovement, DirectionalMovement}; use turtle_lib::turtle_bundle::AnimatedTurtle; use turtle_lib::{get_a_turtle, TurtlePlugin}; use bevy::diagnostic::{FrameTimeDiagnosticsPlugin, LogDiagnosticsPlugin}; -#[derive(Component, Inspectable)] +#[derive(Component, Reflect)] struct Egon {} fn main() { @@ -23,6 +22,7 @@ fn setup(mut commands: Commands) { let mut turtle = get_a_turtle(); turtle.set_speed(500); stern(&mut turtle); + commands.spawn((turtle, Egon {})); } diff --git a/examples/tweening_test.rs b/examples/tweening_test.rs index 90d64dc..867454a 100644 --- a/examples/tweening_test.rs +++ b/examples/tweening_test.rs @@ -1,6 +1,6 @@ use bevy::prelude::*; -use bevy_inspector_egui::{Inspectable, InspectorPlugin}; +use bevy_inspector_egui::prelude::*; use bevy_tweening::{lens::*, *}; fn main() { @@ -17,15 +17,14 @@ fn main() { })) .add_system(bevy::window::close_on_esc) .add_plugin(TweeningPlugin) - .add_plugin(InspectorPlugin::::new()) .add_startup_system(setup) .add_system(update_animation_speed) + .register_type::() .run(); } -#[derive(Copy, Clone, PartialEq, Inspectable, Resource)] +#[derive(Copy, Clone, PartialEq, Reflect, Resource)] struct Options { - #[inspectable(min = 0.01, max = 100.)] speed: f32, }