35 lines
769 B
GDScript
35 lines
769 B
GDScript
extends PacketHandler
|
|
|
|
enum {
|
|
SUCCESS = 0,
|
|
FAIL = 1,
|
|
}
|
|
|
|
func _ready():
|
|
%Server.set_handler(Packet.LOGIN, self)
|
|
|
|
func handle_packet(data: PackedByteArray, peer: PacketPeer):
|
|
var data_string = data.get_string_from_utf8()
|
|
var login_request = JSON.parse_string(data_string)
|
|
|
|
if login_request.size() < 2:
|
|
fail_login(peer)
|
|
return
|
|
|
|
var username = login_request[0]
|
|
var password = login_request[1]
|
|
|
|
if username != "username" || password != "password":
|
|
fail_login(peer)
|
|
return
|
|
|
|
var buffer := StreamPeerBuffer.new()
|
|
buffer.put_8(Packet.LOGIN)
|
|
buffer.put_8(SUCCESS)
|
|
peer.put_packet(buffer.data_array)
|
|
|
|
func fail_login(peer: PacketPeer):
|
|
var buffer := StreamPeerBuffer.new()
|
|
buffer.put_8(Packet.LOGIN)
|
|
buffer.put_8(FAIL)
|
|
peer.put_packet(buffer.data_array) |