diff --git a/src/k_kart.c b/src/k_kart.c index 78c38258..728d33cb 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -1105,7 +1105,7 @@ fixed_t K_3dKartMovement(player_t *player, boolean onground, boolean forwardmove if (!onground) return 0; // If the player isn't on the ground, there is no change in speed // ACCELCODE!!!1!11! - oldspeed = P_AproxDistance(player->rmomx, player->rmomy); // FixedMul(P_AproxDistance(player->rmomx, player->rmomy), player->mo->scale); + oldspeed = R_PointToDist2(0, 0, player->rmomx, player->rmomy); // FixedMul(P_AproxDistance(player->rmomx, player->rmomy), player->mo->scale); newspeed = FixedDiv(FixedDiv(FixedMul(oldspeed, accelmax - p_accel) + FixedMul(p_speed, p_accel), accelmax), ORIG_FRICTION); finalspeed = newspeed - oldspeed; diff --git a/src/p_saveg.c b/src/p_saveg.c index 4f15f2cb..d10cbcbc 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -136,6 +136,8 @@ static void P_NetArchivePlayers(void) for (j = 0; j < NUMPOWERS; j++) WRITEUINT16(save_p, players[i].powers[j]); + for (j = 0; j < NUMKARTSTUFF; j++) + WRITEUINT16(save_p, players[i].kartstuff[j]); WRITEUINT8(save_p, players[i].playerstate); WRITEUINT32(save_p, players[i].pflags); @@ -315,6 +317,8 @@ static void P_NetUnArchivePlayers(void) for (j = 0; j < NUMPOWERS; j++) players[i].powers[j] = READUINT16(save_p); + for (j = 0; j < NUMKARTSTUFF; j++) + players[i].kartstuff[j] = READUINT16(save_p); players[i].playerstate = READUINT8(save_p); players[i].pflags = READUINT32(save_p);