mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Merge branch 'master' into clip-sprites-optimize
This commit is contained in:
commit
66f120c1b2
9 changed files with 48 additions and 48 deletions
|
|
@ -2029,6 +2029,7 @@ void CV_AddValue(consvar_t *var, INT32 increment)
|
|||
if (var->PossibleValue[max].value == var->value)
|
||||
currentindice = max;
|
||||
|
||||
// The following options will NOT handle netsyncing.
|
||||
if (var == &cv_chooseskin)
|
||||
{
|
||||
// Special case for the chooseskin variable, used only directly from the menu
|
||||
|
|
@ -2080,28 +2081,7 @@ void CV_AddValue(consvar_t *var, INT32 increment)
|
|||
}
|
||||
else if (var == &cv_kartspeed)
|
||||
{
|
||||
INT32 maxspeed = (M_SecretUnlocked(SECRET_HARDSPEED) ? 2 : 1);
|
||||
// Special case for the kartspeed variable, used only directly from the menu to prevent selecting hard mode
|
||||
if (increment > 0) // Going up!
|
||||
{
|
||||
newvalue = var->value + 1;
|
||||
if (newvalue > maxspeed)
|
||||
newvalue = -1;
|
||||
var->value = newvalue;
|
||||
var->string = var->PossibleValue[var->value].strvalue;
|
||||
var->func();
|
||||
return;
|
||||
}
|
||||
else if (increment < 0) // Going down!
|
||||
{
|
||||
newvalue = var->value - 1;
|
||||
if (newvalue < -1)
|
||||
newvalue = maxspeed;
|
||||
var->value = newvalue;
|
||||
var->string = var->PossibleValue[var->value].strvalue;
|
||||
var->func();
|
||||
return;
|
||||
}
|
||||
max = (M_SecretUnlocked(SECRET_HARDSPEED) ? 3 : 2);
|
||||
}
|
||||
#ifdef PARANOIA
|
||||
if (currentindice == -1)
|
||||
|
|
|
|||
|
|
@ -3235,7 +3235,7 @@ void D_QuitNetGame(void)
|
|||
if (nodeingame[i])
|
||||
HSendPacket(i, true, 0, 0);
|
||||
#ifdef MASTERSERVER
|
||||
if (serverrunning && cv_advertise.value)
|
||||
if (serverrunning && netgame && cv_advertise.value) // see mserv.c Online()
|
||||
UnregisterServer();
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1381,10 +1381,6 @@ boolean HWR_DrawModel(gl_vissprite_t *spr)
|
|||
R_InterpolateMobjState(spr->mobj, FRACUNIT, &interp);
|
||||
}
|
||||
|
||||
fixed_t interpx = R_InterpolateFixed(spr->mobj->old_x, spr->mobj->x);
|
||||
fixed_t interpy = R_InterpolateFixed(spr->mobj->old_y, spr->mobj->y);
|
||||
fixed_t interpz = R_InterpolateFixed(spr->mobj->old_z, spr->mobj->z);
|
||||
|
||||
// hitlag vibrating
|
||||
if (spr->mobj->hitlag > 0 && (spr->mobj->eflags & MFE_DAMAGEHITLAG))
|
||||
{
|
||||
|
|
@ -1395,15 +1391,15 @@ boolean HWR_DrawModel(gl_vissprite_t *spr)
|
|||
mul = -mul;
|
||||
}
|
||||
|
||||
interpx += FixedMul(spr->mobj->momx, mul);
|
||||
interpy += FixedMul(spr->mobj->momy, mul);
|
||||
interpy += FixedMul(spr->mobj->momz, mul);
|
||||
interp.x += FixedMul(spr->mobj->momx, mul);
|
||||
interp.y += FixedMul(spr->mobj->momy, mul);
|
||||
interp.z += FixedMul(spr->mobj->momz, mul);
|
||||
}
|
||||
|
||||
// sprite offset
|
||||
interpx += spr->mobj->sprxoff;
|
||||
interpy += spr->mobj->spryoff;
|
||||
interpz += spr->mobj->sprzoff;
|
||||
interp.x += spr->mobj->sprxoff;
|
||||
interp.y += spr->mobj->spryoff;
|
||||
interp.z += spr->mobj->sprzoff;
|
||||
|
||||
// Apparently people don't like jump frames like that, so back it goes
|
||||
//if (tics > durs)
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ Documentation available here.
|
|||
#include "doomdef.h"
|
||||
#include "d_clisrv.h"
|
||||
#include "command.h"
|
||||
#include "console.h"
|
||||
#include "m_argv.h"
|
||||
#include "m_menu.h"
|
||||
#include "mserv.h"
|
||||
|
|
@ -81,6 +82,19 @@ Contact_error (void)
|
|||
);
|
||||
}
|
||||
|
||||
static void
|
||||
Printf_url (const char *url)
|
||||
{
|
||||
boolean startup;
|
||||
|
||||
I_lock_mutex(&con_mutex);
|
||||
startup = con_startup;
|
||||
I_unlock_mutex(con_mutex);
|
||||
|
||||
(startup ? I_OutputMsg : CONS_Printf)(
|
||||
"HMS: connecting '%s'...\n", url);
|
||||
}
|
||||
|
||||
static size_t
|
||||
HMS_on_read (char *s, size_t _1, size_t n, void *userdata)
|
||||
{
|
||||
|
|
@ -180,7 +194,7 @@ HMS_connect (const char *format, ...)
|
|||
if (quack_token)
|
||||
sprintf(&url[seek], "&token=%s", quack_token);
|
||||
|
||||
CONS_Printf("HMS: connecting '%s'...\n", url);
|
||||
Printf_url(url);
|
||||
|
||||
buffer = malloc(sizeof *buffer);
|
||||
buffer->curl = curl;
|
||||
|
|
|
|||
|
|
@ -595,13 +595,13 @@ static boolean SOCK_Get(void)
|
|||
#ifdef USE_STUN
|
||||
if (STUN_got_response(doomcom->data, c))
|
||||
{
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (hole_punch(c))
|
||||
{
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
|
||||
// find remote node number
|
||||
|
|
|
|||
20
src/k_kart.c
20
src/k_kart.c
|
|
@ -3089,14 +3089,22 @@ static void K_GetKartBoostPower(player_t *player)
|
|||
|
||||
if (player->driftboost) // Drift Boost
|
||||
{
|
||||
if (player->strongdriftboost) // Purple/Rainbow drift boost
|
||||
// Rebuff Eggman's stat block corner
|
||||
const INT32 heavyAccel = (player->kartweight - 1) + (9 - player->kartspeed);
|
||||
const fixed_t heavyAccelBonus = FRACUNIT + ((heavyAccel * maxmetabolismincrease * 2) / 16);
|
||||
|
||||
fixed_t driftSpeed = FRACUNIT/4; // 25% base
|
||||
|
||||
if (player->strongdriftboost > 0)
|
||||
{
|
||||
ADDBOOST(FRACUNIT/3, 4*FRACUNIT, 0); // + 33% top speed, + 400% acceleration, +0% handling
|
||||
}
|
||||
else
|
||||
{
|
||||
ADDBOOST(FRACUNIT/4, 4*FRACUNIT, 0); // + 25% top speed, + 400% acceleration, +0% handling
|
||||
// Purple/Rainbow drift boost
|
||||
driftSpeed = FixedMul(driftSpeed, 4*FRACUNIT/3); // 25% -> 33%
|
||||
}
|
||||
|
||||
// Bottom-left bonus
|
||||
driftSpeed = FixedMul(driftSpeed, heavyAccelBonus);
|
||||
|
||||
ADDBOOST(driftSpeed, 4*FRACUNIT, 0); // + variable top speed, + 400% acceleration, +0% handling
|
||||
}
|
||||
|
||||
if (player->trickboost) // Trick pannel up-boost
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ static CV_PossibleValue_t masterserver_update_rate_cons_t[] = {
|
|||
};
|
||||
|
||||
consvar_t cv_masterserver = CVAR_INIT ("masterserver", "https://ms.kartkrew.org/ms/api", CV_SAVE|CV_CALL, NULL, MasterServer_OnChange);
|
||||
consvar_t cv_rendezvousserver = CVAR_INIT ("rendezvousserver", "relay.kartkrew.org", CV_SAVE|CV_CALL, NULL, RendezvousServer_OnChange);
|
||||
consvar_t cv_rendezvousserver = CVAR_INIT ("holepunchserver", "relay.kartkrew.org", CV_SAVE|CV_CALL, NULL, RendezvousServer_OnChange);
|
||||
consvar_t cv_servername = CVAR_INIT ("servername", "Ring Racers server", CV_SAVE|CV_CALL|CV_NOINIT, NULL, Update_parameters);
|
||||
consvar_t cv_server_contact = CVAR_INIT ("server_contact", "", CV_SAVE|CV_CALL|CV_NOINIT, NULL, Update_parameters);
|
||||
|
||||
|
|
@ -434,7 +434,7 @@ void UnregisterServer(void)
|
|||
static boolean
|
||||
Online (void)
|
||||
{
|
||||
return ( serverrunning && cv_advertise.value );
|
||||
return ( serverrunning && netgame && cv_advertise.value );
|
||||
}
|
||||
|
||||
static inline void SendPingToMasterServer(void)
|
||||
|
|
@ -532,7 +532,7 @@ Advertise_OnChange(void)
|
|||
|
||||
if (cv_advertise.value)
|
||||
{
|
||||
if (serverrunning)
|
||||
if (serverrunning && netgame)
|
||||
{
|
||||
Lock_state();
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4076,8 +4076,10 @@ sector_t *P_MobjTouchingSectorSpecial(mobj_t *mo, INT32 section, INT32 number, b
|
|||
msecnode_t *node;
|
||||
ffloor_t *rover;
|
||||
|
||||
if (!mo)
|
||||
if (mo == NULL || P_MobjWasRemoved(mo) == true)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// Check default case first
|
||||
if (GETSECSPECIAL(mo->subsector->sector->special, section) == number)
|
||||
|
|
|
|||
|
|
@ -1343,8 +1343,8 @@ void V_DrawVhsEffect(boolean rewind)
|
|||
if (rewind)
|
||||
V_DrawVhsEffect(false); // experimentation
|
||||
|
||||
upbary -= vid.dupy * (rewind ? 3 : 1.8f);
|
||||
downbary += vid.dupy * (rewind ? 2 : 1);
|
||||
upbary -= FixedMul(vid.dupy * (rewind ? 3 : 1.8f), renderdeltatics);
|
||||
downbary += FixedMul(vid.dupy * (rewind ? 2 : 1), renderdeltatics);
|
||||
if (upbary < -barsize) upbary = vid.height;
|
||||
if (downbary > vid.height) downbary = -barsize;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue