Fixes for client network IDs
Fixed an off-by-one error on client IDs (these need to start at 1 as 0 is an invalid network ID). Morphing will now swap the client body's ID so it remains in the first 1 - MAXPLAYERS slots.
This commit is contained in:
parent
566e03da60
commit
cf6bad97e8
3 changed files with 7 additions and 2 deletions
|
|
@ -637,10 +637,11 @@ void NetworkEntityManager::InitializeNetworkEntities()
|
|||
}
|
||||
|
||||
// Clients need special handling since they always go in slots 1 - MAXPLAYERS.
|
||||
void NetworkEntityManager::SetClientNetworkEntity(DObject* mo, const uint32_t id)
|
||||
void NetworkEntityManager::SetClientNetworkEntity(DObject* mo, const unsigned int playNum)
|
||||
{
|
||||
// If resurrecting, we need to swap the corpse's position with the new pawn's
|
||||
// position so it's no longer considered the client's body.
|
||||
const uint32_t id = ClientNetIDStart + playNum;
|
||||
DObject* const oldBody = s_netEntities[id];
|
||||
if (oldBody != nullptr)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue