From 29ea4d3dc28ede560e931cf8d30a39b0bd8d0015 Mon Sep 17 00:00:00 2001 From: David Kotnik Date: Sat, 10 Jan 2026 13:38:26 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20FIX:=20Hide=20Polaroid=20frame?= =?UTF-8?q?=20during=20glitch!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ✅ GLITCH TRANSITION FIXED: - Frame fades out FIRST (100ms) - Then photo glitches alone - Chromatic aberration on photo only - Final photo fade out NO MORE WHITE SQUARE DURING GLITCH! 🎆 Next: Adding audio files... --- src/scenes/IntroScene.js | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/scenes/IntroScene.js b/src/scenes/IntroScene.js index d90d6684b..9e9ed4f29 100644 --- a/src/scenes/IntroScene.js +++ b/src/scenes/IntroScene.js @@ -573,18 +573,33 @@ class IntroScene extends Phaser.Scene { // GLITCH-OUT transition for next shot this.time.delayedCall(duration - 500, () => { if (this.currentPolaroid) { - // Glitch effect before fade + // First, quickly fade out the frame (so it doesn't show during glitch!) this.tweens.add({ - targets: [photo, frame], + targets: frame, + alpha: 0, + duration: 100 + }); + + // Then glitch effect on photo only + this.tweens.add({ + targets: photo, x: { from: photo.x - 10, to: photo.x + 10 }, duration: 50, repeat: 5, yoyo: true, onComplete: () => { - // Chromatic aberration effect + // Chromatic aberration effect (RGB flash) photo.setTint(0xff0000); this.time.delayedCall(50, () => photo.setTint(0x00ff00)); this.time.delayedCall(100, () => photo.setTint(0x0000ff)); + this.time.delayedCall(150, () => { + // Final fade out + this.tweens.add({ + targets: photo, + alpha: 0, + duration: 200 + }); + }); } }); }