'use client' import { create } from 'zustand' interface GameStore { tick: number tps: number fps: number gamemode: 'survival' | 'creative' | 'adventure' | 'spectator' difficulty: 'peaceful' | 'easy' | 'normal' | 'hard' paused: boolean loading: boolean debug: boolean setLoading: (v: boolean) => void setPaused: (v: boolean) => void setDebug: (v: boolean) => void setGamemode: (v: GameStore['gamemode']) => void updateFPS: (fps: number) => void tickGame: () => void } export const useGameStore = create((set, get) => ({ tick: 0, tps: 20, fps: 0, gamemode: 'creative', difficulty: 'normal', paused: false, loading: true, debug: false, setLoading: (v) => set({ loading: v }), setPaused: (v) => set({ paused: v }), setDebug: (v) => set({ debug: v }), setGamemode: (v) => set({ gamemode: v }), updateFPS: (fps) => set({ fps }), tickGame: () => set(s => ({ tick: s.tick + 1 })), }))