mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
r_things.cpp: Fix highresscale for custom skins interacting badly with Linkdraw on the player (bubble shield, etc)
This commit is contained in:
parent
d3382001b1
commit
4bcf7591af
1 changed files with 3 additions and 9 deletions
|
|
@ -998,9 +998,6 @@ static void R_DrawVisSprite(vissprite_t *vis)
|
||||||
frac = vis->startfrac;
|
frac = vis->startfrac;
|
||||||
windowtop = windowbottom = sprbotscreen = INT32_MAX;
|
windowtop = windowbottom = sprbotscreen = INT32_MAX;
|
||||||
|
|
||||||
if (!(vis->cut & SC_PRECIP) && vis->mobj->skin && ((skin_t *)vis->mobj->skin)->highresscale != FRACUNIT)
|
|
||||||
this_scale = FixedMul(this_scale, ((skin_t *)vis->mobj->skin)->highresscale);
|
|
||||||
|
|
||||||
if (this_scale <= 0)
|
if (this_scale <= 0)
|
||||||
this_scale = 1;
|
this_scale = 1;
|
||||||
|
|
||||||
|
|
@ -1507,8 +1504,6 @@ static void R_ProjectDropShadow(
|
||||||
shadow->gzt = groundz + patch->height * shadowyscale / 2;
|
shadow->gzt = groundz + patch->height * shadowyscale / 2;
|
||||||
shadow->gz = shadow->gzt - patch->height * shadowyscale;
|
shadow->gz = shadow->gzt - patch->height * shadowyscale;
|
||||||
shadow->texturemid = FixedMul(interp.scale, FixedDiv(shadow->gzt - viewz, shadowyscale));
|
shadow->texturemid = FixedMul(interp.scale, FixedDiv(shadow->gzt - viewz, shadowyscale));
|
||||||
if (thing->skin && ((skin_t *)thing->skin)->highresscale != FRACUNIT)
|
|
||||||
shadow->texturemid = FixedMul(shadow->texturemid, ((skin_t *)thing->skin)->highresscale);
|
|
||||||
shadow->scalestep = 0;
|
shadow->scalestep = 0;
|
||||||
shadow->shear.tan = shadowskew; // repurposed variable
|
shadow->shear.tan = shadowskew; // repurposed variable
|
||||||
|
|
||||||
|
|
@ -1800,6 +1795,8 @@ static void R_ProjectSprite(mobj_t *thing)
|
||||||
}
|
}
|
||||||
|
|
||||||
this_scale = interp.scale;
|
this_scale = interp.scale;
|
||||||
|
if (thing->skin && ((skin_t *)thing->skin)->highresscale != FRACUNIT)
|
||||||
|
this_scale = FixedMul(this_scale, ((skin_t *)thing->skin)->highresscale);
|
||||||
|
|
||||||
// hitlag vibrating
|
// hitlag vibrating
|
||||||
if (thing->hitlag > 0 && (thing->eflags & MFE_DAMAGEHITLAG))
|
if (thing->hitlag > 0 && (thing->eflags & MFE_DAMAGEHITLAG))
|
||||||
|
|
@ -1941,9 +1938,6 @@ static void R_ProjectSprite(mobj_t *thing)
|
||||||
|
|
||||||
I_Assert(lump < max_spritelumps);
|
I_Assert(lump < max_spritelumps);
|
||||||
|
|
||||||
if (thing->skin && ((skin_t *)thing->skin)->highresscale != FRACUNIT)
|
|
||||||
this_scale = FixedMul(this_scale, ((skin_t *)thing->skin)->highresscale);
|
|
||||||
|
|
||||||
spr_width = spritecachedinfo[lump].width;
|
spr_width = spritecachedinfo[lump].width;
|
||||||
spr_height = spritecachedinfo[lump].height;
|
spr_height = spritecachedinfo[lump].height;
|
||||||
spr_offset = spritecachedinfo[lump].offset;
|
spr_offset = spritecachedinfo[lump].offset;
|
||||||
|
|
@ -2525,7 +2519,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
||||||
|
|
||||||
vis->xscale = FixedMul(spritexscale, xscale); //SoM: 4/17/2000
|
vis->xscale = FixedMul(spritexscale, xscale); //SoM: 4/17/2000
|
||||||
vis->scale = FixedMul(spriteyscale, yscale); //<<detailshift;
|
vis->scale = FixedMul(spriteyscale, yscale); //<<detailshift;
|
||||||
vis->thingscale = interp.scale;
|
vis->thingscale = this_scale;
|
||||||
|
|
||||||
vis->spritexscale = spritexscale;
|
vis->spritexscale = spritexscale;
|
||||||
vis->spriteyscale = spriteyscale;
|
vis->spriteyscale = spriteyscale;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue