mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-01-09 16:32:33 +00:00
Don't turn off lagless at map start; draw LAGLESS in intermission
This commit is contained in:
parent
6484a5cd93
commit
352d576979
6 changed files with 52 additions and 5 deletions
|
|
@ -97,6 +97,7 @@ UINT16 pingmeasurecount = 1;
|
|||
UINT32 realpingtable[MAXPLAYERS]; //the base table of ping where an average will be sent to everyone.
|
||||
UINT32 playerpingtable[MAXPLAYERS]; //table of player latency values.
|
||||
tic_t servermaxping = 800; // server's max ping. Defaults to 800
|
||||
boolean server_lagless;
|
||||
SINT8 nodetoplayer[MAXNETNODES];
|
||||
SINT8 nodetoplayer2[MAXNETNODES]; // say the numplayer for this node if any (splitscreen)
|
||||
SINT8 nodetoplayer3[MAXNETNODES]; // say the numplayer for this node if any (splitscreen == 2)
|
||||
|
|
@ -4966,7 +4967,7 @@ static void CL_SendClientCmd(void)
|
|||
|
||||
fastest = 0;
|
||||
|
||||
if (server && ! cv_lagless.value)
|
||||
if (server && ! server_lagless)
|
||||
{
|
||||
for (i = 0; i < MAXPLAYERS; ++i)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -543,6 +543,8 @@ extern UINT32 realpingtable[MAXPLAYERS];
|
|||
extern UINT32 playerpingtable[MAXPLAYERS];
|
||||
extern tic_t servermaxping;
|
||||
|
||||
extern boolean server_lagless;
|
||||
|
||||
extern consvar_t
|
||||
#ifdef VANILLAJOINNEXTROUND
|
||||
cv_joinnextround,
|
||||
|
|
|
|||
|
|
@ -93,6 +93,8 @@ static void TeamScramble_OnChange(void);
|
|||
static void NetTimeout_OnChange(void);
|
||||
static void JoinTimeout_OnChange(void);
|
||||
|
||||
static void Lagless_OnChange (void);
|
||||
|
||||
static void Ringslinger_OnChange(void);
|
||||
static void Gravity_OnChange(void);
|
||||
static void ForceSkin_OnChange(void);
|
||||
|
|
@ -447,7 +449,7 @@ consvar_t cv_jointimeout = {"jointimeout", "105", CV_CALL|CV_SAVE, nettimeout_co
|
|||
static CV_PossibleValue_t maxping_cons_t[] = {{0, "MIN"}, {1000, "MAX"}, {0, NULL}};
|
||||
consvar_t cv_maxping = {"maxping", "800", CV_SAVE, maxping_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||
|
||||
consvar_t cv_lagless = {"lagless", "Off", CV_SAVE|CV_NETVAR, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||
consvar_t cv_lagless = {"lagless", "Off", CV_SAVE|CV_NETVAR|CV_CALL, CV_OnOff, Lagless_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
||||
|
||||
static CV_PossibleValue_t pingtimeout_cons_t[] = {{8, "MIN"}, {120, "MAX"}, {0, NULL}};
|
||||
consvar_t cv_pingtimeout = {"pingtimeout", "10", CV_SAVE, pingtimeout_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||
|
|
@ -4772,6 +4774,14 @@ static void JoinTimeout_OnChange(void)
|
|||
jointimeout = (tic_t)cv_jointimeout.value;
|
||||
}
|
||||
|
||||
static void
|
||||
Lagless_OnChange (void)
|
||||
{
|
||||
/* don't back out of dishonesty, or go lagless after playing honestly */
|
||||
if (cv_lagless.value && gamestate == GS_LEVEL)
|
||||
server_lagless = true;
|
||||
}
|
||||
|
||||
UINT32 timelimitintics = 0;
|
||||
|
||||
/** Deals with a timelimit change by printing the change to the console.
|
||||
|
|
|
|||
|
|
@ -1781,6 +1781,8 @@ void G_DoLoadLevel(boolean resetplayer)
|
|||
|
||||
// clear hud messages remains (usually from game startup)
|
||||
CON_ClearHUD();
|
||||
|
||||
server_lagless = cv_lagless.value;
|
||||
}
|
||||
|
||||
static INT32 pausedelay = 0;
|
||||
|
|
|
|||
|
|
@ -8406,7 +8406,7 @@ void HU_DrawTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, I
|
|||
|
||||
y2 = y;
|
||||
|
||||
if (tab[i].num == 0 && cv_lagless.value)
|
||||
if (tab[i].num == 0 && server_lagless)
|
||||
{
|
||||
y2 = ( y - 4 );
|
||||
|
||||
|
|
|
|||
|
|
@ -435,6 +435,7 @@ void Y_IntermissionDrawer(void)
|
|||
INT32 y = 41, gutter = ((data.match.numplayers > NUMFORNEWCOLUMN) ? 0 : (BASEVIDWIDTH/2));
|
||||
INT32 dupadjust = (vid.width/vid.dupx), duptweak = (dupadjust - BASEVIDWIDTH)/2;
|
||||
const char *timeheader;
|
||||
int y2;
|
||||
|
||||
if (data.match.rankingsmode)
|
||||
timeheader = "PWR.LV";
|
||||
|
|
@ -492,10 +493,41 @@ void Y_IntermissionDrawer(void)
|
|||
|
||||
STRBUFCPY(strtime, data.match.name[i]);
|
||||
|
||||
y2 = y;
|
||||
|
||||
if (data.match.num[i] == 0 && server_lagless)
|
||||
{
|
||||
static int alagles_timer = 0;
|
||||
patch_t *alagles;
|
||||
|
||||
y2 = ( y - 4 );
|
||||
|
||||
V_DrawScaledPatch(x + 36, y2, 0, W_CachePatchName(va("BLAGLES%d", (intertic / 3) % 6), PU_CACHE));
|
||||
// every 70 tics
|
||||
if (( leveltime % 70 ) == 0)
|
||||
{
|
||||
alagles_timer = 9;
|
||||
}
|
||||
if (alagles_timer > 0)
|
||||
{
|
||||
alagles = W_CachePatchName(va("ALAGLES%d", alagles_timer), PU_CACHE);
|
||||
V_DrawScaledPatch(x + 36, y2, 0, alagles);
|
||||
if (( leveltime % 2 ) == 0)
|
||||
alagles_timer--;
|
||||
}
|
||||
else
|
||||
{
|
||||
alagles = W_CachePatchName("ALAGLES0", PU_CACHE);
|
||||
V_DrawScaledPatch(x + 36, y2, 0, alagles);
|
||||
}
|
||||
|
||||
y2 += SHORT (alagles->height) + 1;
|
||||
}
|
||||
|
||||
if (data.match.numplayers > NUMFORNEWCOLUMN)
|
||||
V_DrawThinString(x+36, y-1, ((data.match.num[i] == whiteplayer) ? hilicol : 0)|V_ALLOWLOWERCASE|V_6WIDTHSPACE, strtime);
|
||||
V_DrawThinString(x+36, y2-1, ((data.match.num[i] == whiteplayer) ? hilicol : 0)|V_ALLOWLOWERCASE|V_6WIDTHSPACE, strtime);
|
||||
else
|
||||
V_DrawString(x+36, y, ((data.match.num[i] == whiteplayer) ? hilicol : 0)|V_ALLOWLOWERCASE, strtime);
|
||||
V_DrawString(x+36, y2, ((data.match.num[i] == whiteplayer) ? hilicol : 0)|V_ALLOWLOWERCASE, strtime);
|
||||
|
||||
if (data.match.rankingsmode)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue