diff --git a/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift b/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift index af20c37..4cc741d 100644 --- a/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift +++ b/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift @@ -2100,10 +2100,24 @@ final class LiveRoomViewModel: NSObject, ObservableObject { startParticlesTimer() return } - // 그 외(원격 수신 포함): 1초간 물 채우기 → 폭발 파편 애니메이션 - startRemoteWaterFill(duration: 1.0) { [weak self] in - self?.spawnHeartExplosion() - self?.startParticlesTimer() + // 요구사항 변경: 물 채우기(1초) 연출 제거. + // 가득 찬 하트를 잠깐(0.15초) 보여준 뒤 폭발 이펙트를 실행. + DispatchQueue.main.async { [weak self] in + guard let self = self else { return } + self.remoteWaterTimer?.cancel() + self.remoteWaterTimer = nil + self.remoteWavePhase = 0 + self.remoteWaterProgress = 1.0 + self.isShowRemoteBigHeart = true + DEBUG_LOG("BIG_HEART: show filled heart, then explode after 0.15s") + DispatchQueue.main.asyncAfter(deadline: .now() + 0.15) { [weak self] in + guard let self = self else { return } + self.isShowRemoteBigHeart = false + self.remoteWaterProgress = 0 + self.remoteWavePhase = 0 + self.spawnHeartExplosion() + self.startParticlesTimer() + } } }