2018-09-11 00:05:34 -05:00
|
|
|
|
using Microsoft.Xna.Framework;
|
|
|
|
|
using Microsoft.Xna.Framework.Graphics;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
2018-09-16 01:37:48 -05:00
|
|
|
|
namespace RhythmBullet.Zer01HD.Utilities.UI
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
2018-10-31 23:58:26 -05:00
|
|
|
|
public enum ScreenState { EnterTransition, ExitTransition, Normal }
|
|
|
|
|
|
2018-09-15 13:15:32 -05:00
|
|
|
|
public class Screen
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
2018-10-31 23:58:26 -05:00
|
|
|
|
ScreenState state;
|
|
|
|
|
|
|
|
|
|
public Screen(bool useEnterTransition = false)
|
|
|
|
|
{
|
|
|
|
|
state = useEnterTransition ? ScreenState.EnterTransition : ScreenState.Normal;
|
|
|
|
|
}
|
|
|
|
|
|
2018-09-15 13:15:32 -05:00
|
|
|
|
public virtual void Update(GameTime gameTime)
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
2018-10-31 23:58:26 -05:00
|
|
|
|
|
2018-09-11 00:05:34 -05:00
|
|
|
|
}
|
|
|
|
|
|
2018-09-15 13:15:32 -05:00
|
|
|
|
public virtual void Draw(SpriteBatch spriteBatch)
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2018-10-31 23:58:26 -05:00
|
|
|
|
public virtual void EnteringTransition(double delta, bool assetsLoaded, ref Color backgroundColor)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public virtual Screen ExitingTransition(double delta, bool assetsLoaded, ref Color backgroundColor)
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
2018-09-15 13:15:32 -05:00
|
|
|
|
public virtual void Show()
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2018-09-15 13:15:32 -05:00
|
|
|
|
public virtual void Hide()
|
2018-09-11 00:05:34 -05:00
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
2018-09-11 16:26:38 -05:00
|
|
|
|
|
2018-10-30 18:29:54 -05:00
|
|
|
|
public virtual void AssetLoadStateChange(bool state)
|
2018-09-11 16:26:38 -05:00
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
2018-10-31 23:58:26 -05:00
|
|
|
|
|
|
|
|
|
public ScreenState State
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return state;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void DoneTransition()
|
|
|
|
|
{
|
|
|
|
|
state = ScreenState.Normal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void StartExitTransition()
|
|
|
|
|
{
|
|
|
|
|
state = ScreenState.ExitTransition;
|
|
|
|
|
}
|
2018-09-11 00:05:34 -05:00
|
|
|
|
}
|
|
|
|
|
}
|