- Fade cancelling should only always be active for A_SetBlend fades, not always for everything else (such as ACS fades).

This commit is contained in:
Major Cooke 2017-12-27 22:24:23 -06:00 committed by Rachael Alexanderson
commit 10465c1d27
3 changed files with 7 additions and 5 deletions

View file

@ -50,16 +50,17 @@ DFlashFader::DFlashFader ()
DFlashFader::DFlashFader (float r1, float g1, float b1, float a1,
float r2, float g2, float b2, float a2,
float time, AActor *who)
float time, AActor *who, bool terminate)
: TotalTics ((int)(time*TICRATE)), StartTic (level.time), ForWho (who)
{
Blends[0][0]=r1; Blends[0][1]=g1; Blends[0][2]=b1; Blends[0][3]=a1;
Blends[1][0]=r2; Blends[1][1]=g2; Blends[1][2]=b2; Blends[1][3]=a2;
Terminate = terminate;
}
void DFlashFader::OnDestroy ()
{
Blends[1][3] = 0.f; // Needed in order to cancel out the secondary fade.
if (Terminate) Blends[1][3] = 0.f; // Needed in order to cancel out the secondary fade.
SetBlend (1.f);
Super::OnDestroy();
}