import { createGuest } from "../logic/players.js"; import { randomStatus } from "../logic/random.js"; const STORAGE_KEY = "Guest"; const GUEST_COUNT = 18; function loadInitialGuests() { const stored = JSON.parse(localStorage.getItem(STORAGE_KEY)); if (stored && stored.length > 0) { return stored.map((g) => createGuest(Number(g.id), Boolean(Number(g.status)), Number(g.games)) ); } return Array.from({ length: GUEST_COUNT }, (_, i) => createGuest(i, randomStatus())); } let guests = $state(loadInitialGuests()); function persist() { localStorage.setItem(STORAGE_KEY, JSON.stringify(guests)); } if (!localStorage.getItem(STORAGE_KEY)) persist(); export function getGuests() { return guests; } export function activeGuests() { return guests.filter((g) => g.status); } export function toggleGuest(id) { const guest = guests.find((g) => g.id === id); if (!guest) return; guest.status = !guest.status; persist(); } export function incrementGuestGames(names) { for (const guest of guests) { if (names.includes(guest.name)) { guest.games += 1; } } persist(); }