diff --git a/Project.xml b/Project.xml index 80c962c90..498368897 100644 --- a/Project.xml +++ b/Project.xml @@ -2,7 +2,7 @@ - + diff --git a/source/DialogueBox.hx b/source/DialogueBox.hx index 62c1cb1f5..f9c443952 100644 --- a/source/DialogueBox.hx +++ b/source/DialogueBox.hx @@ -100,7 +100,7 @@ class DialogueBox extends FlxSpriteGroup box.animation.addByPrefix('normalOpen', 'Spirit Textbox spawn', 24, false); box.animation.addByIndices('normal', 'Spirit Textbox spawn', [11], "", 24); - var face:FlxSprite = new FlxSprite(180, 170).loadGraphic('assets/images/weeb/spiritFaceForward.png'); + var face:FlxSprite = new FlxSprite(320, 170).loadGraphic('assets/images/weeb/spiritFaceForward.png'); face.setGraphicSize(Std.int(face.width * 6)); add(face); } diff --git a/source/GameOverSubstate.hx b/source/GameOverSubstate.hx index 6a40b591f..eacd66880 100644 --- a/source/GameOverSubstate.hx +++ b/source/GameOverSubstate.hx @@ -23,6 +23,9 @@ class GameOverSubstate extends MusicBeatSubstate case 'school': stageSuffix = '-pixel'; daBf = 'bf-pixel-dead'; + case 'school-evil': + stageSuffix = '-pixel'; + daBf = 'bf-pixel-dead'; default: daBf = 'bf'; } diff --git a/source/PlayState.hx b/source/PlayState.hx index 1e27b93d9..cc869e5de 100644 --- a/source/PlayState.hx +++ b/source/PlayState.hx @@ -750,12 +750,6 @@ class PlayState extends MusicBeatState { switch (curSong.toLowerCase()) { - case 'senpai': - schoolIntro(doof); - case 'roses': - schoolIntro(doof); - case 'thorns': - schoolIntro(doof); default: startCountdown(); } @@ -770,9 +764,26 @@ class PlayState extends MusicBeatState black.scrollFactor.set(); add(black); - if (isStoryMode && SONG.song.toLowerCase() == 'roses') + var red:FlxSprite = new FlxSprite(-100, -100).makeGraphic(FlxG.width * 2, FlxG.height * 2, 0xFFff1b31); + red.scrollFactor.set(); + + var senpaiEvil:FlxSprite = new FlxSprite(); + senpaiEvil.frames = FlxAtlasFrames.fromSparrow('assets/images/weeb/senpaiCrazy.png', 'assets/images/weeb/senpaiCrazy.xml'); + senpaiEvil.animation.addByPrefix('idle', 'Senpai Pre Explosion', 24, false); + senpaiEvil.setGraphicSize(Std.int(senpaiEvil.width * 6)); + senpaiEvil.updateHitbox(); + senpaiEvil.screenCenter(); + + if (SONG.song.toLowerCase() == 'roses' || SONG.song.toLowerCase() == 'thorns') + { remove(black); + if (SONG.song.toLowerCase() == 'thorns') + { + add(red); + } + } + new FlxTimer().start(0.3, function(tmr:FlxTimer) { black.alpha -= 0.15; @@ -786,7 +797,41 @@ class PlayState extends MusicBeatState if (dialogueBox != null) { inCutscene = true; - add(dialogueBox); + + if (SONG.song.toLowerCase() == 'thorns') + { + add(senpaiEvil); + senpaiEvil.alpha = 0; + new FlxTimer().start(0.3, function(swagTimer:FlxTimer) + { + senpaiEvil.alpha += 0.15; + if (senpaiEvil.alpha < 1) + { + swagTimer.reset(); + } + else + { + senpaiEvil.animation.play('idle'); + FlxG.sound.play('assets/sounds/Senpai_Dies' + TitleState.soundExt, 1, false, null, true, function() + { + remove(senpaiEvil); + remove(red); + FlxG.camera.fade(FlxColor.WHITE, 0.01, true, function() + { + add(dialogueBox); + }, true); + }); + new FlxTimer().start(3.2, function(deadTime:FlxTimer) + { + FlxG.camera.fade(FlxColor.WHITE, 1.6, false); + }); + } + }); + } + else + { + add(dialogueBox); + } } else startCountdown();