Colorize opaque decals using the bleeding actor's blood color, if the 'Shaded' keyword is omitted from the DECALDEF.

This commit is contained in:
nashmuhandes 2020-03-16 07:00:10 +08:00 committed by Christoph Oelckers
commit 8facd5f3f3
3 changed files with 34 additions and 7 deletions

View file

@ -4967,8 +4967,10 @@ void P_TraceBleed(int damage, const DVector3 &pos, AActor *actor, DAngle angle,
bloodcolor.a = 1;
}
uint32_t bloodTrans = (bloodcolor != 0 ? actor->BloodTranslation : 0);
DImpactDecal::StaticCreate(actor->Level, bloodType, bleedtrace.HitPos,
bleedtrace.Line->sidedef[bleedtrace.Side], bleedtrace.ffloor, bloodcolor);
bleedtrace.Line->sidedef[bleedtrace.Side], bleedtrace.ffloor, bloodcolor, bloodTrans);
}
}
}