Initial Void Bastion 0.20 prototype

This commit is contained in:
Emporex committed 2026-10-03 21:28:56 +02:00
commit 7362ca0f02
251 files changed
+29688

No files matched your search

@@ -0,0 +1,31 @@
# Custom Logger that forwards every captured message to the game bridge's
# log buffer. Has to live in its own top-level file — nested classes don't
# reliably register Logger's virtual overrides (_log_error / _log_message).
extends Logger
var _bridge: Node
func _init(bridge: Node) -> void:
_bridge = bridge
func _log_error(function: String, file: String, line: int, code: String, rationale: String, editor_notify: bool, error_type: int, script_backtraces: Array) -> void:
# error_type is Logger.ErrorType: 0=ERROR, 1=WARNING, 2=SCRIPT, 3=SHADER.
var level: String
match error_type:
1: level = "WARNING"
2: level = "SCRIPT"
3: level = "SHADER"
_: level = "ERROR"
var msg: String = rationale if rationale != "" else code
if file != "" and line > 0:
msg += " (at %s:%d in %s)" % [file, line, function]
if _bridge and _bridge.has_method("log_entry"):
_bridge.log_entry(level, msg)
func _log_message(message: String, error: bool) -> void:
if _bridge and _bridge.has_method("log_entry"):
_bridge.log_entry("ERROR" if error else "INFO", message.strip_edges())