36 lines
677 B
GDScript
36 lines
677 B
GDScript
extends Node
|
|
|
|
signal message_sent(message: String)
|
|
|
|
const SERVER_CONSOLE_INPUT_PATH := "user://server_console_input"
|
|
const READING_INTERVAL: float = 10
|
|
|
|
var reading_timer: float = 0
|
|
|
|
|
|
func _process(delta: float) -> void:
|
|
if not Networker.is_dedicated or Referencer.chat == null:
|
|
return
|
|
|
|
reading_timer -= delta
|
|
|
|
if reading_timer > 0:
|
|
return
|
|
|
|
reading_timer = READING_INTERVAL
|
|
|
|
var file := FileAccess.open(SERVER_CONSOLE_INPUT_PATH, FileAccess.READ)
|
|
if not file:
|
|
return
|
|
|
|
var text := file.get_as_text()
|
|
if not text:
|
|
return
|
|
|
|
message_sent.emit(text)
|
|
|
|
file = FileAccess.open(SERVER_CONSOLE_INPUT_PATH, FileAccess.WRITE)
|
|
if not file:
|
|
return
|
|
file.store_string("")
|