27 lines
1.3 KiB
Dart
27 lines
1.3 KiB
Dart
import '../eclipse_data.dart';
|
|
import '../../../core/i18n/app_locale.dart';
|
|
|
|
/// 티커 한 줄의 문구.
|
|
///
|
|
/// Figma 홈 상단 라이브 띠의 문장 형식을 그대로 쓴다 —
|
|
/// *「[LIVE] …님의 아이템 사용으로 버프가 발동되었습니다!」*.
|
|
/// 이클립스 방어는 **합류 1회**만 싣고 Shake 횟수는 싣지 않는다 — UX·FX v1.5 §5.1 「다른 팬의 행동은
|
|
/// 개별 Shake 횟수를 모두 노출하지 않고 참여자 수 변화 중심」. 집약 수는 방어 화면의 유효 참여자 표시다.
|
|
///
|
|
/// **문구를 만드는 곳을 한 곳에 둔다.** 홈 티커와 갤럭시 섬광 배너가 각자 문장을
|
|
/// 조립하면 같은 이벤트가 두 화면에서 다르게 읽힌다.
|
|
///
|
|
/// 별첨 B 「Global Ticker」로 Eclipse 외의 종류가 뒤에 들어오므로 종류마다 한 줄씩
|
|
/// 늘려 간다. 모르는 종류는 공지로 읽어 티커가 멈추지 않게 한다.
|
|
String liveEventMessage(LiveEvent event) => switch (event.kind) {
|
|
LiveEventKind.eclipseDefense =>
|
|
appL10n.liveEclipseDefense(event.nickname),
|
|
LiveEventKind.artistHotTime =>
|
|
appL10n.liveHotTime(event.nickname),
|
|
LiveEventKind.heroGift =>
|
|
appL10n.liveHeroGift(event.nickname),
|
|
LiveEventKind.campaign =>
|
|
appL10n.liveCampaign(event.nickname),
|
|
LiveEventKind.notice => '[LIVE] ${event.nickname}',
|
|
};
|