From 5dab3be1d7a3e1b4bfdc271abeee006c9061be61 Mon Sep 17 00:00:00 2001 From: zsilencer Date: Wed, 29 Jul 2015 16:30:05 -0600 Subject: [PATCH] fix view position when loading map over network --- src/game.c | 7 ++++--- src/network/network.cpp | 1 + src/openrct2.c | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/game.c b/src/game.c index 6cb4bc931b..f791bce993 100644 --- a/src/game.c +++ b/src/game.c @@ -777,9 +777,6 @@ int game_load_sv6(SDL_RWops* rw) reset_0x69EBE4(); openrct2_reset_object_tween_locations(); game_convert_strings_to_utf8(); - if (network_get_mode() == NETWORK_MODE_SERVER) { - network_send_map(); - } return 1; } @@ -814,6 +811,9 @@ int game_load_save(const char *path) SDL_RWclose(rw); game_load_init(); + if (network_get_mode() == NETWORK_MODE_SERVER) { + network_send_map(); + } return 1; } @@ -855,6 +855,7 @@ void game_load_init() load_palette(); gfx_invalidate_screen(); + window_update_all(); gGameSpeed = 1; diff --git a/src/network/network.cpp b/src/network/network.cpp index 940989e74a..9770721cba 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -768,6 +768,7 @@ int Network::Client_Handle_MAP(NetworkConnection& connection, NetworkPacket& pac if (RCT2_GLOBAL(RCT2_ADDRESS_GAME_PAUSED, uint8) & 1) pause_toggle(); game_command_queue.clear(); + server_tick = RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_TICKS, uint32); window_network_status_open("Loaded new map from network"); } SDL_RWclose(rw); diff --git a/src/openrct2.c b/src/openrct2.c index 373416d349..02d96a5f1e 100644 --- a/src/openrct2.c +++ b/src/openrct2.c @@ -356,7 +356,6 @@ static void openrct2_loop() } platform_process_messages(); - network_update(); rct2_draw(); platform_draw(); fps++; @@ -373,6 +372,7 @@ static void openrct2_loop() invalidate_sprite(&g_sprite_list[i]); sprite_move(_spritelocations2[i].x, _spritelocations2[i].y, _spritelocations2[i].z, &g_sprite_list[i]); } + network_update(); } else { uncapTick = 0; currentTick = SDL_GetTicks();