Merge branch 'dont-scale-gravity' into 'master'

Scale gravity with map scale instead of object scale

See merge request KartKrew/Kart!513
This commit is contained in:
Sal 2022-01-04 04:22:42 +00:00
commit 20b1ddb4d3
2 changed files with 4 additions and 6 deletions

View file

@ -291,9 +291,7 @@ static boolean P_SpecialIsLinedefCrossType(line_t *ld)
// //
boolean P_DoSpring(mobj_t *spring, mobj_t *object) boolean P_DoSpring(mobj_t *spring, mobj_t *object)
{ {
//INT32 pflags; const fixed_t scaleVal = FixedSqrt(FixedMul(mapobjectscale, spring->scale));
const fixed_t hscale = mapobjectscale + (mapobjectscale - object->scale);
const fixed_t vscale = mapobjectscale + (object->scale - mapobjectscale);
fixed_t vertispeed = spring->info->mass; fixed_t vertispeed = spring->info->mass;
fixed_t horizspeed = spring->info->damage; fixed_t horizspeed = spring->info->damage;
UINT16 starcolor = (spring->info->painchance % numskincolors); UINT16 starcolor = (spring->info->painchance % numskincolors);
@ -370,13 +368,13 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object)
if (vertispeed) if (vertispeed)
{ {
object->momz = FixedMul(vertispeed, FixedSqrt(FixedMul(vscale, spring->scale))); object->momz = FixedMul(vertispeed, scaleVal);
} }
if (horizspeed) if (horizspeed)
{ {
angle_t finalAngle = spring->angle; angle_t finalAngle = spring->angle;
fixed_t finalSpeed = FixedMul(horizspeed, FixedSqrt(FixedMul(hscale, spring->scale))); fixed_t finalSpeed = FixedMul(horizspeed, scaleVal);
fixed_t objectSpeed; fixed_t objectSpeed;
if (object->player) if (object->player)

View file

@ -1201,7 +1201,7 @@ fixed_t P_GetMobjGravity(mobj_t *mo)
gravityadd = -((gravityadd/5) + (gravityadd/8)); gravityadd = -((gravityadd/5) + (gravityadd/8));
} }
gravityadd = FixedMul(gravityadd, mo->scale); gravityadd = FixedMul(gravityadd, mapobjectscale);
return gravityadd; return gravityadd;
} }