diff options
| author | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-05-15 10:23:02 +0200 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-05-15 10:23:02 +0200 |
| commit | c6763223b8b0c3f78edb6ac759c14f08375b438f (patch) | |
| tree | d6f2619346fb33b72c8e09078664465ecf1c3720 /src/game.c | |
| parent | 8cc0540b60f6af4cad99060e8cb0b5920b96e52b (diff) | |
join game menu
Diffstat (limited to 'src/game.c')
| -rw-r--r-- | src/game.c | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -29,7 +29,7 @@ static u32 get_session_id() { return (((time * 2654435789U) + time) * 2654435789U) + platform_get_processid(); } -void connect_to_server(char* ip, char* port) { +bool connect_to_server(char* ip, char* port) { client_incomming_allocator = create_allocator(MAX_NETWORK_BUFFER_SIZE); messages_received_on_client = array_create(sizeof(protocol_generic_message*)); @@ -51,23 +51,28 @@ void connect_to_server(char* ip, char* port) { player_id = get_session_id(); network_message message = create_protocol_get_id_up(player_id); add_message_to_outgoing_queuex(message, *global_state.client); + return true; } } + return false; } -void connect_to_game(char* ip, char* port) +bool connect_to_game(char* ip, char* port) { if (ip && port) { if (strcmp(ip, "127.0.0.1") == 0) { start_server(port); } - connect_to_server(ip, port); + if (!connect_to_server(ip, port)) { + return false; + } } log_info("STATE: GAMESTATE_PLAYING"); global_state.state = GAMESTATE_PLAYING; play_music(music_inside1); + return true; } void start_solo_game() @@ -188,6 +193,10 @@ void update_server(platform_window* window) { switch (msg->message->type) { + case MESSAGE_PING_UPSTREAM: { + add_message_to_outgoing_queuex(create_protocol_ping_downstream(), msg->client); + + } break; case MESSAGE_GET_ID_UPSTREAM: { protocol_get_id_upstream* m = (protocol_get_id_upstream*)msg->message; u32 new_id = get_id_from_ip(msg->client); |
