From 79699f47d5aa433bd8d0f0bba992452639a89ebb Mon Sep 17 00:00:00 2001 From: toaster Date: Sat, 26 Aug 2023 23:48:18 +0100 Subject: [PATCH] Sealed Star finish cleanup - No FINISH text - No voices - Warp sound on crossing the line, not any other stuff --- src/k_hud.c | 3 +++ src/p_spec.c | 10 +++++++++- src/p_user.c | 7 ++++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/k_hud.c b/src/k_hud.c index af15b474a..5b64059d3 100644 --- a/src/k_hud.c +++ b/src/k_hud.c @@ -4332,6 +4332,9 @@ static void K_drawKartFinish(boolean finish) if (finish) { + if (gametyperules & GTR_SPECIALSTART) + return; + timer = stplyr->karthud[khud_finish]; kptodraw = kp_racefinish; minsplitstationary = 2; diff --git a/src/p_spec.c b/src/p_spec.c index 1c454f8b5..d3efd7ae5 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -1987,7 +1987,15 @@ static void K_HandleLapIncrement(player_t *player) player->starpostnum = 0; - if (P_IsDisplayPlayer(player)) + if (gametyperules & GTR_SPECIALSTART) + { + if (player->laps > numlaps) + { + // Warp out + S_StartSound(NULL, sfx_s3kb3); + } + } + else if (P_IsDisplayPlayer(player)) { if (numlaps > 1 && player->laps == numlaps) // final lap S_StartSound(NULL, sfx_s3k68); diff --git a/src/p_user.c b/src/p_user.c index 11a213730..0fb242fbf 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -1296,7 +1296,7 @@ void P_DoPlayerExit(player_t *player, pflags_t flags) { K_UpdateAllPlayerPositions(); - if (cv_kartvoices.value) + if (cv_kartvoices.value && !(gametyperules & GTR_SPECIALSTART)) { if (P_IsDisplayPlayer(player)) { @@ -1409,6 +1409,11 @@ void P_DoAllPlayersExit(pflags_t flags, boolean trygivelife) // You've already finished, don't play again ; } + else if (gametyperules & GTR_SPECIALSTART) + { + // Warp out + S_StartSound(NULL, sfx_s3kb3); + } else if (musiccountdown == 0) { // Other people finish