diff --git a/assets/data/stages/philly.hx b/assets/data/stages/philly.hx index 6b120b510..39c5d1c29 100644 --- a/assets/data/stages/philly.hx +++ b/assets/data/stages/philly.hx @@ -22,6 +22,7 @@ function create() { // defaultCamZoom = 0.5; phillyTrain.moves = true; // Def value false in funkinsprite light.color = colors[curColor]; + lightGlow.color = light.color; trainSound = FlxG.sound.load(Paths.sound("train_passes")); } @@ -32,6 +33,7 @@ function beatHit(curBeat:Int) { if (newColor >= curColor) newColor++; curColor = newColor; light.color = colors[curColor]; + lightGlow.color = light.color; } if (!trainMoving) @@ -50,6 +52,8 @@ function update(elapsed:Float) { else light.alpha = 0; + lightGlow.alpha = light.alpha - 0.25; + if (trainMoving) { updateTrainPos(); } @@ -69,7 +73,7 @@ function updateTrainPos():Void if (trainSound.time >= 4700) { startedMoving = true; - gf.playAnim('hairBlow'); + if (gf != null) gf.playAnim('hairBlow'); } if (startedMoving) @@ -100,4 +104,4 @@ function trainReset():Void trainFinishing = false; startedMoving = false; phillyTrain.velocity.x = 0; -} \ No newline at end of file +} diff --git a/assets/data/stages/philly.xml b/assets/data/stages/philly.xml index e3cc8bc3e..ec191c22b 100644 --- a/assets/data/stages/philly.xml +++ b/assets/data/stages/philly.xml @@ -3,7 +3,10 @@ - - - - \ No newline at end of file + + + + + + + diff --git a/assets/images/stages/philly/winGlow.png b/assets/images/stages/philly/winGlow.png new file mode 100644 index 000000000..617a44242 Binary files /dev/null and b/assets/images/stages/philly/winGlow.png differ diff --git a/assets/songs/monster/scripts/vignette.hx b/assets/songs/monster/scripts/vignette.hx new file mode 100644 index 000000000..f7ca6ffb3 --- /dev/null +++ b/assets/songs/monster/scripts/vignette.hx @@ -0,0 +1,24 @@ +function create() { + if (!Options.gameplayShaders) { + disableScript(); + return; + } + vignette = new CustomShader('coloredVignette'); + vignette.color = [0, 0, 0]; + vignette.amount = 1; + vignette.strength = 1 - (health / 2) / 1.5; + camGame.addShader(vignette); +} + +function update(elapsed:Float) { + var bg = stage.stageSprites.get('bg'); + var targetStrength:Float = 1 - (health / 2) / 1.5; + if (bg.animation.name == 'lightning' && !bg.animation.finished) + vignette.strength = 0.075; + else + vignette.strength = lerp(vignette.strength, targetStrength, 0.1); +} + +function onGameOver() { + FlxTween.tween(vignette, {"strength": 0.075}, 1, {ease: FlxEase.quadOut}); +}