diff --git a/src/doomdef.h b/src/doomdef.h index e45a3a0a..97791bbb 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -143,16 +143,16 @@ extern FILE *logstream; #define DEVELOP // Disable this for release builds to remove excessive cheat commands and enable MD5 checking and stuff, all in one go. :3 #ifdef DEVELOP #define VERSION 103 // Game version -#define SUBVERSION 10 // more precise version number +#define SUBVERSION 11 // more precise version number #define VERSIONSTRING "Development EXE" -#define VERSIONSTRINGW "v1.3.10" +#define VERSIONSTRINGW "v1.3.11" // most interface strings are ignored in development mode. // we use comprevision and compbranch instead. #else #define VERSION 103 // Game version -#define SUBVERSION 10 // more precise version number -#define VERSIONSTRING "DevEXE v1.3.10" -#define VERSIONSTRINGW L"v1.3.10" +#define SUBVERSION 11 // more precise version number +#define VERSIONSTRING "DevEXE v1.3.11" +#define VERSIONSTRINGW L"v1.3.11" // Hey! If you change this, add 1 to the MODVERSION below! // Otherwise we can't force updates! #endif diff --git a/src/k_kart.c b/src/k_kart.c index 5bd82cca..aec3890a 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -1306,9 +1306,10 @@ fixed_t K_GetKartSpeed(player_t *player, boolean doboostpower) static fixed_t K_GetKartAccel(player_t *player) { - fixed_t k_accel = 36; + fixed_t k_accel = 32; // 36; - k_accel += 3 * (9 - player->kartspeed); // 36 - 60 + //k_accel += 3 * (9 - player->kartspeed); // 36 - 60 + k_accel += 4 * (9 - player->kartspeed); // 32 - 64 return FixedMul(k_accel, K_GetKartBoostPower(player, false)); } @@ -1948,7 +1949,7 @@ static void K_DoLightning(player_t *player, boolean bluelightning) static INT16 K_GetKartDriftValue(player_t *player, fixed_t countersteer) { INT16 basedrift, driftangle; - fixed_t driftweight = player->kartweight*12; + fixed_t driftweight = player->kartweight*14; // 12 // If they aren't drifting or on the ground this doesn't apply if (player->kartstuff[k_drift] == 0 || !P_IsObjectOnGround(player->mo)) @@ -1959,9 +1960,9 @@ static INT16 K_GetKartDriftValue(player_t *player, fixed_t countersteer) return -266*player->kartstuff[k_drift]; // Drift has ended and we are tweaking their angle back a bit } - //basedrift = 90*player->kartstuff[k_drift]; - //basedrift = 94*player->kartstuff[k_drift] - driftweight*player->kartstuff[k_drift]/3; - basedrift = 93*player->kartstuff[k_drift] - driftweight*3*player->kartstuff[k_drift]/10; + //basedrift = 90*player->kartstuff[k_drift]; // 450 + //basedrift = 93*player->kartstuff[k_drift] - driftweight*3*player->kartstuff[k_drift]/10; // 447 - 303 + basedrift = 83*player->kartstuff[k_drift] - (driftweight - 14)*player->kartstuff[k_drift]/5; // 415 - 303 driftangle = abs((252 - driftweight)*player->kartstuff[k_drift]/5); return basedrift + FixedMul(driftangle, countersteer); @@ -1998,8 +1999,8 @@ INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue) static void K_KartDrift(player_t *player, boolean onground) { // IF YOU CHANGE THESE: MAKE SURE YOU UPDATE THE SAME VALUES IN p_mobjc, "case MT_DRIFT:" - fixed_t dsone = 52 + player->kartspeed; // 53 - 61 - fixed_t dstwo = dsone*2; // 106 - 122 + fixed_t dsone = 26*4 + player->kartspeed*2 + (9 - player->kartweight); + fixed_t dstwo = dsone*2; // Drifting is actually straffing + automatic turning. // Holding the Jump button will enable drifting. @@ -2069,7 +2070,7 @@ static void K_KartDrift(player_t *player, boolean onground) if (player->kartstuff[k_spinouttimer] == 0 && player->kartstuff[k_jmp] == 1 && onground && player->kartstuff[k_drift] != 0) { - fixed_t driftadditive = 1; + fixed_t driftadditive = 3; if (player->kartstuff[k_drift] >= 1) // Drifting to the left { @@ -2077,8 +2078,10 @@ static void K_KartDrift(player_t *player, boolean onground) if (player->kartstuff[k_drift] > 5) player->kartstuff[k_drift] = 5; - if (player->cmd.buttons & BT_DRIFTLEFT) - driftadditive = 2; + if (player->cmd.buttons & BT_DRIFTLEFT) // Inward + driftadditive++; + if (player->cmd.buttons & BT_DRIFTRIGHT) // Outward + driftadditive--; } else if (player->kartstuff[k_drift] <= -1) // Drifting to the right { @@ -2086,8 +2089,10 @@ static void K_KartDrift(player_t *player, boolean onground) if (player->kartstuff[k_drift] < -5) player->kartstuff[k_drift] = -5; - if (player->cmd.buttons & BT_DRIFTRIGHT) - driftadditive = 2; + if (player->cmd.buttons & BT_DRIFTRIGHT) // Inward + driftadditive++; + if (player->cmd.buttons & BT_DRIFTLEFT) // Outward + driftadditive--; } // This spawns the drift sparks diff --git a/src/p_mobj.c b/src/p_mobj.c index 6f0b14a2..d1e6a584 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -6405,8 +6405,8 @@ void P_MobjThinker(mobj_t *mobj) //{ SRB2kart mobs case MT_DRIFT: { - fixed_t dsone = 52 + mobj->target->player->kartspeed; // 53 - 61 - fixed_t dstwo = dsone*2; // 106 - 122 + fixed_t dsone = 26*4 + mobj->target->player->kartspeed*2 + (9 - mobj->target->player->kartweight); + fixed_t dstwo = dsone*2; if ((mobj->target && mobj->target->player && mobj->target->player->mo && mobj->target->player->health > 0 && !mobj->target->player->spectator) && (mobj->type == MT_DRIFT && mobj->target->player->kartstuff[k_driftcharge] >= dsone)) {