import '../../home/home_screen.dart' show formatPop; import '../eclipse_data.dart'; import '../../../core/i18n/app_locale.dart'; /// 티커 한 줄의 문구. /// /// Figma 홈 상단 라이브 띠의 문장 형식을 그대로 쓴다 — /// *「[LIVE] …님의 아이템 사용으로 버프가 발동되었습니다!」*. /// 이클립스 방어 참여는 같은 형식에 **참여량**을 싣는다. POP 이 아니다 — 방어는 /// POP 을 소모하지 않는 공동 Shake 참여다(설계서 v1.1 §9-#5). /// /// **문구를 만드는 곳을 한 곳에 둔다.** 홈 티커와 갤럭시 섬광 배너가 각자 문장을 /// 조립하면 같은 이벤트가 두 화면에서 다르게 읽힌다. /// /// 별첨 B 「Global Ticker」로 Eclipse 외의 종류가 뒤에 들어오므로 종류마다 한 줄씩 /// 늘려 간다. 모르는 종류는 공지로 읽어 티커가 멈추지 않게 한다. String liveEventMessage(LiveEvent event) => switch (event.kind) { LiveEventKind.eclipseDefense => appL10n.liveEclipseDefense(event.nickname, formatPop(event.defense)), LiveEventKind.artistHotTime => appL10n.liveHotTime(event.nickname), LiveEventKind.heroGift => appL10n.liveHeroGift(event.nickname), LiveEventKind.campaign => appL10n.liveCampaign(event.nickname), LiveEventKind.notice => '[LIVE] ${event.nickname}', };