The server sends to everyone that the player is dead
| 4736 | |
| 4737 | // The server sends to everyone that the player is dead |
| 4738 | void MultiSendPlayerDead(int slot, uint8_t fate) { |
| 4739 | MULTI_ASSERT(Netgame.local_role == LR_SERVER, "Client in SendPlayerDead!"); |
| 4740 | uint8_t data[MAX_GAME_DATA_SIZE]; |
| 4741 | int count = 0; |
| 4742 | int size_offset; |
| 4743 | |
| 4744 | size_offset = START_DATA(MP_PLAYER_DEAD, data, &count, 1); |
| 4745 | MultiAddByte(slot, data, &count); |
| 4746 | MultiAddByte(fate, data, &count); |
| 4747 | END_DATA(count, data, size_offset); |
| 4748 | |
| 4749 | MultiSendReliablyToAllExcept(Player_num, data, count, NETSEQ_PLAYERS); |
| 4750 | MultiDoPlayerDead(data); |
| 4751 | if (Game_is_master_tracker_game) { |
| 4752 | mprintf(0, "Adding kill and death to player stats. Killer = %d Killee = %d\n", |
| 4753 | Objects[Players[slot].killer_objnum].id, |
| 4754 | slot); |
| 4755 | if (Objects[Players[slot].killer_objnum].id == slot) { |
| 4756 | Players[slot].suicides++; |
| 4757 | } else { |
| 4758 | Players[Objects[Players[slot].killer_objnum].id].kills++; |
| 4759 | Players[slot].deaths++; |
| 4760 | } |
| 4761 | } |
| 4762 | if (Objects[Players[slot].killer_objnum].id == slot) { |
| 4763 | Multi_deaths[slot]++; |
| 4764 | } else { |
| 4765 | Multi_kills[Objects[Players[slot].killer_objnum].id]++; |
| 4766 | Multi_deaths[slot]++; |
| 4767 | } |
| 4768 | ScoreAPIPlayerKilled(Objects[Players[slot].killer_objnum].id, slot); |
| 4769 | } |
| 4770 | |
| 4771 | // A player is coming back from the dead...restore his ship! |
| 4772 | void MultiDoRenewPlayer(uint8_t *data) { |
no test coverage detected