bom/client/network/Login.gd

33 lines
761 B
GDScript3
Raw Normal View History

2024-01-20 22:18:58 +01:00
extends PacketHandler
2024-01-16 00:22:14 +01:00
2024-01-29 12:32:06 +01:00
signal success
signal failure
2024-01-16 00:22:14 +01:00
2024-01-29 23:16:06 +01:00
func handle_packet(data: PackedByteArray):
2024-01-26 12:50:46 +01:00
var buffer := StreamPeerBuffer.new()
buffer.data_array = data
2024-01-29 12:32:06 +01:00
2024-01-26 12:50:46 +01:00
var error := buffer.get_8()
if error != 0:
print("[%s] Login failed." % Global.username)
2024-01-29 12:32:06 +01:00
failure.emit()
2024-01-22 23:41:48 +01:00
return
2024-01-26 12:50:46 +01:00
Global.account_id = buffer.get_string()
2024-01-29 12:32:06 +01:00
Global.auth_token = buffer.get_string()
2024-01-26 12:50:46 +01:00
2024-01-29 12:32:06 +01:00
success.emit()
2024-01-22 23:41:48 +01:00
2024-01-16 00:22:14 +01:00
func send_login():
2024-01-22 23:41:48 +01:00
if is_logged_in():
2024-01-16 23:01:16 +01:00
return
2024-01-26 00:29:05 +01:00
2024-01-30 12:50:47 +01:00
var password := "password".sha256_text()
2024-01-16 00:22:14 +01:00
var buffer := StreamPeerBuffer.new()
2024-01-16 23:01:16 +01:00
buffer.put_8(Packet.LOGIN)
2024-01-26 12:50:46 +01:00
buffer.put_data(JSON.stringify([Global.username, password]).to_utf8_buffer())
2024-01-26 19:00:59 +01:00
%Client.send(buffer.data_array)
2024-01-26 12:50:46 +01:00
print("[%s] Connecting..." % Global.username)
2024-01-16 00:22:14 +01:00
2024-01-22 23:41:48 +01:00
func is_logged_in() -> bool:
2024-01-29 12:32:06 +01:00
return Global.auth_token != ""