Files
AbdulandGitHub a2441db455 Update tiny samples to 0.29 preview (#14)
* Update tiny samples to 0.29 preview

* Add project settings
2020-08-25 21:23:11 -07:00

46 lines
1.2 KiB
C#

using Unity.Entities;
namespace Unity.TinyGems
{
public class EndOfGameSystem : SystemBase
{
private const double k_WaitingTime = 2d;
private GameState m_GameState = GameState.None;
private double m_StartTime = 0d;
protected override void OnCreate()
{
base.OnCreate();
RequireSingletonForUpdate<GameStateData>();
RequireSingletonForUpdate<ActiveScene>();
}
protected override void OnUpdate()
{
var gameState = GetSingleton<GameStateData>();
if (gameState.State != GameState.GameOver)
return;
if (m_GameState != gameState.State)
{
m_StartTime = Time.ElapsedTime;
m_GameState = gameState.State;
}
if (Time.ElapsedTime - m_StartTime > k_WaitingTime)
{
gameState.State = GameState.None;
SetSingleton(gameState);
var activeScene = GetSingleton<ActiveScene>();
activeScene.Value = Scenes.Title;
SetSingleton(activeScene);
m_GameState = GameState.None;
}
}
}
}