mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-01-07 07:22:54 +00:00
Replace instances of itemRoulette.active = false with K_StopRoulette
Properly clear ringbox state so it doesn't override egg transfer item HUD.
This commit is contained in:
parent
6b85dacaaa
commit
e75204a899
6 changed files with 36 additions and 9 deletions
|
|
@ -68,6 +68,7 @@
|
|||
#include "k_zvote.h"
|
||||
#include "k_bot.h"
|
||||
#include "k_powerup.h"
|
||||
#include "k_roulette.h"
|
||||
|
||||
#ifdef SRB2_CONFIG_ENABLE_WEBM_MOVIES
|
||||
#include "m_avrecorder.h"
|
||||
|
|
@ -6179,7 +6180,7 @@ static void Got_Cheat(UINT8 **cp, INT32 playernum)
|
|||
K_StripItems(player);
|
||||
|
||||
// Cancel roulette if rolling
|
||||
player->itemRoulette.active = false;
|
||||
K_StopRoulette(&player->itemRoulette);
|
||||
|
||||
player->itemtype = item;
|
||||
player->itemamount = amt;
|
||||
|
|
|
|||
|
|
@ -70,6 +70,7 @@
|
|||
#include "k_serverstats.h"
|
||||
#include "k_zvote.h"
|
||||
#include "music.h"
|
||||
#include "k_roulette.h"
|
||||
|
||||
#ifdef HAVE_DISCORDRPC
|
||||
#include "discord.h"
|
||||
|
|
@ -2583,7 +2584,7 @@ void G_PlayerReborn(INT32 player, boolean betweenmaps)
|
|||
|
||||
if (betweenmaps || leveltime < introtime)
|
||||
{
|
||||
itemRoulette.active = false;
|
||||
K_StopRoulette(&itemRoulette);
|
||||
|
||||
itemtype = 0;
|
||||
itemamount = 0;
|
||||
|
|
|
|||
10
src/k_kart.c
10
src/k_kart.c
|
|
@ -9972,7 +9972,7 @@ void K_StripItems(player_t *player)
|
|||
|
||||
if (player->itemRoulette.eggman == false)
|
||||
{
|
||||
player->itemRoulette.active = false;
|
||||
K_StopRoulette(&player->itemRoulette);
|
||||
}
|
||||
|
||||
player->hyudorotimer = 0;
|
||||
|
|
@ -9988,7 +9988,7 @@ void K_StripItems(player_t *player)
|
|||
|
||||
void K_StripOther(player_t *player)
|
||||
{
|
||||
player->itemRoulette.active = false;
|
||||
K_StopRoulette(&player->itemRoulette);
|
||||
|
||||
player->invincibilitytimer = 0;
|
||||
if (player->growshrinktimer)
|
||||
|
|
@ -12119,16 +12119,14 @@ void K_EggmanTransfer(player_t *source, player_t *victim)
|
|||
K_AddHitLag(victim->mo, 2, true);
|
||||
K_DropItems(victim);
|
||||
victim->eggmanexplode = 6*TICRATE;
|
||||
victim->itemRoulette.eggman = false;
|
||||
victim->itemRoulette.active = false;
|
||||
K_StopRoulette(&victim->itemRoulette);
|
||||
|
||||
if (P_IsDisplayPlayer(victim) && !demo.freecam)
|
||||
S_StartSound(NULL, sfx_itrole);
|
||||
|
||||
K_AddHitLag(source->mo, 2, true);
|
||||
source->eggmanexplode = 0;
|
||||
source->itemRoulette.eggman = false;
|
||||
source->itemRoulette.active = false;
|
||||
K_StopRoulette(&source->itemRoulette);
|
||||
source->eggmanTransferDelay = 10;
|
||||
|
||||
S_StopSoundByID(source->mo, sfx_s3k53);
|
||||
|
|
|
|||
|
|
@ -1485,6 +1485,18 @@ void K_StartEggmanRoulette(player_t *const player)
|
|||
roulette->eggman = true;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
void K_StopRoulette(itemroulette_t *const roulette)
|
||||
|
||||
See header file for description.
|
||||
--------------------------------------------------*/
|
||||
void K_StopRoulette(itemroulette_t *const roulette)
|
||||
{
|
||||
roulette->active = false;
|
||||
roulette->eggman = false;
|
||||
roulette->ringbox = false;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
fixed_t K_GetRouletteOffset(itemroulette_t *const roulette, fixed_t renderDelta)
|
||||
|
||||
|
|
|
|||
|
|
@ -156,6 +156,21 @@ void K_StartItemRoulette(player_t *const player, boolean ringbox);
|
|||
|
||||
void K_StartEggmanRoulette(player_t *const player);
|
||||
|
||||
/*--------------------------------------------------
|
||||
void K_StopRoulette(itemroulette_t *const roulette);
|
||||
|
||||
Resets the roulette back to a default state.
|
||||
Stops item roulette, Eggman and Ringbox.
|
||||
|
||||
Input Arguments:-
|
||||
roulette - The roulette to stop.
|
||||
|
||||
Return:-
|
||||
N/A
|
||||
--------------------------------------------------*/
|
||||
|
||||
void K_StopRoulette(itemroulette_t *const roulette);
|
||||
|
||||
|
||||
/*--------------------------------------------------
|
||||
fixed_t K_GetRouletteOffset(itemroulette_t *const roulette, fixed_t renderDelta);
|
||||
|
|
|
|||
|
|
@ -1629,7 +1629,7 @@ void P_KillMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, UINT8 damaget
|
|||
}
|
||||
player->karthud[khud_itemblink] = TICRATE;
|
||||
player->karthud[khud_itemblinkmode] = 0;
|
||||
player->itemRoulette.active = false;
|
||||
K_StopRoulette(&player->itemRoulette);
|
||||
if (P_IsDisplayPlayer(player))
|
||||
S_StartSound(NULL, sfx_itrolf);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue