multi_do_fire: use player number from network layer
The network layer already has the player number. Use that instead of reloading it from the message body.
This commit is contained in:
parent
f6c45d0f6f
commit
064e971b28
|
@ -1581,7 +1581,7 @@ static void multi_do_fire(fvmobjptridx &vmobjptridx, const playernum_t pnum, con
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
static void multi_do_message(const multiplayer_rspan<multiplayer_command_t::MULTI_MESSAGE> cbuf)
|
static void multi_do_message(const playernum_t pnum, const multiplayer_rspan<multiplayer_command_t::MULTI_MESSAGE> cbuf)
|
||||||
{
|
{
|
||||||
const auto buf = reinterpret_cast<const char *>(cbuf.data());
|
const auto buf = reinterpret_cast<const char *>(cbuf.data());
|
||||||
const char *colon;
|
const char *colon;
|
||||||
|
@ -1602,7 +1602,6 @@ static void multi_do_message(const multiplayer_rspan<multiplayer_command_t::MULT
|
||||||
else
|
else
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const playernum_t pnum = buf[1];
|
|
||||||
const auto color = get_player_or_team_color(pnum);
|
const auto color = get_player_or_team_color(pnum);
|
||||||
char xrgb = BM_XRGB(player_rgb[color].r,player_rgb[color].g,player_rgb[color].b);
|
char xrgb = BM_XRGB(player_rgb[color].r,player_rgb[color].g,player_rgb[color].b);
|
||||||
digi_play_sample(SOUND_HUD_MESSAGE, F1_0);
|
digi_play_sample(SOUND_HUD_MESSAGE, F1_0);
|
||||||
|
@ -2658,6 +2657,7 @@ void multi_send_message()
|
||||||
if (Network_message_reciever != -1)
|
if (Network_message_reciever != -1)
|
||||||
{
|
{
|
||||||
multi_command<multiplayer_command_t::MULTI_MESSAGE> multibuf;
|
multi_command<multiplayer_command_t::MULTI_MESSAGE> multibuf;
|
||||||
|
/* Obsolete - reclaim player number field on next multiplayer protocol version bump */
|
||||||
multibuf[1] = Player_num;
|
multibuf[1] = Player_num;
|
||||||
std::copy(Network_message.begin(), Network_message.end(), std::next(multibuf.begin(), 2));
|
std::copy(Network_message.begin(), Network_message.end(), std::next(multibuf.begin(), 2));
|
||||||
multi_send_data(multibuf, multiplayer_data_priority::_0);
|
multi_send_data(multibuf, multiplayer_data_priority::_0);
|
||||||
|
@ -5681,7 +5681,7 @@ static void multi_process_data(const d_level_shared_robot_info_state &LevelShare
|
||||||
multi_do_player_deres(LevelSharedRobotInfoState.Robot_info, Objects, pnum, multi_subspan_first<multiplayer_command_t::MULTI_PLAYER_DERES>(data));
|
multi_do_player_deres(LevelSharedRobotInfoState.Robot_info, Objects, pnum, multi_subspan_first<multiplayer_command_t::MULTI_PLAYER_DERES>(data));
|
||||||
break;
|
break;
|
||||||
case multiplayer_command_t::MULTI_MESSAGE:
|
case multiplayer_command_t::MULTI_MESSAGE:
|
||||||
multi_do_message(multi_subspan_first<multiplayer_command_t::MULTI_MESSAGE>(data));
|
multi_do_message(pnum, multi_subspan_first<multiplayer_command_t::MULTI_MESSAGE>(data));
|
||||||
break;
|
break;
|
||||||
case multiplayer_command_t::MULTI_QUIT:
|
case multiplayer_command_t::MULTI_QUIT:
|
||||||
multi_do_quit(multi_subspan_first<multiplayer_command_t::MULTI_QUIT>(data));
|
multi_do_quit(multi_subspan_first<multiplayer_command_t::MULTI_QUIT>(data));
|
||||||
|
|
Loading…
Reference in a new issue