客户端rsa,冗余清理,bug修复,安卓build问题
This commit is contained in:
@@ -122,17 +122,13 @@ public class PauseManager : MonoBehaviour
|
||||
{
|
||||
Pause(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
Pause(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Keep existing Backspace quick-exit while paused.
|
||||
if (IsPaused && Input.GetKeyDown(KeyCode.Backspace))
|
||||
{
|
||||
Pause(false);
|
||||
ResumeImmediately(true);
|
||||
StartCoroutine(LoadSceneAsync("Main_main"));
|
||||
}
|
||||
}
|
||||
@@ -144,6 +140,7 @@ public class PauseManager : MonoBehaviour
|
||||
if (IsPaused) return;
|
||||
IsPaused = true;
|
||||
Time.timeScale = 0f;
|
||||
GameplayClock.Pause();
|
||||
OnPauseStateChanged?.Invoke(true);
|
||||
|
||||
// Startup flows call Pause(true) before real gameplay starts.
|
||||
@@ -192,11 +189,38 @@ public class PauseManager : MonoBehaviour
|
||||
if (!IsPaused) return;
|
||||
IsPaused = false;
|
||||
Time.timeScale = 1f;
|
||||
GameplayClock.Resume();
|
||||
OnPauseStateChanged?.Invoke(false);
|
||||
ShowOverlayAnimated(false);
|
||||
}
|
||||
}
|
||||
|
||||
private void ResumeImmediately(bool hideOverlay)
|
||||
{
|
||||
if (!IsPaused)
|
||||
{
|
||||
if (hideOverlay)
|
||||
{
|
||||
SetOverlayVisibleImmediate(false);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
IsPaused = false;
|
||||
Time.timeScale = 1f;
|
||||
GameplayClock.Resume();
|
||||
OnPauseStateChanged?.Invoke(false);
|
||||
|
||||
if (hideOverlay)
|
||||
{
|
||||
SetOverlayVisibleImmediate(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowOverlayAnimated(false);
|
||||
}
|
||||
}
|
||||
|
||||
public void TogglePause()
|
||||
{
|
||||
if (!CanPauseFromInput()) return;
|
||||
@@ -424,7 +448,11 @@ public class PauseManager : MonoBehaviour
|
||||
EnsureOverlayCanvasGroup();
|
||||
EnsureOverlayPanelRoot();
|
||||
|
||||
overlayRoot.SetActive(visible);
|
||||
// Keep the overlay hierarchy active even when hidden.
|
||||
// If PauseManager lives on overlayRoot or any of its children, deactivating the root
|
||||
// disables this component and all future ESC input stops working.
|
||||
if (!overlayRoot.activeSelf)
|
||||
overlayRoot.SetActive(true);
|
||||
if (overlayCanvasGroup != null)
|
||||
{
|
||||
overlayCanvasGroup.alpha = visible ? 1f : 0f;
|
||||
@@ -530,8 +558,8 @@ public class PauseManager : MonoBehaviour
|
||||
if (overlayPanelRoot != null)
|
||||
overlayPanelRoot.localScale = targetScale;
|
||||
|
||||
if (!show)
|
||||
overlayRoot.SetActive(false);
|
||||
// Do not deactivate overlayRoot here; hiding via CanvasGroup is enough and keeps
|
||||
// PauseManager alive for subsequent ESC presses.
|
||||
|
||||
overlayFadeCoroutine = null;
|
||||
}
|
||||
@@ -571,16 +599,13 @@ public class PauseManager : MonoBehaviour
|
||||
}
|
||||
|
||||
// Resume chart + music.
|
||||
Pause(false);
|
||||
ResumeImmediately(false);
|
||||
continueCoroutine = null;
|
||||
}
|
||||
|
||||
private IEnumerator ReplayFromPauseCoroutine()
|
||||
{
|
||||
SetOverlayVisibleImmediate(false);
|
||||
IsPaused = false;
|
||||
Time.timeScale = 1f;
|
||||
try { OnPauseStateChanged?.Invoke(false); } catch { }
|
||||
ResumeImmediately(true);
|
||||
|
||||
var bmm = SceneObjectLookupCache.FindAny<BeatmapManager>();
|
||||
if (bmm != null && bmm.assignedSongData != null)
|
||||
@@ -596,10 +621,7 @@ public class PauseManager : MonoBehaviour
|
||||
|
||||
private IEnumerator ExitFromPauseCoroutine()
|
||||
{
|
||||
SetOverlayVisibleImmediate(false);
|
||||
IsPaused = false;
|
||||
Time.timeScale = 1f;
|
||||
try { OnPauseStateChanged?.Invoke(false); } catch { }
|
||||
ResumeImmediately(true);
|
||||
|
||||
string targetScene = ExitSceneName;
|
||||
ArenaRoomService arenaRoomService = ArenaRoomService.Instance;
|
||||
|
||||
Reference in New Issue
Block a user