diff options
Diffstat (limited to 'network/character_server.gd')
-rw-r--r-- | network/character_server.gd | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/network/character_server.gd b/network/character_server.gd index 4d3433b..60389e4 100644 --- a/network/character_server.gd +++ b/network/character_server.gd @@ -13,36 +13,44 @@ func _init(host: String, port: int = 6121) -> void: super._init(host, port) -func login(account_id: int, login_id1: int, login_id2: int, gender: Constants.Gender): +func login(account_id: int, login_id1: int, login_id2: int, gender: Constants.Gender) -> Dictionary: var character_server_login_packet = CharacterServerLoginPacket.new() character_server_login_packet.account_id = account_id character_server_login_packet.login_id1 = login_id1 character_server_login_packet.login_id2 = login_id2 character_server_login_packet.gender = gender - peer.put_data(character_server_login_packet.to_bytes()) + send(character_server_login_packet) peer.get_data(4) # in-between packet - var login_success_packet = await received_packet - if login_success_packet is CharacterServerLoginSuccessPacket: - print(inst_to_dict(login_success_packet)) - logged_in.emit(login_success_packet) + var login_response_packet = await received_packet + if login_response_packet is CharacterServerLoginSuccessPacket: + logged_in.emit(login_response_packet) var character_list_packet = await received_packet if character_list_packet is CharacterServerLoginSuccessCharacterListPacket: - print(inst_to_dict(character_list_packet)) - print(inst_to_dict(character_list_packet.character_information[0])) logged_in_character_list.emit(character_list_packet) + + var character_list_size_packet = await received_packet + var block_character_packet = await received_packet + var pin_code_state_packet = await received_packet + + return { + "login": login_response_packet, + "character_list": character_list_packet, + "character_list_size": character_list_size_packet, + "block_character": block_character_packet, + "pin_code_state": pin_code_state_packet, + } func request_character_list(): var request_character_list_packet = RequestCharacterListPacket.new() - peer.put_data(request_character_list_packet.to_bytes()) + send(request_character_list_packet) var packet = await received_packet if packet is RequestCharacterListSuccessPacket: - print(inst_to_dict(packet), inst_to_dict(packet.character_information[0])) requested_character_list.emit(packet) @@ -50,11 +58,10 @@ func select_character(slot: int): var select_character_packet = SelectCharacterPacket.new() select_character_packet.selected_slot = slot - peer.put_data(select_character_packet.to_bytes()) + send(select_character_packet) var packet = await received_packet if packet is CharacterSelectionSuccessPacket: - print(inst_to_dict(packet)) selected_character.emit(packet) |