text_editor/
text-editor.rs1use mittens_engine::{engine, engine::ecs::SignalEmitter, scripting, utils};
2
3fn main() {
4 mittens_engine::example_support::ensure_model_assets();
5 utils::logger::init();
6
7 let output = scripting::MeowMeowRunner::eval(include_str!("text-editor.mms"));
8
9 for error in &output.errors {
10 eprintln!("[mms] {error}");
11 }
12 println!(
13 "[mms] {} intent(s) from text-editor.mms",
14 output.intents.len()
15 );
16
17 if !output.errors.is_empty() {
18 std::process::exit(1);
19 }
20
21 let world = engine::ecs::World::default();
22 let mut universe = engine::Universe::new(world);
23
24 let scope = engine::ecs::ComponentId::default();
25 for intent in output.intents {
26 universe.command_queue.push_intent_now(scope, intent);
27 }
28
29 universe.systems.process_commands(
30 &mut universe.world,
31 &mut universe.visuals,
32 &mut universe.render_assets,
33 &mut universe.command_queue,
34 );
35
36 universe.enable_repl();
37 engine::Windowing::run_app(universe).expect("Windowing failed");
38}