aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2026-04-16 23:42:42 -0700
committerPinapelz <yukais@pinapelz.com>2026-04-16 23:42:42 -0700
commit29fefe94613e4ff8f63c7a1871af8fdf0cd4f656 (patch)
treeca1c0146aca09d30a5a6f913a54d54a7eec175a2
parent8aa07787a4ba0e0659e3596e3cd0a12dc9f2b929 (diff)
type: make bga opacity setting persist site-wideindex
-rw-r--r--src/app/game/page.tsx19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/app/game/page.tsx b/src/app/game/page.tsx
index 02ea319..dc0d93d 100644
--- a/src/app/game/page.tsx
+++ b/src/app/game/page.tsx
@@ -122,19 +122,18 @@ function GameInner() {
const [clearShowing, setClearShowing] = useState(false);
const [comboAnimKey, setComboAnimKey] = useState(0);
const [countdown, setCountdown] = useState(0);
- const [backgroundOpacity, setBackgroundOpacity] = useState(0);
+ const [backgroundOpacity, setBackgroundOpacity] = useState(() => {
+ if (typeof window === "undefined") return 0;
+ const stored = localStorage.getItem(BACKGROUND_OPACITY_KEY);
+ if (stored === null) return 0;
+ const parsed = Number(stored);
+ if (!Number.isFinite(parsed)) return 0;
+ return Math.min(100, Math.max(0, parsed));
+ });
const [skipBacking, setSkipBacking] = useState(false);
const isVideo = useMemo(() => isVideoUrl(audioUrl), [audioUrl]);
- useEffect(() => {
- const stored = localStorage.getItem(BACKGROUND_OPACITY_KEY);
- if (stored === null) return;
- const parsed = Number(stored);
- if (Number.isFinite(parsed)) {
- const clamped = Math.min(100, Math.max(0, parsed));
- setBackgroundOpacity(clamped);
- }
- }, []);
+
useEffect(() => {
localStorage.setItem(BACKGROUND_OPACITY_KEY, String(backgroundOpacity));
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage