37 lines
948 B
GDScript

extends PacketHandler
signal success
signal failure
func handle_packet(data: PackedByteArray, _peer: PacketPeer):
var buffer := StreamPeerBuffer.new()
buffer.data_array = data
var error := buffer.get_8()
if error != 0:
print("[%s] Login failed." % Global.username)
failure.emit()
return
Global.account_id = buffer.get_string()
Global.auth_token = buffer.get_string()
print("[%s] Login succeeded." % Global.username)
print("[%s] ID: %s" % [Global.username, Global.account_id])
print("[%s] Auth token: %s" % [Global.username, Global.auth_token])
success.emit()
func send_login():
if is_logged_in():
return
var password := "password"
var buffer := StreamPeerBuffer.new()
buffer.put_8(Packet.LOGIN)
buffer.put_data(JSON.stringify([Global.username, password]).to_utf8_buffer())
%Client.send(buffer.data_array)
print("[%s] Connecting..." % Global.username)
func is_logged_in() -> bool:
return Global.auth_token != ""