I need a pausing/commanding mode in games like FTL, I do have a grid based movement/targetting etc logic
I do have 2 things in my mind first is abstracting DeltaTime on a system if that system would be paused like Movements
public static class GameTime {
public static float DeltaTime => GameManager.IsPaused ? 0f : Time.deltaTime;
}
Second is an interface that'll manage each system and call SimTick() if not paused
public interface ISimulatable { void SimTick(float dt); }
what do you guys think is better and why?