diff --git a/src/g_game.c b/src/g_game.c index 2f84b4ef0..71bd8a6a2 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -588,10 +588,9 @@ static void G_UpdateRecordReplays(void) { modeprefix = "spb-"; } - - if (K_LegacyRingboost(&players[consoleplayer])) + else if (K_LegacyRingboost(&players[consoleplayer])) { - modeprefix = "classr-"; + modeprefix = "hivolt-"; } if (players[consoleplayer].pflags & PF_NOCONTEST) diff --git a/src/k_kart.c b/src/k_kart.c index 4f175967b..70257be0e 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -9490,7 +9490,7 @@ boolean K_LegacyRingboost(player_t *player) return false; if (modeattacking == ATTACKING_SPB) return false; - if (!modeattacking) + if (!modeattacking || (modeattacking & ATTACKING_SPB)) return false; if (!(skins[player->skin]->flags & SF_HIVOLT)) return false; diff --git a/src/menus/play-local-race-time-attack.c b/src/menus/play-local-race-time-attack.c index 7ac7343bf..4c6569217 100644 --- a/src/menus/play-local-race-time-attack.c +++ b/src/menus/play-local-race-time-attack.c @@ -461,7 +461,17 @@ void M_ReplayTimeAttack(INT32 choice) const char *modeprefix = ""; if (cv_dummyspbattack.value) + { modeprefix = "spb-"; + } + else + { + const INT32 skinid = R_SkinAvailableEx(cv_skin[0].string, false); + if (skinid >= 0 && (skins[skinid]->flags & SF_HIVOLT)) + { + modeprefix = "hivolt-"; + } + } switch (choice) { @@ -521,7 +531,17 @@ static void M_WriteGuestReplay(INT32 ch) const char *modeprefix = ""; if (cv_dummyspbattack.value) + { modeprefix = "spb-"; + } + else + { + const INT32 skinid = R_SkinAvailableEx(cv_skin[0].string, false); + if (skinid >= 0 && (skins[skinid]->flags & SF_HIVOLT)) + { + modeprefix = "hivolt-"; + } + } if (TA_GuestReplay_Str != NULL) { @@ -580,7 +600,17 @@ void M_SetGuestReplay(INT32 choice) const char *modeprefix = ""; if (cv_dummyspbattack.value) + { modeprefix = "spb-"; + } + else + { + const INT32 skinid = R_SkinAvailableEx(cv_skin[0].string, false); + if (skinid >= 0 && (skins[skinid]->flags & SF_HIVOLT)) + { + modeprefix = "hivolt-"; + } + } if (FIL_FileExists(va("%s"PATHSEP"media"PATHSEP"replay"PATHSEP"%s"PATHSEP"%s-%sguest.lmp", srb2home, timeattackfolder, G_BuildMapName(levellist.choosemap+1), modeprefix))) { @@ -622,6 +652,14 @@ void M_StartTimeAttack(INT32 choice) modeprefix = "spb-"; } + else + { + const INT32 skinid = R_SkinAvailableEx(cv_skin[0].string, false); + if (skinid >= 0 && (skins[skinid]->flags & SF_HIVOLT)) + { + modeprefix = "hivolt-"; + } + } // DON'T SOFTLOCK CON_ToggleOff(); diff --git a/src/p_setup.cpp b/src/p_setup.cpp index d62ce2b15..efd07f560 100644 --- a/src/p_setup.cpp +++ b/src/p_setup.cpp @@ -7816,6 +7816,7 @@ static void P_ResetSpawnpoints(void) static void P_TryAddExternalGhost(const char *defdemoname) { + CONS_Printf("trying %s\n", defdemoname); if (FIL_FileExists(defdemoname)) { savebuffer_t buf = {0}; @@ -7839,10 +7840,22 @@ static void P_LoadRecordGhosts(void) const char *modeprefix = ""; INT32 i; + CONS_Printf("trying load ghosts\n"); + gpath = Z_StrDup(va("%s" PATHSEP "media" PATHSEP "replay" PATHSEP "%s" PATHSEP "%s", srb2home, timeattackfolder, G_BuildMapName(gamemap))); if (encoremode) - modeprefix = "spb-"; + { + modeprefix = "-spb"; + } + else + { + const INT32 skinid = R_SkinAvailableEx(cv_skin[0].string, false); + if (skinid >= 0 && (skins[skinid]->flags & SF_HIVOLT)) + { + modeprefix = "-hivolt"; + } + } enum {