make trees debug menu look good enough

main
Elijah Voigt 3 months ago
parent 145008a52d
commit 2a1d7fe8c2

@ -61,8 +61,6 @@ fn main() {
.add_observer(add_dialog_option) .add_observer(add_dialog_option)
.add_observer(add_tree_monologue) .add_observer(add_tree_monologue)
.add_observer(remove_tree_monologue) .add_observer(remove_tree_monologue)
.add_observer(show_monologue_list)
.add_observer(hide_monologue_list)
.run(); .run();
} }
@ -125,7 +123,9 @@ fn init_debug_ui(mut commands: Commands) {
commands commands
.spawn(( .spawn((
Name::new("Tree Planter"), Name::new("Tree Planter"),
Text::new("+Tree"), children![
Text::new("+Tree"),
],
Node { Node {
top: Val::Px(0.0), top: Val::Px(0.0),
left: Val::Px(0.0), left: Val::Px(0.0),
@ -133,7 +133,6 @@ fn init_debug_ui(mut commands: Commands) {
min_height: Val::Px(25.0), min_height: Val::Px(25.0),
..default() ..default()
}, },
BackgroundColor(RED.into()),
DebuggingState::On, DebuggingState::On,
MonologuesContainer, MonologuesContainer,
Button, Button,
@ -143,7 +142,9 @@ fn init_debug_ui(mut commands: Commands) {
let monologue_button = commands let monologue_button = commands
.spawn(( .spawn((
Name::new("Monologue Assignment Menu"), Name::new("Monologue Assignment Menu"),
Text::new("+Monologue"), children![
Text::new("+Monologue"),
],
Node { Node {
top: Val::Px(25.0), top: Val::Px(25.0),
left: Val::Px(0.0), left: Val::Px(0.0),
@ -151,7 +152,6 @@ fn init_debug_ui(mut commands: Commands) {
min_height: Val::Px(25.0), min_height: Val::Px(25.0),
..default() ..default()
}, },
BackgroundColor(RED.into()),
DebuggingState::On, DebuggingState::On,
MonologuesContainer, MonologuesContainer,
)) ))
@ -168,7 +168,6 @@ fn init_debug_ui(mut commands: Commands) {
width: Val::Percent(80.0), width: Val::Percent(80.0),
..default() ..default()
}, },
BackgroundColor(BLACK.into()),
)) ))
.with_children(|parent| { .with_children(|parent| {
parent parent
@ -182,7 +181,6 @@ fn init_debug_ui(mut commands: Commands) {
..default() ..default()
}, },
ScrollPosition::default(), ScrollPosition::default(),
BackgroundColor(ORANGE.into()),
MonologuesList, MonologuesList,
)) ))
.observe(scroll); .observe(scroll);
@ -199,7 +197,6 @@ fn init_debug_ui(mut commands: Commands) {
width: Val::Percent(60.0), width: Val::Percent(60.0),
..default() ..default()
}, },
BackgroundColor(ORANGE_RED.into()),
)); ));
}); });
} }
@ -595,46 +592,27 @@ fn spawn_debug_buttons(
parent parent
.spawn(( .spawn((
Button, Button,
Text::new( children![
handle Text::new(
.path() handle
.unwrap() .path()
.to_string() .unwrap()
.trim_prefix("trees/") .to_string()
.trim_suffix(".mono"), .trim_prefix("trees/")
), .trim_suffix(".mono"),
TextLayout::new(JustifyText::Left, LineBreak::WordBoundary), ),
TextLayout::new(JustifyText::Left, LineBreak::WordBoundary),
],
TreeMonologue(handle.clone()), TreeMonologue(handle.clone()),
MonologuesList, MonologuesList,
BackgroundColor(PINK.into()),
)) ))
.observe(assign_monologue_event) .observe(assign_monologue_event)
.observe(preview_monologue) .observe(preview_monologue);
.observe(toggle_debug_button_color_over)
.observe(toggle_debug_button_color_out);
}); });
} }
}); });
} }
fn toggle_debug_button_color_over(
trigger: Trigger<Pointer<Over>>,
mut buttons: Query<&mut BackgroundColor, With<Button>>,
) {
if let Ok(mut bg) = buttons.get_mut(trigger.target()) {
bg.0 = RED.into();
}
}
fn toggle_debug_button_color_out(
trigger: Trigger<Pointer<Out>>,
mut buttons: Query<&mut BackgroundColor, With<Button>>,
) {
if let Ok(mut bg) = buttons.get_mut(trigger.target()) {
bg.0 = PINK.into();
}
}
fn preview_monologue( fn preview_monologue(
trigger: Trigger<Pointer<Over>>, trigger: Trigger<Pointer<Over>>,
container: Single<Entity, (With<MonologuePreview>, Without<Button>, Without<Text>)>, container: Single<Entity, (With<MonologuePreview>, Without<Button>, Without<Text>)>,
@ -671,32 +649,6 @@ fn preview_monologue(
} }
} }
fn show_monologue_list(
trigger: Trigger<Pointer<Over>>,
container: Query<Entity, With<MonologuesContainer>>,
children: Query<&Children>,
mut visibility: Query<&mut Visibility>,
) {
if let Ok(root) = container.get(trigger.target()) {
children.iter_descendants(root).for_each(|e| {
*visibility.get_mut(e).unwrap() = Visibility::Inherited;
});
}
}
fn hide_monologue_list(
trigger: Trigger<Pointer<Out>>,
container: Query<Entity, With<MonologuesContainer>>,
children: Query<&Children>,
mut visibility: Query<&mut Visibility>,
) {
if let Ok(root) = container.get(trigger.target()) {
children.iter_descendants(root).for_each(|e| {
*visibility.get_mut(e).unwrap() = Visibility::Hidden;
});
}
}
#[derive(Event)] #[derive(Event)]
struct PlantTree; struct PlantTree;

Loading…
Cancel
Save