Client/scripts/ui/websocket_time.gd

29 lines
788 B
GDScript3
Raw Permalink Normal View History

2025-01-29 13:43:42 +01:00
extends RichTextLabel
# docs.redotengine.org/en/stable/tutorials/networking/websocket.html
@export var fallpack_websocket_url = "ws://localhost:8080/ws/server"
var websocket_url = OS.get_environment("TD_SERVER_WS")
var socket = WebSocketPeer.new()
func _ready() -> void:
if websocket_url.is_empty():
websocket_url = fallpack_websocket_url
var err = socket.connect_to_url(websocket_url)
if err != OK:
error_string(err)
set_process(false)
func _process(_delta: float) -> void:
socket.poll()
var state = socket.get_ready_state()
if state == WebSocketPeer.STATE_CLOSED:
self.text = "Disconnected"
return
if state == WebSocketPeer.STATE_OPEN:
while socket.get_available_packet_count():
self.text = "Current Unixtime: " + socket.get_packet().get_string_from_utf8()