Crate bevy_console
source · [−]Expand description
bevy_console
A simple half-life inspired console with support for argument parsing.
Usage
Add ConsolePlugin
and optionally the resource ConsoleConfiguration
.
use bevy::prelude::*;
use bevy_console::{ConsoleConfiguration, ConsolePlugin};
fn main() {
App::new()
.add_plugin(ConsolePlugin)
.insert_resource(ConsoleConfiguration {
// override config here
..Default::default()
});
}
Create a console command struct and system and add it to your app with .add_console_command
.
Add doc comments to your command to provide help information in the console.
use bevy::prelude::*;
use bevy_console::{reply, AddConsoleCommand, ConsoleCommand, ConsolePlugin};
fn main() {
App::new()
.add_plugin(ConsolePlugin)
.add_console_command::<ExampleCommand, _, _>(example_command);
}
/// Example command
#[derive(ConsoleCommand)]
#[console_command(name = "example")]
struct ExampleCommand {
/// Some message
msg: String,
}
fn example_command(mut log: ConsoleCommand<ExampleCommand>) {
if let Some(ExampleCommand { msg }) = log.take() {
// handle command
}
}
Examples can be found in the /examples directory.
cargo run --example log_command
wasm
Should work in wasm, but you need to disable default features.
Macros
Reply with the format!
syntax followed by [failed]
.
Structs
Command argument information.
Command information.
Executed parsed console command.
Parsed raw console command into command
and args
.
Console configuration
Console open state
Console plugin.
Events to print to the console.
Enums
Error when trying to parse values.
Key for toggling the console.
The value types available for arguments.
Traits
Add a console commands to Bevy app.
Parse arguments from values.
Provides command usage information including description, arguments and their types.
Console command name.
Parse from argument value.
Derive Macros
Implement
CommandName
,
CommandArgs
and
CommandHelp
for a struct.