From b93015c51c4b0a2b1c49b0b3a5c56a46fc3662ed Mon Sep 17 00:00:00 2001 From: Raf <> Date: Wed, 2 Apr 2025 00:33:45 +0800 Subject: [PATCH] mpsetups: fixed reverse pitch/look ahead being reset when the mpsetups file is created for the first time --- port/src/mpsetups.c | 2 +- port/src/pdmain.c | 2 +- src/game/filemgr.c | 2 +- src/game/mplayer/mplayer.c | 20 +++++++++++--------- src/include/game/mplayer/mplayer.h | 2 +- 5 files changed, 15 insertions(+), 13 deletions(-) diff --git a/port/src/mpsetups.c b/port/src/mpsetups.c index 7adf057db..519a8a92d 100644 --- a/port/src/mpsetups.c +++ b/port/src/mpsetups.c @@ -910,5 +910,5 @@ void mpsetupCopyAllFromPak() } // to reset the mp setup - mpInit(); + mpInit(false); } diff --git a/port/src/pdmain.c b/port/src/pdmain.c index 58d37b192..344e954fd 100644 --- a/port/src/pdmain.c +++ b/port/src/pdmain.c @@ -259,7 +259,7 @@ void mainInit(void) frametimeInit(); profileInit(); smokesInit(); - mpInit(); + mpInit(true); pheadInit(); paksInit(); pheadInit2(); diff --git a/src/game/filemgr.c b/src/game/filemgr.c index a5dbc53e8..45b85efae 100644 --- a/src/game/filemgr.c +++ b/src/game/filemgr.c @@ -2764,7 +2764,7 @@ MenuDialogHandlerResult filemgrMainMenuDialog(s32 operation, struct menudialogde g_Menus[g_MpPlayerNum].fm.filetypeplusone = 0; filelistCreate(0, FILETYPE_GAME); - mpInit(); + mpInit(true); // Set MP player names to "Player 1" through 4 if blank for (i = 0; i < MAX_PLAYERS; i++) { diff --git a/src/game/mplayer/mplayer.c b/src/game/mplayer/mplayer.c index dcb183877..40daa9935 100644 --- a/src/game/mplayer/mplayer.c +++ b/src/game/mplayer/mplayer.c @@ -518,12 +518,6 @@ void mpPlayerSetDefaults(s32 playernum, bool autonames) for (i = 0; i < ARRAYCOUNT(g_PlayerConfigsArray); i++) { g_PlayerConfigsArray[playernum].gunfuncs[i] = 0; } - -#ifndef PLATFORM_N64 - for (i = 0; i < ARRAYCOUNT(g_MpWeapons); i++) { - g_MpWeaponSetRandomFilters[i] = 1; - } -#endif } void func0f1881d4(s32 index) @@ -535,7 +529,7 @@ void func0f1881d4(s32 index) g_BotConfigsArray[index].difficulty = BOTDIFF_DISABLED; } -void mpInit(void) +void mpInit(bool resetplayers) { s32 i; s32 j; @@ -568,8 +562,10 @@ void mpInit(void) strcpy(g_MpSetup.name, ""); - for (i = 0; i < ARRAYCOUNT(g_PlayerConfigsArray); i++) { - mpPlayerSetDefaults(i, false); + if (resetplayers) { + for (i = 0; i < ARRAYCOUNT(g_PlayerConfigsArray); i++) { + mpPlayerSetDefaults(i, false); + } } for (i = 0; i < MAX_BOTS; i++) { @@ -606,6 +602,12 @@ void mpInit(void) for (i = 0; i < ARRAYCOUNT(g_Menus); i++) { g_Menus[i].mpsetup.showpresets = 1; } + +#ifndef PLATFORM_N64 + for (i = 0; i < ARRAYCOUNT(g_MpWeapons); i++) { + g_MpWeaponSetRandomFilters[i] = 1; + } +#endif } #if VERSION >= VERSION_PAL_BETA diff --git a/src/include/game/mplayer/mplayer.h b/src/include/game/mplayer/mplayer.h index a5b37e34f..7510390d5 100644 --- a/src/include/game/mplayer/mplayer.h +++ b/src/include/game/mplayer/mplayer.h @@ -13,7 +13,7 @@ void func0f187fbc(s32 playernum); void func0f187fec(void); void mpPlayerSetDefaults(s32 playernum, bool autonames); void func0f1881d4(s32 index); -void mpInit(void); +void mpInit(bool resetplayers); void mpGetTeamsWithDefaultName(u8 *mask); void mpSetTeamNamesToDefault(u8 mask); void mpSetDefaultNamesIfEmpty(void);