mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-25 22:01:01 +00:00
Revert "Merge branch 'update-quittime-while-idling' into 'next'"
This reverts merge request !2210
This commit is contained in:
parent
9b39493b42
commit
e7d972757b
2 changed files with 15 additions and 34 deletions
|
@ -116,8 +116,6 @@ consvar_t cv_playbackspeed = CVAR_INIT ("playbackspeed", "1", 0, playbackspeed_c
|
||||||
consvar_t cv_idletime = CVAR_INIT ("idletime", "0", CV_SAVE, CV_Unsigned, NULL);
|
consvar_t cv_idletime = CVAR_INIT ("idletime", "0", CV_SAVE, CV_Unsigned, NULL);
|
||||||
consvar_t cv_dedicatedidletime = CVAR_INIT ("dedicatedidletime", "10", CV_SAVE, CV_Unsigned, NULL);
|
consvar_t cv_dedicatedidletime = CVAR_INIT ("dedicatedidletime", "10", CV_SAVE, CV_Unsigned, NULL);
|
||||||
|
|
||||||
static INT32 D_NumNodes(boolean skiphost);
|
|
||||||
|
|
||||||
void ResetNode(INT32 node)
|
void ResetNode(INT32 node)
|
||||||
{
|
{
|
||||||
memset(&netnodes[node], 0, sizeof(*netnodes));
|
memset(&netnodes[node], 0, sizeof(*netnodes));
|
||||||
|
@ -1282,7 +1280,6 @@ static void UpdatePingTable(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handle idle and disconnected player timers
|
|
||||||
static void IdleUpdate(void)
|
static void IdleUpdate(void)
|
||||||
{
|
{
|
||||||
INT32 i;
|
INT32 i;
|
||||||
|
@ -1305,26 +1302,7 @@ static void IdleUpdate(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
players[i].lastinputtime = 0;
|
players[i].lastinputtime = 0;
|
||||||
|
|
||||||
if (players[i].quittime && playeringame[i])
|
|
||||||
{
|
|
||||||
players[i].quittime++;
|
|
||||||
|
|
||||||
if (players[i].quittime == 30 * TICRATE && G_TagGametype())
|
|
||||||
P_CheckSurvivors();
|
|
||||||
|
|
||||||
if (server && players[i].quittime >= (tic_t)FixedMul(cv_rejointimeout.value, 60 * TICRATE)
|
|
||||||
&& !(players[i].quittime % TICRATE))
|
|
||||||
{
|
|
||||||
if (D_NumNodes(true) > 0)
|
|
||||||
SendKick(i, KICK_MSG_PLAYER_QUIT);
|
|
||||||
else // If the server is empty, don't send a NetXCmd - that would wake an idling dedicated server
|
|
||||||
CL_RemovePlayer(i, KICK_MSG_PLAYER_QUIT);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1669,17 +1647,6 @@ INT32 D_NumBots(void)
|
||||||
return num;
|
return num;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns the number of currently-connected nodes in a netgame
|
|
||||||
// Not necessarily equivalent to D_NumPlayers() minus D_NumBots()
|
|
||||||
static INT32 D_NumNodes(boolean skiphost)
|
|
||||||
{
|
|
||||||
INT32 num = 0, ix;
|
|
||||||
for (ix = skiphost ? 1 : 0; ix < MAXNETNODES; ix++)
|
|
||||||
if (netnodes[ix].ingame)
|
|
||||||
num++;
|
|
||||||
return num;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Consistancy
|
// Consistancy
|
||||||
|
|
16
src/p_tick.c
16
src/p_tick.c
|
@ -701,11 +701,25 @@ void P_Ticker(boolean run)
|
||||||
{
|
{
|
||||||
INT32 i;
|
INT32 i;
|
||||||
|
|
||||||
// Increment jointime even if paused
|
// Increment jointime and quittime even if paused
|
||||||
for (i = 0; i < MAXPLAYERS; i++)
|
for (i = 0; i < MAXPLAYERS; i++)
|
||||||
if (playeringame[i])
|
if (playeringame[i])
|
||||||
|
{
|
||||||
players[i].jointime++;
|
players[i].jointime++;
|
||||||
|
|
||||||
|
if (players[i].quittime)
|
||||||
|
{
|
||||||
|
players[i].quittime++;
|
||||||
|
|
||||||
|
if (players[i].quittime == 30 * TICRATE && G_TagGametype())
|
||||||
|
P_CheckSurvivors();
|
||||||
|
|
||||||
|
if (server && players[i].quittime >= (tic_t)FixedMul(cv_rejointimeout.value, 60 * TICRATE)
|
||||||
|
&& !(players[i].quittime % TICRATE))
|
||||||
|
SendKick(i, KICK_MSG_PLAYER_QUIT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (objectplacing)
|
if (objectplacing)
|
||||||
{
|
{
|
||||||
if (OP_FreezeObjectplace())
|
if (OP_FreezeObjectplace())
|
||||||
|
|
Loading…
Reference in a new issue