feat: add Phase 0 fun-pack scaffolding (intro, discovery, ad slot, sfx/haptic, sprite art)

- src/lib/sfx.ts: Web Audio rarity SFX synthesis + navigator.vibrate wrapper
- src/components/IntroSplash.tsx: 1.5s "당신이 세상의 첫 불꽃입니다" cold open
- src/components/DiscoveryHero.tsx: full-screen new-element reveal card
- src/components/AdBanner.tsx: rewarded-ad slot placeholder above tab bar
- src/platform/ads.ts: rewarded ad adapter (stub for Phase 1 SDK swap)
- src/assets/elements/: 4 base-element sprites + 8-frame animations + manifest

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-02 07:33:56 +09:00
parent ca6d6f15f8
commit 90ba98fbf7
48 changed files with 381 additions and 0 deletions

9
src/platform/ads.ts Normal file
View File

@@ -0,0 +1,9 @@
export interface RewardedAdResult {
rewarded: boolean;
}
export async function showRewardedAd(): Promise<RewardedAdResult> {
await new Promise((resolve) => window.setTimeout(resolve, 450));
return { rewarded: true };
}