diff --git a/src/d_netinfo.cpp b/src/d_netinfo.cpp index 7b2209cc9..9d0d63f81 100644 --- a/src/d_netinfo.cpp +++ b/src/d_netinfo.cpp @@ -765,6 +765,7 @@ void D_ReadUserInfoStrings (int i, BYTE **stream, bool update) if (players[i].mo != NULL) { if (players[i].cls != NULL && + !(players[i].mo->flags4 & MF4_NOSKIN) && players[i].mo->state->sprite == GetDefaultByType (players[i].cls)->SpawnState->sprite) { // Only change the sprite if the player is using a standard one diff --git a/src/p_mobj.cpp b/src/p_mobj.cpp index 7d5de6cc5..81883c397 100644 --- a/src/p_mobj.cpp +++ b/src/p_mobj.cpp @@ -4098,9 +4098,12 @@ APlayerPawn *P_SpawnPlayer (FMapThing *mthing, bool tempplayer) mobj->id = playernum; // [RH] Set player sprite based on skin - mobj->sprite = skins[p->userinfo.skin].sprite; - mobj->scaleX = skins[p->userinfo.skin].ScaleX; - mobj->scaleY = skins[p->userinfo.skin].ScaleY; + if (!(mobj->flags4 & MF4_NOSKIN)) + { + mobj->sprite = skins[p->userinfo.skin].sprite; + mobj->scaleX = skins[p->userinfo.skin].ScaleX; + mobj->scaleY = skins[p->userinfo.skin].ScaleY; + } p->DesiredFOV = p->FOV = 90.f; p->camera = p->mo;