mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Use ceremony gamestate when warping to podium on startup
Doesn't spawn the bots for some reason still, but I need this for quicker prototyping
This commit is contained in:
parent
2eba418334
commit
2d84837e5b
5 changed files with 42 additions and 23 deletions
23
src/d_main.c
23
src/d_main.c
|
|
@ -346,7 +346,7 @@ static void D_Display(void)
|
||||||
F_RunWipe(wipedefindex, wipetypepre, gamestate != GS_MENU, "FADEMAP0", false, false);
|
F_RunWipe(wipedefindex, wipetypepre, gamestate != GS_MENU, "FADEMAP0", false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gamestate != GS_LEVEL && rendermode != render_none)
|
if (G_GamestateUsesLevel() == false && rendermode != render_none)
|
||||||
{
|
{
|
||||||
V_SetPaletteLump("PLAYPAL"); // Reset the palette
|
V_SetPaletteLump("PLAYPAL"); // Reset the palette
|
||||||
R_ReInitColormaps(0, NULL, 0);
|
R_ReInitColormaps(0, NULL, 0);
|
||||||
|
|
@ -381,7 +381,6 @@ static void D_Display(void)
|
||||||
}
|
}
|
||||||
/* FALLTHRU */
|
/* FALLTHRU */
|
||||||
case GS_LEVEL:
|
case GS_LEVEL:
|
||||||
case GS_CEREMONY:
|
|
||||||
if (!gametic)
|
if (!gametic)
|
||||||
break;
|
break;
|
||||||
HU_Erase();
|
HU_Erase();
|
||||||
|
|
@ -400,6 +399,13 @@ static void D_Display(void)
|
||||||
HU_Drawer();
|
HU_Drawer();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case GS_CEREMONY:
|
||||||
|
if (!gametic)
|
||||||
|
break;
|
||||||
|
HU_Erase();
|
||||||
|
HU_Drawer();
|
||||||
|
break;
|
||||||
|
|
||||||
case GS_MENU:
|
case GS_MENU:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
@ -464,7 +470,7 @@ static void D_Display(void)
|
||||||
|
|
||||||
// clean up border stuff
|
// clean up border stuff
|
||||||
// see if the border needs to be initially drawn
|
// see if the border needs to be initially drawn
|
||||||
if (G_GamestateUsesLevel() == true || (gamestate == GS_TITLESCREEN && titlemapinaction && curbghide && (!hidetitlemap)))
|
if (G_GamestateUsesLevel() == true)
|
||||||
{
|
{
|
||||||
if (!automapactive && !dedicated && cv_renderview.value)
|
if (!automapactive && !dedicated && cv_renderview.value)
|
||||||
{
|
{
|
||||||
|
|
@ -757,17 +763,6 @@ void D_SRB2Loop(void)
|
||||||
because I_FinishUpdate was called afterward
|
because I_FinishUpdate was called afterward
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if 0
|
|
||||||
/* Smells like a hack... Don't fade Sonic's ass into the title screen. */
|
|
||||||
if (gamestate != GS_TITLESCREEN)
|
|
||||||
{
|
|
||||||
static lumpnum_t gstartuplumpnum = W_CheckNumForName("STARTUP");
|
|
||||||
if (gstartuplumpnum == LUMPERROR)
|
|
||||||
gstartuplumpnum = W_GetNumForName("MISSING");
|
|
||||||
V_DrawScaledPatch(0, 0, 0, W_CachePatchNum(gstartuplumpnum, PU_PATCH));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
// capbudget is the minimum precise_t duration of a single loop iteration
|
// capbudget is the minimum precise_t duration of a single loop iteration
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,7 @@
|
||||||
|
|
||||||
// SRB2Kart
|
// SRB2Kart
|
||||||
#include "k_menu.h"
|
#include "k_menu.h"
|
||||||
|
#include "k_grandprix.h"
|
||||||
|
|
||||||
// Stage of animation:
|
// Stage of animation:
|
||||||
// 0 = text, 1 = art screen
|
// 0 = text, 1 = art screen
|
||||||
|
|
@ -3144,11 +3145,18 @@ boolean F_StartCeremony(void)
|
||||||
INT32 podiumMapNum = nummapheaders;
|
INT32 podiumMapNum = nummapheaders;
|
||||||
INT32 i;
|
INT32 i;
|
||||||
|
|
||||||
|
if (grandprixinfo.gp == false)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (podiummap
|
if (podiummap
|
||||||
&& ((podiumMapNum = G_MapNumber(podiummap)) < nummapheaders)
|
&& ((podiumMapNum = G_MapNumber(podiummap)) < nummapheaders)
|
||||||
&& mapheaderinfo[podiumMapNum]
|
&& mapheaderinfo[podiumMapNum]
|
||||||
&& mapheaderinfo[podiumMapNum]->lumpnum != LUMPERROR)
|
&& mapheaderinfo[podiumMapNum]->lumpnum != LUMPERROR)
|
||||||
{
|
{
|
||||||
|
P_SetTarget(&titlemapcam.mobj, NULL);
|
||||||
|
|
||||||
gamemap = podiumMapNum+1;
|
gamemap = podiumMapNum+1;
|
||||||
|
|
||||||
maptol = mapheaderinfo[gamemap-1]->typeoflevel;
|
maptol = mapheaderinfo[gamemap-1]->typeoflevel;
|
||||||
|
|
|
||||||
24
src/g_game.c
24
src/g_game.c
|
|
@ -1454,7 +1454,7 @@ void G_DoLoadLevelEx(boolean resetplayer, gamestate_t newstate)
|
||||||
|
|
||||||
levelstarttic = gametic; // for time calculation
|
levelstarttic = gametic; // for time calculation
|
||||||
|
|
||||||
if (wipegamestate == GS_LEVEL)
|
if (wipegamestate == newstate)
|
||||||
wipegamestate = -1; // force a wipe
|
wipegamestate = -1; // force a wipe
|
||||||
|
|
||||||
if (cv_currprofile.value == -1 && !demo.playback)
|
if (cv_currprofile.value == -1 && !demo.playback)
|
||||||
|
|
@ -1715,6 +1715,16 @@ boolean G_Responder(event_t *ev)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (gamestate == GS_CEREMONY)
|
||||||
|
{
|
||||||
|
if (HU_Responder(ev))
|
||||||
|
{
|
||||||
|
hu_keystrokes = true;
|
||||||
|
return true; // chat ate the event
|
||||||
|
}
|
||||||
|
|
||||||
|
// todo
|
||||||
|
}
|
||||||
else if (gamestate == GS_CONTINUING)
|
else if (gamestate == GS_CONTINUING)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -1725,11 +1735,13 @@ boolean G_Responder(event_t *ev)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (gamestate == GS_INTERMISSION || gamestate == GS_VOTING || gamestate == GS_EVALUATION)
|
else if (gamestate == GS_INTERMISSION || gamestate == GS_VOTING || gamestate == GS_EVALUATION)
|
||||||
|
{
|
||||||
if (HU_Responder(ev))
|
if (HU_Responder(ev))
|
||||||
{
|
{
|
||||||
hu_keystrokes = true;
|
hu_keystrokes = true;
|
||||||
return true; // chat ate the event
|
return true; // chat ate the event
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (gamestate == GS_LEVEL && ev->type == ev_keydown && multiplayer && demo.playback && !demo.freecam)
|
if (gamestate == GS_LEVEL && ev->type == ev_keydown && multiplayer && demo.playback && !demo.freecam)
|
||||||
{
|
{
|
||||||
|
|
@ -5059,6 +5071,16 @@ void G_InitNew(UINT8 pencoremode, INT32 map, boolean resetplayer, boolean skippr
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (map == G_MapNumber(podiummap)+1)
|
||||||
|
{
|
||||||
|
// Didn't want to do this, but it needs to be here
|
||||||
|
// for it to work on startup.
|
||||||
|
if (F_StartCeremony() == true)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
gamemap = map;
|
gamemap = map;
|
||||||
|
|
||||||
maptol = mapheaderinfo[gamemap-1]->typeoflevel;
|
maptol = mapheaderinfo[gamemap-1]->typeoflevel;
|
||||||
|
|
|
||||||
|
|
@ -1624,12 +1624,6 @@ void K_UpdateBotGameplayVars(player_t *player)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (K_PodiumSequence() == true)
|
|
||||||
{
|
|
||||||
// We don't want these during podium.
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
botController = K_FindBotController(player->mo);
|
botController = K_FindBotController(player->mo);
|
||||||
|
|
||||||
player->botvars.controller = botController ? (botController - lines) : UINT16_MAX;
|
player->botvars.controller = botController ? (botController - lines) : UINT16_MAX;
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ void Command_Numthinkers_f(void)
|
||||||
thinklistnum_t end = NUM_THINKERLISTS - 1;
|
thinklistnum_t end = NUM_THINKERLISTS - 1;
|
||||||
thinklistnum_t i;
|
thinklistnum_t i;
|
||||||
|
|
||||||
if (gamestate != GS_LEVEL)
|
if (G_GamestateUsesLevel() == false)
|
||||||
{
|
{
|
||||||
CONS_Printf(M_GetText("You must be in a level to use this.\n"));
|
CONS_Printf(M_GetText("You must be in a level to use this.\n"));
|
||||||
return;
|
return;
|
||||||
|
|
@ -149,7 +149,7 @@ void Command_CountMobjs_f(void)
|
||||||
mobjtype_t i;
|
mobjtype_t i;
|
||||||
INT32 count;
|
INT32 count;
|
||||||
|
|
||||||
if (gamestate != GS_LEVEL)
|
if (G_GamestateUsesLevel() == false)
|
||||||
{
|
{
|
||||||
CONS_Printf(M_GetText("You must be in a level to use this.\n"));
|
CONS_Printf(M_GetText("You must be in a level to use this.\n"));
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue