From 8fd6ff202547fde8a1f9c9236aaba3ea2bb77db7 Mon Sep 17 00:00:00 2001 From: Kp Date: Sun, 23 Oct 2022 23:00:24 +0000 Subject: [PATCH] multi_do_escape: use player number from network layer The network layer already has the player number. Use that instead of reloading it from the message body. --- similar/main/multi.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/similar/main/multi.cpp b/similar/main/multi.cpp index ea9e48195..4531824ad 100644 --- a/similar/main/multi.cpp +++ b/similar/main/multi.cpp @@ -1859,10 +1859,9 @@ static void multi_do_controlcen_destroy(const d_robot_info_array &Robot_info, fi } } -static void multi_do_escape(fvmobjptridx &vmobjptridx, const multiplayer_rspan buf) +static void multi_do_escape(fvmobjptridx &vmobjptridx, const playernum_t pnum, const multiplayer_rspan buf) { digi_play_sample(SOUND_HUD_MESSAGE, F1_0); - const playernum_t pnum = buf[1]; auto &plr = *vmplayerptr(pnum); const auto &&objnum = vmobjptridx(plr.objnum); #if defined(DXX_BUILD_DESCENT_II) @@ -2554,6 +2553,7 @@ void multi_send_endlevel_start() #endif { multi_command buf; + /* Obsolete - reclaim player number field on next multiplayer protocol version bump */ buf[1] = Player_num; #if defined(DXX_BUILD_DESCENT_I) buf[2] = static_cast(secret); @@ -5723,7 +5723,7 @@ static void multi_process_data(const d_level_shared_robot_info_state &LevelShare break; #endif case multiplayer_command_t::MULTI_ENDLEVEL_START: - multi_do_escape(vmobjptridx, multi_subspan_first(data)); + multi_do_escape(vmobjptridx, pnum, multi_subspan_first(data)); break; case multiplayer_command_t::MULTI_CLOAK: multi_do_cloak(vmobjptr, pnum);