Files
sunrise/src/constants/lobby.ts
T

36 lines
1.3 KiB
TypeScript

import { LOCATION_ENABLED } from './locations.ts';
export const APP_NAME = '해보러가기';
export const LOBBY_CHARACTER = {
maxSize: 360,
widthFraction: 0.65,
heightFraction: 0.55,
marginFraction: 0,
heading: 160,
frameBottom: 0.75,
frameTop: 1.5,
minimumLightingAltitude: -3,
} as const;
export const LOBBY_SUNRISE = {
durationMs: 4500,
nightHoldMs: 300,
from: Date.parse('2026-11-06T05:40:00+09:00'),
to: Date.parse('2026-11-06T07:45:00+09:00'),
heading: 110,
pitch: 12,
fieldOfView: 40,
maxPixelRatio: 1.5,
maxExposure: 0.32,
} as const;
export const LOBBY_SERVERS = [
{ id: 'gwanaksan', name: '관악산 가기', description: '능선 위에서 함께 맞이하는 아침', enabled: LOCATION_ENABLED.gwanaksan },
{ id: 'hajodae', name: '하조대 가기', description: '바다와 소나무 사이로 떠오르는 해', enabled: LOCATION_ENABLED.hajodae },
{ id: 'gisamun', name: '기사문 해변 가기', description: '잔잔한 해변에서 기다리는 첫 햇살', enabled: LOCATION_ENABLED.gisamun },
] as const;
export const LOBBY = { endpoint: '/api/lobby', timeoutMs: 10000, channelName: '채널 1' } as const;
export interface LobbyData {
servers: typeof LOBBY_SERVERS;
channel: { id: string; name: string; capacity: number; players: number; available: boolean };
}