Revamp game pausing and input handling. Fix minigame tutorial and end sequence. (#39)
- Revamp pausing and centralize management in GameManager - Switch Pause implementation to be counter-based to solve corner case of multiple pause requests - Remove duplicated Pause logic from other components - Add pausing when browsing the card album - Fully deliver the exclusive UI implementation - Spruce up the MiniGame tutorial with correct pausing, hiding other UI - Correctly unpause after showing tutorial - Fix minigame ending sequence. The cinematic correctly plays only once now - Replaying the minigame works Co-authored-by: Michal Adam Pikulski <michal@foolhardyhorizons.com> Co-authored-by: Michal Pikulski <michal@foolhardyhorizons.com> Reviewed-on: #39
This commit is contained in:
@@ -59,12 +59,6 @@ namespace Minigames.DivingForPictures
|
||||
private float _screenNormalizationFactor = 1.0f;
|
||||
private IDivingMinigameSettings _settings;
|
||||
|
||||
// Pause state
|
||||
private bool _isPaused = false;
|
||||
|
||||
// IPausable implementation
|
||||
public bool IsPaused => _isPaused;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_collider = GetComponent<Collider2D>();
|
||||
@@ -124,7 +118,7 @@ namespace Minigames.DivingForPictures
|
||||
private void OnEnable()
|
||||
{
|
||||
// Only start coroutines if not paused
|
||||
if (!_isPaused)
|
||||
if (!GameManager.Instance.IsPaused)
|
||||
{
|
||||
StartObstacleCoroutines();
|
||||
}
|
||||
@@ -143,9 +137,6 @@ namespace Minigames.DivingForPictures
|
||||
/// </summary>
|
||||
public void Pause()
|
||||
{
|
||||
if (_isPaused) return; // Already paused
|
||||
|
||||
_isPaused = true;
|
||||
StopObstacleCoroutines();
|
||||
|
||||
Logging.Debug($"[FloatingObstacle] Paused obstacle: {name}");
|
||||
@@ -156,9 +147,6 @@ namespace Minigames.DivingForPictures
|
||||
/// </summary>
|
||||
public void DoResume()
|
||||
{
|
||||
if (!_isPaused) return; // Already running
|
||||
|
||||
_isPaused = false;
|
||||
StartObstacleCoroutines();
|
||||
|
||||
Logging.Debug($"[FloatingObstacle] Resumed obstacle: {name}");
|
||||
|
||||
Reference in New Issue
Block a user