optional app arguments

- allows to pass any arguments to plugins
This commit is contained in:
Dmitry Stepanov
2024-06-07 22:38:02 +03:00
parent 25334b8eab
commit de9b5001f5
3 changed files with 6 additions and 15 deletions
Generated
-1
View File
@@ -2,6 +2,5 @@
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$/project-manager/MyProject" vcs="Git" />
</component>
</project>
+5 -13
View File
@@ -23,11 +23,11 @@ use std::{
sync::Arc,
};
#[derive(Parser, Debug)]
#[derive(Parser, Debug, Default)]
#[clap(author, version, about, long_about = None)]
struct Args {
#[clap(short, long, default_value = "")]
override_scene: String,
#[clap(short, long, default_value = None)]
override_scene: Option<String>,
}
/// Executor is a small wrapper that manages plugins and scripts for your game.
@@ -140,17 +140,9 @@ impl Executor {
let event_loop = self.event_loop;
let headless = self.headless;
let args = Args::parse();
let args = Args::try_parse().unwrap_or_default();
engine.enable_plugins(
if args.override_scene.is_empty() {
None
} else {
Some(&args.override_scene)
},
true,
Some(&event_loop),
);
engine.enable_plugins(args.override_scene.as_deref(), true, Some(&event_loop));
let mut previous = Instant::now();
let fixed_time_step = 1.0 / self.desired_update_rate;
+1 -1
View File
@@ -253,7 +253,7 @@ impl ProjectWizard {
self.vcs.as_str(),
true,
);
let mut manifest_path = self
let manifest_path = self
.path
.join(&self.name)
.join("Cargo.toml")