mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-12-25 20:01:04 +00:00
Abstain from handling connections instead if the level is loading
This commit is contained in:
parent
63f87b4cec
commit
4fdbfb1dc2
3 changed files with 17 additions and 23 deletions
|
@ -1228,7 +1228,7 @@ static inline void CL_DrawConnectionStatus(void)
|
|||
cltext = M_GetText("Server full, waiting for a slot...");
|
||||
else
|
||||
cltext = M_GetText("Requesting to join...");
|
||||
|
||||
|
||||
break;
|
||||
#ifdef HAVE_CURL
|
||||
case CL_PREPAREHTTPFILES:
|
||||
|
@ -2029,7 +2029,7 @@ void CL_QueryServerList (msg_server_t *server_list)
|
|||
|
||||
static void M_ConfirmConnect(event_t *ev)
|
||||
{
|
||||
#ifndef NONET
|
||||
#ifndef NONET
|
||||
if (ev->type == ev_keydown)
|
||||
{
|
||||
if (ev->data1 == ' ' || ev->data1 == 'y' || ev->data1 == KEY_ENTER || ev->data1 == gamecontrol[gc_accelerate][0] || ev->data1 == gamecontrol[gc_accelerate][1])
|
||||
|
@ -2052,7 +2052,7 @@ static void M_ConfirmConnect(event_t *ev)
|
|||
}
|
||||
else
|
||||
cl_mode = CL_LOADFILES;
|
||||
|
||||
|
||||
M_ClearMenus(true);
|
||||
}
|
||||
else if (ev->data1 == 'n' || ev->data1 == KEY_ESCAPE|| ev->data1 == gamecontrol[gc_brake][0] || ev->data1 == gamecontrol[gc_brake][1])
|
||||
|
@ -2300,7 +2300,7 @@ static boolean CL_ServerConnectionTicker(const char *tmpsave, tic_t *oldtic, tic
|
|||
{
|
||||
boolean waitmore;
|
||||
INT32 i;
|
||||
|
||||
|
||||
#ifdef NONET
|
||||
(void)tmpsave;
|
||||
#endif
|
||||
|
@ -2337,7 +2337,7 @@ static boolean CL_ServerConnectionTicker(const char *tmpsave, tic_t *oldtic, tic
|
|||
{
|
||||
curl_transfers++;
|
||||
}
|
||||
|
||||
|
||||
cl_mode = CL_DOWNLOADHTTPFILES;
|
||||
}
|
||||
break;
|
||||
|
@ -5011,7 +5011,7 @@ FILESTAMP
|
|||
{
|
||||
node = (SINT8)doomcom->remotenode;
|
||||
|
||||
if (netbuffer->packettype == PT_CLIENTJOIN && server)
|
||||
if (netbuffer->packettype == PT_CLIENTJOIN && server && !levelloading)
|
||||
{
|
||||
HandleConnect(node);
|
||||
continue;
|
||||
|
@ -5222,7 +5222,7 @@ static void CL_SendClientKeepAlive(void)
|
|||
static void SV_SendServerKeepAlive(void)
|
||||
{
|
||||
INT32 n;
|
||||
|
||||
|
||||
for (n = 1; n < MAXNETNODES; n++)
|
||||
{
|
||||
if (nodeingame[n])
|
||||
|
@ -5769,7 +5769,7 @@ FILESTAMP
|
|||
{
|
||||
SV_SendServerKeepAlive();
|
||||
}
|
||||
|
||||
|
||||
// No else because no tics are being run and we can't resynch during this
|
||||
|
||||
Net_AckTicker();
|
||||
|
|
|
@ -1597,9 +1597,9 @@ void D_SRB2Main(void)
|
|||
{
|
||||
pagename = "TITLESKY";
|
||||
levelstarttic = gametic;
|
||||
G_SetGamestate(GS_LEVEL);
|
||||
if (!P_SetupLevel(false))
|
||||
I_Quit(); // fail so reset game stuff
|
||||
G_SetGamestate(GS_LEVEL);
|
||||
}
|
||||
|
||||
#ifdef HAVE_DISCORDRPC
|
||||
|
|
22
src/g_game.c
22
src/g_game.c
|
@ -1733,20 +1733,6 @@ void G_DoLoadLevel(boolean resetplayer)
|
|||
Y_EndIntermission();
|
||||
if (gamestate == GS_VOTING)
|
||||
Y_EndVote();
|
||||
// Don't allow people to download a partial/corrupted
|
||||
// save while the server's loading the map/during the wipe.
|
||||
// (this addresses "map" command usage, which means
|
||||
// transitions/different gamestates would be skipped.)
|
||||
if (gamestate == GS_LEVEL)
|
||||
gamestate = GS_WAITINGPLAYERS;
|
||||
|
||||
// Setup the level.
|
||||
if (!P_SetupLevel(false))
|
||||
{
|
||||
// fail so reset game stuff
|
||||
Command_ExitGame_f();
|
||||
return;
|
||||
}
|
||||
|
||||
G_SetGamestate(GS_LEVEL);
|
||||
|
||||
|
@ -1756,6 +1742,14 @@ void G_DoLoadLevel(boolean resetplayer)
|
|||
players[i].playerstate = PST_REBORN;
|
||||
}
|
||||
|
||||
// Setup the level.
|
||||
if (!P_SetupLevel(false))
|
||||
{
|
||||
// fail so reset game stuff
|
||||
Command_ExitGame_f();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!resetplayer)
|
||||
P_FindEmerald();
|
||||
|
||||
|
|
Loading…
Reference in a new issue