extends PacketHandler @export var playerScene: PackedScene var logged_in := false func _ready(): %Client.set_handler(Packet.LOGIN, self) send_login() func send_login(): if logged_in: return var buffer := StreamPeerBuffer.new() buffer.put_8(Packet.LOGIN) buffer.put_data(JSON.stringify(["username", "password"]).to_utf8_buffer()) %Client.socket.put_packet(buffer.data_array) print("[Client] Connecting...") func handle_packet(data: PackedByteArray, _peer: PacketPeer): if data[0] != 0: print("[Client] Login failed.") return print("[Client] Login succeeded.") logged_in = true Global.player = spawn_player() func spawn_player() -> Player: var player = playerScene.instantiate() %Players.add_child(player) return player