You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.6 KiB
Rust
53 lines
1.6 KiB
Rust
// Monologe Trees Editor
|
|
//
|
|
// Editor for creating Monologue Trees levels
|
|
//
|
|
// REFACTOR:
|
|
// * Monologue -> Event -> Active -> UI
|
|
// * Scene -> Event -> Active -> UI
|
|
// * Animation -> Event -> Active -> UI
|
|
// * Font -> Event -> Active -> UI
|
|
// * Gltf -> Event -> Active -> UI
|
|
//
|
|
// BUGS:
|
|
// * When Handle<T> is loaded, the button for TargetAsset<T> should load as well
|
|
// * Exported level should preserve active camera
|
|
// * Picking new GLTF resets audio without resetting buttons
|
|
//
|
|
// TODO:
|
|
// * edit textbox with actions
|
|
// * (brutal) export level
|
|
// * (hard) import level
|
|
// * (hard) Harden Active Camera
|
|
// * (medium) Pre-compute animation target entities
|
|
// * make min/max/close buttons into actions not selects
|
|
// * (???) Better handle hide/close monologue
|
|
|
|
use bevy::{asset::ChangeWatcher, prelude::*, utils::Duration};
|
|
use monologue_trees::{debug::*, editor::plugin::EditorPlugin, ui};
|
|
|
|
fn main() {
|
|
App::new()
|
|
.add_plugins((
|
|
DefaultPlugins
|
|
.set(WindowPlugin {
|
|
primary_window: Some(Window {
|
|
title: "Monologue Trees Editor".into(),
|
|
resolution: (640., 480.).into(),
|
|
..default()
|
|
}),
|
|
..default()
|
|
})
|
|
.set(AssetPlugin {
|
|
watch_for_changes: ChangeWatcher::with_delay(Duration::from_millis(200)),
|
|
..default()
|
|
}),
|
|
DebugInfoPlugin,
|
|
ui::GameUiPlugin {
|
|
enable_alerts: true,
|
|
},
|
|
EditorPlugin::default(),
|
|
))
|
|
.run();
|
|
}
|