updated transition system to be more intuitive

This commit is contained in:
2018-11-11 12:45:37 -06:00
parent 04f8fbd8cd
commit f3a3d31ad8
7 changed files with 74 additions and 78 deletions

View File

@@ -13,30 +13,31 @@ namespace RhythmBullet.Zer01HD.Game.Screens.Transitions
{
internal class FadeAwayTransition : IDisposable, ITransition
{
private const float TIME_REQUIRED = 2f;
private float time;
public Texture2D curtain;
public Rectangle curtainSize;
private Color color;
private float progR, progG, progB, progA;
private float rR, rG, rB, rA;
internal FadeAwayTransition()
internal FadeAwayTransition(float time)
{
color = Color.White;
rR = (0 - 254) / TIME_REQUIRED;
rG = (0 - 254) / TIME_REQUIRED;
rB = (0 - 254) / TIME_REQUIRED;
rA = (0 - 254) / TIME_REQUIRED;
progA = color.A;
progR = color.R;
progG = color.G;
progB = color.B;
this.time = time;
}
public void InitiateTransition(Rectangle dimensions)
{
curtainSize = dimensions;
color = Color.White;
rR = (0 - 254) / time;
rG = (0 - 254) / time;
rB = (0 - 254) / time;
rA = (0 - 254) / time;
progA = color.A;
progR = color.R;
progG = color.G;
progB = color.B;
}
private bool Fade(float deltaf)