From 8d56a4d32ec84a9d68f6a52519c9e07da5ee266b Mon Sep 17 00:00:00 2001 From: Lactozilla <jp6781615@gmail.com> Date: Tue, 15 Aug 2023 12:37:18 -0300 Subject: [PATCH] Move splitscreen code path out of SetSkinLocal and into SendNameAndColor --- src/d_main.c | 3 +++ src/d_netcmd.c | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 22a6762554..5c6db2e299 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -981,6 +981,7 @@ void D_StartTitle(void) emeralds = 0; memset(&luabanks, 0, sizeof(luabanks)); lastmaploaded = 0; + pickedchar = R_SkinAvailable(cv_defaultskin.string); // In case someone exits out at the same time they start a time attack run, // reset modeattacking @@ -1626,6 +1627,8 @@ void D_SRB2Main(void) autostart = true; } + pickedchar = R_SkinAvailable(cv_defaultskin.string); + // user settings come before "+" parameters. if (dedicated) COM_ImmedExecute(va("exec \"%s"PATHSEP"adedserv.cfg\"\n", srb2home)); diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 9ad0b0ab08..8fdb73af4b 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -1230,17 +1230,13 @@ static void SetSkinLocal(INT32 skinnum) { // Starring Metal Sonic as themselves, obviously. SetPlayerSkinByNum(consoleplayer, 5); + return; } - else if (splitscreen) - { - INT32 foundskin = R_SkinAvailable(cv_skin.string); - if (foundskin != -1 && R_SkinUsable(consoleplayer, foundskin)) - SetPlayerSkinByNum(consoleplayer, foundskin); - else - SetPlayerSkinByNum(consoleplayer, GetPlayerDefaultSkin(consoleplayer)); - } - else + + if (skinnum != -1 && R_SkinUsable(consoleplayer, skinnum)) SetPlayerSkinByNum(consoleplayer, skinnum); + else + SetPlayerSkinByNum(consoleplayer, GetPlayerDefaultSkin(consoleplayer)); } static void SetColorLocal(void) @@ -1294,7 +1290,11 @@ static void SendNameAndColor(void) strcpy(player_names[consoleplayer], cv_playername.zstring); SetColorLocal(); - SetSkinLocal(pickedchar); + + if (splitscreen) + SetSkinLocal(R_SkinAvailable(cv_skin.string)); + else + SetSkinLocal(pickedchar); return; } -- GitLab