diff --git a/src/game/cheats.c b/src/game/cheats.c index 4567f5e30e..67733dcc77 100644 --- a/src/game/cheats.c +++ b/src/game/cheats.c @@ -165,6 +165,17 @@ void cheatActivate(s32 cheat_id) setCurrentPlayerNum(prevplayernum); break; case CHEAT_ALLGUNS: +#ifndef PLATFORM_N64 + // Give all guns to all players + prevplayernum = g_Vars.currentplayernum; + + for (playernum = 0; playernum < PLAYERCOUNT(); playernum++) { + setCurrentPlayerNum(playernum); + invSetAllGuns(true); + } + + setCurrentPlayerNum(prevplayernum); +#else // Give all guns if only one player playing if (PLAYERCOUNT() == 1 && g_Vars.normmplayerisrunning == false) { prevplayernum = g_Vars.currentplayernum; @@ -176,6 +187,7 @@ void cheatActivate(s32 cheat_id) setCurrentPlayerNum(prevplayernum); } +#endif break; } @@ -203,6 +215,16 @@ void cheatDeactivate(s32 cheat_id) setCurrentPlayerNum(prevplayernum); break; case CHEAT_ALLGUNS: +#ifndef PLATFORM_N64 + prevplayernum = g_Vars.currentplayernum; + + for (playernum = 0; playernum < PLAYERCOUNT(); playernum++) { + setCurrentPlayerNum(playernum); + invSetAllGuns(false); + } + + setCurrentPlayerNum(prevplayernum); +#else if (PLAYERCOUNT() == 1 && g_Vars.normmplayerisrunning == false) { prevplayernum = g_Vars.currentplayernum; @@ -213,6 +235,7 @@ void cheatDeactivate(s32 cheat_id) setCurrentPlayerNum(prevplayernum); } +#endif break; } diff --git a/src/game/invreset.c b/src/game/invreset.c index 8aeb2ee6a5..1f075c7239 100644 --- a/src/game/invreset.c +++ b/src/game/invreset.c @@ -12,11 +12,15 @@ void invReset(void) { s32 i; +#ifndef PLATFORM_N64 + g_Vars.currentplayer->equipallguns = cheatIsActive(CHEAT_ALLGUNS); +#else if (PLAYERCOUNT() == 1 && g_Vars.normmplayerisrunning == false) { g_Vars.currentplayer->equipallguns = cheatIsActive(CHEAT_ALLGUNS); } else { g_Vars.currentplayer->equipallguns = false; } +#endif for (i = 0; i != ARRAYCOUNT(g_Vars.currentplayer->gunheldarr); i++) { g_Vars.currentplayer->gunheldarr[i].totaltime240_60 = -1;