diff --git a/src/p_mobj.c b/src/p_mobj.c index b7559437c76dabeccb71983f49627137ab9daff9..8256d73756b4367d8215c928d225468359e31dc4 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -11582,7 +11582,6 @@ void P_SpawnPlayer(INT32 playernum) // Spawn as a spectator, // yes even in splitscreen mode p->spectator = true; - p->skincolor = teams[newteam].color; // but immediately send a team change packet. NetPacket.packet.playernum = playernum; diff --git a/src/p_user.c b/src/p_user.c index 9ded986167f927b4609d387c52b9f4ed76154a51..d0b983a84e4a45b1cb3b644c8ee700b05184c960 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -13108,7 +13108,11 @@ boolean P_PlayerHasTeamFlag(player_t *player, UINT8 team) UINT16 P_GetPlayerColor(player_t *player) { if (G_GametypeHasTeams() && player->ctfteam) - return G_GetTeamColor(player->ctfteam); + { + UINT16 skincolor = G_GetTeamColor(player->ctfteam); + if (skincolor != SKINCOLOR_NONE) + return skincolor; + } return player->skincolor; }