Godot.Console
1.2.0
See the version list below for details.
dotnet add package Godot.Console --version 1.2.0
NuGet\Install-Package Godot.Console -Version 1.2.0
<PackageReference Include="Godot.Console" Version="1.2.0" />
paket add Godot.Console --version 1.2.0
#r "nuget: Godot.Console, 1.2.0"
// Install Godot.Console as a Cake Addin #addin nuget:?package=Godot.Console&version=1.2.0 // Install Godot.Console as a Cake Tool #tool nuget:?package=Godot.Console&version=1.2.0
GodotConsole
.C# console backend for Godot. This console supports tying functions to console commands and also tracking of console variables. This is intended to work with the .NET version of Godot (C#). Just drop the code in with your main project (or grab the nuget package) and you can start building a console and commands right away. See below for usage examples.
Repository
The main branch [origin/main] will be kept in line with the latest release of Godot. Currently it is syncing with the latest Godot 4 beta. There is a release for the Godot 3.5.x line.
Usage
Set up an in-memory logger for the console. Here we will use a BBTextTarget so custom formatting can be included when displaying in the UI.
// set up a log target for the console
var consoleLogTarget = new BBTextTarget("UIConsoleLog");
// Create a configuration for the logger and register the target
LogConfiguration config = new LogConfiguration();
config.RegisterTarget(consoleTarget);
// Set the configuration
GodotLogger.SetConfiguration(config);
// pass the log target to the console
GodotConsole.SetLogTarget(consoleLogTarget);
Register a custom console command.
GodotConsole.RegisterCommand("exit", (cmd, args) => GetTree().Quit());
Track a console variable.
GodotConsole.RegisterVariable<bool>("fullscreen", false, (cmd, args) => OnFullScreenCommand(cmd, args));
public void OnFullScreenCommand(ConsoleCommand command, object[] args)
{
bool val = (bool)(command as IConsoleVariable).GetValue();
OS.WindowFullscreen = val;
}
Get the contents of the log which could then be displayed in the UI, for example.
richTextLabel.Text = GodotConsole.GetText();
Pass user entered text (for the UI console, for example) to the console backend for processing.
string cmdLineText = consoleInputLineEdit.Text;
GodotConsole.ParseCommand(cmdLineText);
Parse the command line into console-tracked variables.
// register some variables that can be accessed from the command line (i.e --connect or --ip 127.0.0.1)
GodotConsole.RegisterVariable("connect", false);
GodotConsole.RegisterVariable("ip", "127.0.0.1");
// map the command line to registered variables
GodotConsole.MapCommandLineVars();
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
- Godot.Logging (>= 1.1.1)
- Godot.SourceGenerators (>= 4.0.2)
- GodotSharp (>= 4.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.