r_things.cpp: Fix highresscale for custom skins interacting badly with Linkdraw on the player (bubble shield, etc)
This commit is contained in:
parent
2baf834265
commit
2686503602
1 changed files with 3 additions and 10 deletions
|
|
@ -1012,10 +1012,6 @@ static void R_DrawVisSprite(vissprite_t *vis)
|
|||
frac = vis->startfrac;
|
||||
windowtop = windowbottom = sprbotscreen = INT32_MAX;
|
||||
|
||||
skin_t *myskin = ((skin_t *)vis->mobj->skin);
|
||||
if (!(vis->cut & SC_PRECIP) && (vis->mobj->skin) && myskin->highresscale != FRACUNIT)
|
||||
this_scale = FixedMul(this_scale, myskin->highresscale);
|
||||
|
||||
if (this_scale <= 0)
|
||||
this_scale = 1;
|
||||
|
||||
|
|
@ -1506,8 +1502,6 @@ static void R_ProjectDropShadow(
|
|||
shadow->gzt = groundz + patch->height * shadowyscale / 2;
|
||||
shadow->gz = shadow->gzt - patch->height * 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->shear.tan = shadowskew; // repurposed variable
|
||||
|
||||
|
|
@ -1756,6 +1750,8 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
R_InterpolateMobjState(interptarg, R_GetTimeFrac(RTF_LEVEL), &interp);
|
||||
|
||||
this_scale = interp.scale;
|
||||
if (thing->skin && ((skin_t *)thing->skin)->highresscale != FRACUNIT)
|
||||
this_scale = FixedMul(this_scale, ((skin_t *)thing->skin)->highresscale);
|
||||
|
||||
// sprite offset
|
||||
interp.x += thing->sprxoff;
|
||||
|
|
@ -1877,9 +1873,6 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
|
||||
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_height = spritecachedinfo[lump].height;
|
||||
spr_offset = spritecachedinfo[lump].offset;
|
||||
|
|
@ -2373,7 +2366,7 @@ static void R_ProjectSprite(mobj_t *thing)
|
|||
|
||||
vis->xscale = FixedMul(spritexscale, xscale); //SoM: 4/17/2000
|
||||
vis->scale = FixedMul(spriteyscale, yscale); //<<detailshift;
|
||||
vis->thingscale = interp.scale;
|
||||
vis->thingscale = this_scale;
|
||||
|
||||
vis->spritexscale = spritexscale;
|
||||
vis->spriteyscale = spriteyscale;
|
||||
|
|
|
|||
Loading…
Reference in a new issue