DEVELOPMENT ENVIRONMENT

~liljamo/deck-builder

ref: ebf6371e4a5ebab4bcce10d80f17962347b67b5e deck-builder/client/src/plugins/menu/ui/menu.rs -rw-r--r-- 1.1 KiB
ebf6371eJonni Liljamo feat(shared): add a channel and messages for generic data requests 1 year, 9 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
 * This file is part of laurelin/client
 * Copyright (C) 2023 Jonni Liljamo <jonni@liljamo.com>
 *
 * Licensed under GPL-3.0-only.
 * See LICENSE for licensing information.
 */

use bevy::prelude::*;
use bevy_egui::{egui, EguiContexts};

use crate::{plugins::menu::MenuState, util::egui::menuwindow, GracefulExit};

pub fn ui(
    mut commands: Commands,
    mut egui_contexts: EguiContexts,
    mut exit_events: EventWriter<GracefulExit>,
) {
    menuwindow(
        egui_contexts.ctx_mut(),
        "Laurelin",
        &egui::Vec2::new(400., 600.),
        |ui| {
            ui.vertical_centered(|ui| {
                if ui.button("Play").clicked() {
                    commands.insert_resource(NextState(Some(MenuState::Play)));
                }

                if ui.button("Account").clicked() {
                    //
                }

                if ui.button("Settings").clicked() {
                    commands.insert_resource(NextState(Some(MenuState::Settings)));
                }

                if ui.button("Quit").clicked() {
                    exit_events.send(GracefulExit);
                }
            });
        },
    );
}