From 2e7141b54ac0269556c0a57beb525a8738522139 Mon Sep 17 00:00:00 2001 From: lachablock Date: Tue, 6 Jul 2021 18:56:45 +1000 Subject: [PATCH] Use tracer's color for uncolored objects flagged with MF2_LINKDRAW --- src/hardware/hw_main.c | 5 ++++- src/r_things.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/hardware/hw_main.c b/src/hardware/hw_main.c index b78642975..a1b8a61bc 100644 --- a/src/hardware/hw_main.c +++ b/src/hardware/hw_main.c @@ -5332,7 +5332,10 @@ static void HWR_ProjectSprite(mobj_t *thing) vis->gpatch = (patch_t *)W_CachePatchNum(sprframe->lumppat[rot], PU_SPRITE); vis->mobj = thing; - vis->color = thing->color; + if ((thing->flags2 & MF2_LINKDRAW) && thing->tracer && thing->color == SKINCOLOR_NONE) + vis->color = thing->tracer->color; + else + vis->color = thing->color; //Hurdler: 25/04/2000: now support colormap in hardware mode if ((vis->mobj->flags & (MF_ENEMY|MF_BOSS)) && (vis->mobj->flags2 & MF2_FRET) && !(vis->mobj->flags & MF_GRENADEBOUNCE) && (leveltime & 1)) // Bosses "flash" diff --git a/src/r_things.c b/src/r_things.c index 6c7557cd1..a22c6e2cc 100644 --- a/src/r_things.c +++ b/src/r_things.c @@ -1962,7 +1962,10 @@ static void R_ProjectSprite(mobj_t *thing) vis->shear.offset = 0; vis->mobj = thing; // Easy access! Tails 06-07-2002 - vis->color = oldthing->color; + if ((oldthing->flags2 & MF2_LINKDRAW) && oldthing->tracer && oldthing->color == SKINCOLOR_NONE) + vis->color = oldthing->tracer->color; + else + vis->color = oldthing->color; vis->x1 = x1 < portalclipstart ? portalclipstart : x1; vis->x2 = x2 >= portalclipend ? portalclipend-1 : x2;