diff --git a/src/doomdef.h b/src/doomdef.h index 3636a0d6..be0f81e7 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 8 // more precise version number +#define SUBVERSION 9 // more precise version number #define VERSIONSTRING "Development EXE" -#define VERSIONSTRINGW "v1.3.08" +#define VERSIONSTRINGW "v1.3.09" // most interface strings are ignored in development mode. // we use comprevision and compbranch instead. #else #define VERSION 103 // Game version -#define SUBVERSION 8 // more precise version number -#define VERSIONSTRING "DevEXE v1.3.08" -#define VERSIONSTRINGW L"v1.3.08" +#define SUBVERSION 9 // more precise version number +#define VERSIONSTRING "DevEXE v1.3.09" +#define VERSIONSTRINGW L"v1.3.09" // 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 a324b618..9cd182af 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -936,13 +936,13 @@ void K_SwapMomentum(mobj_t *mobj1, mobj_t *mobj2, boolean bounce) } if (mobj1->player && mobj2->player) // Weight is applicable if both are players { - fixed_t m1w = 7 + mobj1->player->kartweight; - fixed_t m2w = 7 + mobj2->player->kartweight; + fixed_t m1w = 15 + mobj1->player->kartweight; + fixed_t m2w = 15 + mobj2->player->kartweight; - newx = FixedMul(mobj1->momx, FixedDiv(m1w*FRACUNIT, m2w*FRACUNIT)); - newy = FixedMul(mobj1->momy, FixedDiv(m1w*FRACUNIT, m2w*FRACUNIT)); - mobj1->momx = FixedMul(mobj2->momx, FixedDiv(m2w*FRACUNIT, m1w*FRACUNIT)); - mobj1->momy = FixedMul(mobj2->momy, FixedDiv(m2w*FRACUNIT, m1w*FRACUNIT)); + newx = FixedMul(mobj1->momy, FixedDiv(m1w*FRACUNIT, m2w*FRACUNIT)); + newy = FixedMul(mobj1->momx, FixedDiv(m1w*FRACUNIT, m2w*FRACUNIT)); + mobj1->momx = FixedMul(mobj2->momy, FixedDiv(m2w*FRACUNIT, m1w*FRACUNIT)); + mobj1->momy = FixedMul(mobj2->momx, FixedDiv(m2w*FRACUNIT, m1w*FRACUNIT)); } else { @@ -1950,8 +1950,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 } - // 90*player->kartstuff[k_drift]; = 450 - basedrift = 94*player->kartstuff[k_drift] - driftweight*player->kartstuff[k_drift]/3; + //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; driftangle = abs((252 - driftweight)*player->kartstuff[k_drift]/5); return basedrift + FixedMul(driftangle, countersteer); @@ -1988,8 +1989,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 = 49 + player->kartspeed*2; // 50 - 67 - fixed_t dstwo = dsone*2; // 100 - 134 + fixed_t dsone = 52 + player->kartspeed; // 53 - 61 + fixed_t dstwo = dsone*2; // 106 - 122 // Drifting is actually straffing + automatic turning. // Holding the Jump button will enable drifting. diff --git a/src/p_mobj.c b/src/p_mobj.c index f02633ee..6f0b14a2 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 = 49 + mobj->target->player->kartspeed*2; // 50 - 67 - fixed_t dstwo = dsone*2; // 100 - 134 + fixed_t dsone = 52 + mobj->target->player->kartspeed; // 53 - 61 + fixed_t dstwo = dsone*2; // 106 - 122 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)) {