Skip to content

Instantly share code, notes, and snippets.

@Shilo
Last active March 10, 2024 08:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Shilo/9e21b5fd09f974c5540d8322fe55f17e to your computer and use it in GitHub Desktop.
Save Shilo/9e21b5fd09f974c5540d8322fe55f17e to your computer and use it in GitHub Desktop.
Godot Log AutoLoad. Helper methods to prefix network status in message.
# Log AutoLoad
extends Node
const nil = StringName("<NIL>")
func print(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
print(build_message(message, m2, m3, m4, m5, m6))
func prints(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
print(build_message(message, m2, m3, m4, m5, m6, " "))
func printt(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
print(build_message(message, m2, m3, m4, m5, m6, "\t"))
func printerr(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
printerr(build_message(message, m2, m3, m4, m5, m6))
func push_error(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
push_error(build_message(message, m2, m3, m4, m5, m6))
func push_warning(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil) -> void:
push_warning(build_message(message, m2, m3, m4, m5, m6))
func build_message(message: Variant, m2: Variant = nil, m3: Variant = nil, m4: Variant = nil, m5: Variant = nil, m6: Variant = nil, separator: Variant = null) -> String:
var text: String = ""
for msg in [message, m2, m3, m4, m5, m6]:
if is_nil(msg):
continue
if separator && text.length():
text += separator
text += str(msg)
return message_prefix() + text
func message_prefix() -> String:
if !is_multiplayer_connected() || multiplayer.multiplayer_peer is OfflineMultiplayerPeer:
return ""
var prefix := "["
if multiplayer.is_server():
prefix += "SERVER"
else:
prefix += "CLIENT %s" % multiplayer.multiplayer_peer.get_unique_id()
prefix += "] "
return prefix
func is_multiplayer_connected() -> bool:
return multiplayer.multiplayer_peer && multiplayer.multiplayer_peer.get_connection_status() == MultiplayerPeer.CONNECTION_CONNECTED
func is_nil(object: Variant) -> bool:
return typeof(object) == typeof(nil) && object == nil
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment