diff --git a/scripts/globals/consoler.gd b/scripts/globals/consoler.gd index 16f13c6..c8cef38 100644 --- a/scripts/globals/consoler.gd +++ b/scripts/globals/consoler.gd @@ -1,6 +1,9 @@ extends Node +signal message_sent(message: String) + var input_thread: Thread +var stop: bool = false func _enter_tree() -> void: @@ -9,15 +12,15 @@ func _enter_tree() -> void: func _exit_tree() -> void: + stop = true input_thread.wait_to_finish() func _process_input() -> void: var text := "" - while text != "quit": - print("Insert some text: ") + while not stop and text != "quit": text = OS.read_string_from_stdin().strip_edges() - print("Inserted text: ",text) - if Referencer.chat: - Referencer.chat.send_server_message(text) - get_tree().quit() + if text and Referencer.chat: + print("Inserted text: ", text) + message_sent.emit(text) + print("STOPPING!") diff --git a/scripts/ui/chat.gd b/scripts/ui/chat.gd index f9a9ac0..cfafd94 100644 --- a/scripts/ui/chat.gd +++ b/scripts/ui/chat.gd @@ -21,6 +21,7 @@ func _ready() -> void: _message_edit.text_submitted.connect(_on_message_edit_text_submitted) _message_edit.visible = false _msg_margin.minimum_size_changed.connect(_on_message_margin_minimum_size_changed) + Consoler.message_sent.connect(_on_consoler_message_sent) Referencer.chat = self @@ -64,10 +65,6 @@ func close() -> void: _msg_scroll.vertical_scroll_mode = ScrollContainer.SCROLL_MODE_SHOW_NEVER -func send_server_message(message: String) -> void: - _send_message.rpc(message, true) - - @rpc("any_peer", "call_local", "reliable", 1) func _send_message(message: String, server: bool = false) -> void: var player_name := "" @@ -121,3 +118,7 @@ func _on_message_margin_minimum_size_changed() -> void: _msg_scroll.set_deferred( "scroll_vertical", int(_msg_scroll.get_v_scroll_bar().max_value) + 100 ) + + +func _on_consoler_message_sent(message: String) -> void: + _send_message.rpc(message, true)