mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-18 07:22:28 +00:00
begin titlemap
idk my bff jill
This commit is contained in:
parent
a979b425e0
commit
7e43272932
4 changed files with 31 additions and 11 deletions
16
src/d_main.c
16
src/d_main.c
|
@ -318,6 +318,12 @@ static void D_Display(void)
|
||||||
// do buffered drawing
|
// do buffered drawing
|
||||||
switch (gamestate)
|
switch (gamestate)
|
||||||
{
|
{
|
||||||
|
case GS_TITLESCREEN:
|
||||||
|
if (!gamemap) {
|
||||||
|
F_TitleScreenDrawer();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// Intentional fall-through
|
||||||
case GS_LEVEL:
|
case GS_LEVEL:
|
||||||
if (!gametic)
|
if (!gametic)
|
||||||
break;
|
break;
|
||||||
|
@ -366,10 +372,6 @@ static void D_Display(void)
|
||||||
HU_Drawer();
|
HU_Drawer();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GS_TITLESCREEN:
|
|
||||||
F_TitleScreenDrawer();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case GS_WAITINGPLAYERS:
|
case GS_WAITINGPLAYERS:
|
||||||
// The clientconnect drawer is independent...
|
// The clientconnect drawer is independent...
|
||||||
case GS_DEDICATEDSERVER:
|
case GS_DEDICATEDSERVER:
|
||||||
|
@ -379,9 +381,10 @@ 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 (gamestate == GS_LEVEL)
|
if (gamestate == GS_LEVEL || (gamestate == GS_TITLESCREEN && gamemap))
|
||||||
{
|
{
|
||||||
// draw the view directly
|
// draw the view directly
|
||||||
|
|
||||||
if (!automapactive && !dedicated && cv_renderview.value)
|
if (!automapactive && !dedicated && cv_renderview.value)
|
||||||
{
|
{
|
||||||
if (players[displayplayer].mo || players[displayplayer].playerstate == PST_DEAD)
|
if (players[displayplayer].mo || players[displayplayer].playerstate == PST_DEAD)
|
||||||
|
@ -436,7 +439,10 @@ static void D_Display(void)
|
||||||
lastdraw = false;
|
lastdraw = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (gamestate == GS_LEVEL)
|
||||||
ST_Drawer();
|
ST_Drawer();
|
||||||
|
else
|
||||||
|
F_TitleScreenDrawer();
|
||||||
|
|
||||||
HU_Drawer();
|
HU_Drawer();
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
#include "m_random.h"
|
#include "m_random.h"
|
||||||
#include "y_inter.h"
|
#include "y_inter.h"
|
||||||
#include "m_cond.h"
|
#include "m_cond.h"
|
||||||
|
#include "p_local.h"
|
||||||
|
|
||||||
// Stage of animation:
|
// Stage of animation:
|
||||||
// 0 = text, 1 = art screen
|
// 0 = text, 1 = art screen
|
||||||
|
@ -999,7 +1000,7 @@ static const char *credits[] = {
|
||||||
"",
|
"",
|
||||||
"\1Sprite Artists",
|
"\1Sprite Artists",
|
||||||
"Odi \"Iceman404\" Atunzu",
|
"Odi \"Iceman404\" Atunzu",
|
||||||
"Victor \"VAdaPEGA\" Ara\x1Fjo", // Araújo -- sorry for our limited font! D:
|
"Victor \"VAdaPEGA\" Ara\x1Fjo", // Ara<EFBFBD>jo -- sorry for our limited font! D:
|
||||||
"Jim \"MotorRoach\" DeMello",
|
"Jim \"MotorRoach\" DeMello",
|
||||||
"Desmond \"Blade\" DesJardins",
|
"Desmond \"Blade\" DesJardins",
|
||||||
"Sherman \"CoatRack\" DesJardins",
|
"Sherman \"CoatRack\" DesJardins",
|
||||||
|
@ -1423,13 +1424,16 @@ void F_StartTitleScreen(void)
|
||||||
finalecount = 0;
|
finalecount = 0;
|
||||||
else
|
else
|
||||||
wipegamestate = GS_TITLESCREEN;
|
wipegamestate = GS_TITLESCREEN;
|
||||||
|
|
||||||
|
gamemap = 533; titlescrollspeed = (int32_t)ANG1; //@TODO don't hardcode bich
|
||||||
|
G_DoLoadLevel(true);
|
||||||
G_SetGamestate(GS_TITLESCREEN);
|
G_SetGamestate(GS_TITLESCREEN);
|
||||||
CON_ClearHUD();
|
players[displayplayer].playerstate = PST_DEAD; // Don't spawn the player in dummy (I'm still a filthy cheater)
|
||||||
|
//CON_ClearHUD();
|
||||||
|
|
||||||
// IWAD dependent stuff.
|
// IWAD dependent stuff.
|
||||||
|
|
||||||
S_ChangeMusicInternal("_title", looptitle);
|
S_ChangeMusicInternal("_title", looptitle);
|
||||||
|
|
||||||
animtimer = 0;
|
animtimer = 0;
|
||||||
|
|
||||||
demoDelayLeft = demoDelayTime;
|
demoDelayLeft = demoDelayTime;
|
||||||
|
@ -1459,7 +1463,9 @@ void F_TitleScreenDrawer(void)
|
||||||
return; // We likely came here from retrying. Don't do a damn thing.
|
return; // We likely came here from retrying. Don't do a damn thing.
|
||||||
|
|
||||||
// Draw that sky!
|
// Draw that sky!
|
||||||
|
if (!gamemap) {
|
||||||
F_SkyScroll(titlescrollspeed);
|
F_SkyScroll(titlescrollspeed);
|
||||||
|
}
|
||||||
|
|
||||||
// Don't draw outside of the title screewn, or if the patch isn't there.
|
// Don't draw outside of the title screewn, or if the patch isn't there.
|
||||||
if (!ttwing || (gamestate != GS_TITLESCREEN && gamestate != GS_WAITINGPLAYERS))
|
if (!ttwing || (gamestate != GS_TITLESCREEN && gamestate != GS_WAITINGPLAYERS))
|
||||||
|
@ -1513,6 +1519,13 @@ void F_TitleScreenTicker(boolean run)
|
||||||
if (gameaction != ga_nothing || gamestate != GS_TITLESCREEN)
|
if (gameaction != ga_nothing || gamestate != GS_TITLESCREEN)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
// Do a lil' camera spin if a title map is loaded.
|
||||||
|
if (gamemap) {
|
||||||
|
camera.x = camera.y = camera.height = camera.aiming = 0;
|
||||||
|
camera.z = 128*FRACUNIT;
|
||||||
|
camera.angle += titlescrollspeed;
|
||||||
|
}
|
||||||
|
|
||||||
// no demos to play? or, are they disabled?
|
// no demos to play? or, are they disabled?
|
||||||
if (!cv_rollingdemos.value || !numDemos)
|
if (!cv_rollingdemos.value || !numDemos)
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -1985,6 +1985,7 @@ void G_Ticker(boolean run)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GS_TITLESCREEN:
|
case GS_TITLESCREEN:
|
||||||
|
if (gamemap) P_Ticker(run); // then intentionally fall through
|
||||||
case GS_WAITINGPLAYERS:
|
case GS_WAITINGPLAYERS:
|
||||||
F_TitleScreenTicker(run);
|
F_TitleScreenTicker(run);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -165,7 +165,7 @@ fixed_t P_ReturnThrustY(mobj_t *mo, angle_t angle, fixed_t move)
|
||||||
boolean P_AutoPause(void)
|
boolean P_AutoPause(void)
|
||||||
{
|
{
|
||||||
// Don't pause even on menu-up or focus-lost in netgames or record attack
|
// Don't pause even on menu-up or focus-lost in netgames or record attack
|
||||||
if (netgame || modeattacking)
|
if (netgame || modeattacking || gamestate == GS_TITLESCREEN)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return (menuactive || window_notinfocus);
|
return (menuactive || window_notinfocus);
|
||||||
|
|
Loading…
Reference in a new issue