1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-11-05 06:14:36 +00:00

MOVING ANIMATIONS LOL

This commit is contained in:
Cameron Taylor 2021-04-18 05:25:44 -04:00
parent 75fa0dcada
commit 6f840a9b40
4 changed files with 234 additions and 217 deletions

View file

@ -105,10 +105,13 @@ class GameOverSubstate extends MusicBeatSubstate
if (bf.animation.curAnim.name == 'firstDeath' && bf.animation.curAnim.finished && !playingDeathSound)
{
playingDeathSound = true;
bf.startedDeath = true;
coolStartDeath(0.2);
FlxG.sound.play(Paths.sound('jeffGameover/jeffGameover-' + randomGameover), 1, false, null, true, function()
{
bf.startedDeath = true;
coolStartDeath();
FlxG.sound.music.fadeIn(4, 0.2, 1);
});
}
default:
@ -125,9 +128,9 @@ class GameOverSubstate extends MusicBeatSubstate
}
}
private function coolStartDeath():Void
private function coolStartDeath(?vol:Float = 1):Void
{
FlxG.sound.playMusic(Paths.music('gameOver' + stageSuffix));
FlxG.sound.playMusic(Paths.music('gameOver' + stageSuffix), vol);
}
override function beatHit()

View file

@ -563,6 +563,7 @@ class PlayState extends MusicBeatState
tankGround = new BGSprite('tankRolling', 300, 300, 0.5, 0.5, ['BG tank w lighting'], true);
add(tankGround);
tankGround.active = false;
tankmanRun = new FlxTypedGroup<TankmenBG>();
add(tankmanRun);
@ -579,7 +580,7 @@ class PlayState extends MusicBeatState
var fgTank0:BGSprite = new BGSprite('tank0', -500, 650, 1.7, 1.5, ['fg']);
foregroundSprites.add(fgTank0);
var fgTank1:BGSprite = new BGSprite('tank1', -300, 700, 2, 0.2, ['fg']);
var fgTank1:BGSprite = new BGSprite('tank1', -300, 750, 2, 0.2, ['fg']);
foregroundSprites.add(fgTank1);
// just called 'foreground' just cuz small inconsistency no bbiggei
@ -592,7 +593,7 @@ class PlayState extends MusicBeatState
var fgTank5:BGSprite = new BGSprite('tank5', 1800, 900, 1.5, 1.5, ['fg']);
foregroundSprites.add(fgTank5);
var fgTank3:BGSprite = new BGSprite('tank3', 1300, 1430, 3.5, 2.5, ['fg']);
var fgTank3:BGSprite = new BGSprite('tank3', 1300, 1400, 3.5, 2.5, ['fg']);
foregroundSprites.add(fgTank3);
default:
@ -1098,13 +1099,24 @@ class PlayState extends MusicBeatState
{
inCutscene = true;
// for story mode shit
camFollow.setPosition(camPos.x, camPos.y);
var vid:FlxVideo = new FlxVideo('music/stressCutscene.mp4');
vid.finishCallback = function()
{
FlxTween.tween(FlxG.camera, {zoom: defaultCamZoom}, (Conductor.crochet / 1000) * 5, {ease: FlxEase.quadInOut});
startCountdown();
cameraMovement();
};
var dummyLoaderShit:FlxGroup = new FlxGroup();
add(dummyLoaderShit);
/*
camHUD.visible = false;
// for story mode shit
camFollow.setPosition(camPos.x, camPos.y);
var dummyLoaderShit:FlxGroup = new FlxGroup();
add(dummyLoaderShit);
for (i in 0...7)
{
var dummyLoader:FlxSprite = new FlxSprite();
@ -1115,223 +1127,221 @@ class PlayState extends MusicBeatState
// dummyLoader.drawFrame(true);
}
*/
dad.visible = false;
dad.visible = false;
// gf.y += 300;
gf.alpha = 0.01;
// gf.y += 300;
gf.alpha = 0.01;
var gfTankmen:FlxSprite = new FlxSprite(210, 70);
gfTankmen.frames = Paths.getSparrowAtlas('characters/gfTankmen');
gfTankmen.animation.addByPrefix('loop', 'GF Dancing at Gunpoint', 24, true);
gfTankmen.animation.play('loop');
gfTankmen.antialiasing = true;
gfCutsceneLayer.add(gfTankmen);
var gfTankmen:FlxSprite = new FlxSprite(210, 70);
gfTankmen.frames = Paths.getSparrowAtlas('characters/gfTankmen');
gfTankmen.animation.addByPrefix('loop', 'GF Dancing at Gunpoint', 24, true);
gfTankmen.animation.play('loop');
gfTankmen.antialiasing = true;
gfCutsceneLayer.add(gfTankmen);
var tankCutscene:TankCutscene = new TankCutscene(-70, 320);
tankCutscene.frames = Paths.getSparrowAtlas('cutsceneStuff/tankTalkSong3-pt1');
tankCutscene.animation.addByPrefix('tankyguy', 'TANK TALK 3 P1 UNCUT', 24, false);
// tankCutscene.animation.addByPrefix('weed', 'sexAmbig', 24, false);
tankCutscene.animation.play('tankyguy');
var tankCutscene:TankCutscene = new TankCutscene(-70, 320);
tankCutscene.frames = Paths.getSparrowAtlas('cutsceneStuff/tankTalkSong3-pt1');
tankCutscene.animation.addByPrefix('tankyguy', 'TANK TALK 3 P1 UNCUT', 24, false);
// tankCutscene.animation.addByPrefix('weed', 'sexAmbig', 24, false);
tankCutscene.animation.play('tankyguy');
tankCutscene.antialiasing = true;
bfTankCutsceneLayer.add(tankCutscene); // add();
tankCutscene.antialiasing = true;
bfTankCutsceneLayer.add(tankCutscene); // add();
var alsoTankCutscene:FlxSprite = new FlxSprite(20, 320);
alsoTankCutscene.frames = Paths.getSparrowAtlas('cutsceneStuff/tankTalkSong3-pt2');
alsoTankCutscene.animation.addByPrefix('swagTank', 'TANK TALK 3 P2 UNCUT', 24, false);
alsoTankCutscene.antialiasing = true;
var alsoTankCutscene:FlxSprite = new FlxSprite(20, 320);
alsoTankCutscene.frames = Paths.getSparrowAtlas('cutsceneStuff/tankTalkSong3-pt2');
alsoTankCutscene.animation.addByPrefix('swagTank', 'TANK TALK 3 P2 UNCUT', 24, false);
alsoTankCutscene.antialiasing = true;
bfTankCutsceneLayer.add(alsoTankCutscene);
bfTankCutsceneLayer.add(alsoTankCutscene);
alsoTankCutscene.y = FlxG.height + 100;
alsoTankCutscene.y = FlxG.height + 100;
camFollow.setPosition(gf.x + 350, gf.y + 560);
FlxG.camera.focusOn(camFollow.getPosition());
boyfriend.visible = false;
var fakeBF:Character = new Character(boyfriend.x, boyfriend.y, 'bf', true);
bfTankCutsceneLayer.add(fakeBF);
// var atlasCutscene:Animation
// var animAssets:AssetManager = new AssetManager();
// var url = 'images/gfDemon';
// // animAssets.enqueueSingle(Paths.file(url + "/spritemap1.png"));
// // animAssets.enqueueSingle(Paths.file(url + "/spritemap1.json"));
// // animAssets.enqueueSingle(Paths.file(url + "/Animation.json"));
// animAssets.loadQueue(function(asssss:AssetManager)
// {
// var daAnim:Animation = asssss.createAnimation('GF Turnin Demon W Effect');
// FlxG.addChildBelowMouse(daAnim);
// });
var bfCatchGf:FlxSprite = new FlxSprite(boyfriend.x - 10, boyfriend.y - 90);
bfCatchGf.frames = Paths.getSparrowAtlas('cutsceneStuff/bfCatchesGF');
bfCatchGf.animation.addByPrefix('catch', 'BF catches GF', 24, false);
bfCatchGf.antialiasing = true;
add(bfCatchGf);
bfCatchGf.visible = false;
if (PreferencesMenu.getPref('censor-naughty'))
tankCutscene.startSyncAudio = FlxG.sound.play(Paths.sound('stressCutscene'));
else
{
tankCutscene.startSyncAudio = FlxG.sound.play(Paths.sound('song3censor'));
// cutsceneSound.loadEmbedded(Paths.sound('song3censor'));
var censor:FlxSprite = new FlxSprite();
censor.frames = Paths.getSparrowAtlas('cutsceneStuff/censor');
censor.animation.addByPrefix('censor', 'mouth censor', 24);
censor.animation.play('censor');
add(censor);
censor.visible = false;
//
new FlxTimer().start(4.6, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 160, dad.y + 180);
new FlxTimer().start(0.2, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(25.1, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 120, dad.y + 170);
new FlxTimer().start(0.9, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(30.7, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 210, dad.y + 190);
new FlxTimer().start(0.4, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(33.8, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 180, dad.y + 170);
new FlxTimer().start(0.6, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
}
// new FlxTimer().start(0.01, function(tmr) cutsceneSound.play()); // cutsceneSound.play();
// cutsceneSound.play();
// tankCutscene.startSyncAudio = cutsceneSound;
// tankCutscene.animation.curAnim.curFrame
FlxG.camera.zoom = defaultCamZoom * 1.15;
camFollow.x -= 200;
// cutsceneSound.onComplete = startCountdown;
// Cunt 1
new FlxTimer().start(31.5, function(cunt:FlxTimer)
{
camFollow.x += 400;
camFollow.y += 150;
FlxG.camera.zoom = defaultCamZoom * 1.4;
FlxTween.tween(FlxG.camera, {zoom: FlxG.camera.zoom + 0.1}, 0.5, {ease: FlxEase.elasticOut});
camFollow.setPosition(gf.x + 350, gf.y + 560);
FlxG.camera.focusOn(camFollow.getPosition());
boyfriend.playAnim('singUPmiss');
boyfriend.animation.finishCallback = function(animFinish:String)
boyfriend.visible = false;
var fakeBF:Character = new Character(boyfriend.x, boyfriend.y, 'bf', true);
bfTankCutsceneLayer.add(fakeBF);
// var atlasCutscene:Animation
// var animAssets:AssetManager = new AssetManager();
// var url = 'images/gfDemon';
// // animAssets.enqueueSingle(Paths.file(url + "/spritemap1.png"));
// // animAssets.enqueueSingle(Paths.file(url + "/spritemap1.json"));
// // animAssets.enqueueSingle(Paths.file(url + "/Animation.json"));
// animAssets.loadQueue(function(asssss:AssetManager)
// {
// var daAnim:Animation = asssss.createAnimation('GF Turnin Demon W Effect');
// FlxG.addChildBelowMouse(daAnim);
// });
var bfCatchGf:FlxSprite = new FlxSprite(boyfriend.x - 10, boyfriend.y - 90);
bfCatchGf.frames = Paths.getSparrowAtlas('cutsceneStuff/bfCatchesGF');
bfCatchGf.animation.addByPrefix('catch', 'BF catches GF', 24, false);
bfCatchGf.antialiasing = true;
add(bfCatchGf);
bfCatchGf.visible = false;
if (PreferencesMenu.getPref('censor-naughty'))
tankCutscene.startSyncAudio = FlxG.sound.play(Paths.sound('stressCutscene'));
else
{
camFollow.x -= 400;
camFollow.y -= 150;
FlxG.camera.zoom /= 1.4;
tankCutscene.startSyncAudio = FlxG.sound.play(Paths.sound('song3censor'));
// cutsceneSound.loadEmbedded(Paths.sound('song3censor'));
var censor:FlxSprite = new FlxSprite();
censor.frames = Paths.getSparrowAtlas('cutsceneStuff/censor');
censor.animation.addByPrefix('censor', 'mouth censor', 24);
censor.animation.play('censor');
add(censor);
censor.visible = false;
//
new FlxTimer().start(4.6, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 160, dad.y + 180);
new FlxTimer().start(0.2, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(25.1, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 120, dad.y + 170);
new FlxTimer().start(0.9, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(30.7, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 210, dad.y + 190);
new FlxTimer().start(0.4, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
new FlxTimer().start(33.8, function(censorTimer:FlxTimer)
{
censor.visible = true;
censor.setPosition(dad.x + 180, dad.y + 170);
new FlxTimer().start(0.6, function(endThing:FlxTimer)
{
censor.visible = false;
});
});
}
// new FlxTimer().start(0.01, function(tmr) cutsceneSound.play()); // cutsceneSound.play();
// cutsceneSound.play();
// tankCutscene.startSyncAudio = cutsceneSound;
// tankCutscene.animation.curAnim.curFrame
FlxG.camera.zoom = defaultCamZoom * 1.15;
camFollow.x -= 200;
// cutsceneSound.onComplete = startCountdown;
// Cunt 1
new FlxTimer().start(31.5, function(cunt:FlxTimer)
{
camFollow.x += 400;
camFollow.y += 150;
FlxG.camera.zoom = defaultCamZoom * 1.4;
FlxTween.tween(FlxG.camera, {zoom: FlxG.camera.zoom + 0.1}, 0.5, {ease: FlxEase.elasticOut});
FlxG.camera.focusOn(camFollow.getPosition());
boyfriend.playAnim('singUPmiss');
boyfriend.animation.finishCallback = function(animFinish:String)
{
camFollow.x -= 400;
camFollow.y -= 150;
FlxG.camera.zoom /= 1.4;
FlxG.camera.focusOn(camFollow.getPosition());
boyfriend.animation.finishCallback = null;
};
});
new FlxTimer().start(15.1, function(tmr:FlxTimer)
{
camFollow.y -= 170;
camFollow.x += 200;
FlxTween.tween(FlxG.camera, {zoom: FlxG.camera.zoom * 1.3}, 2.1, {
ease: FlxEase.quadInOut
boyfriend.animation.finishCallback = null;
};
});
new FlxTimer().start(2.2, function(swagTimer:FlxTimer)
new FlxTimer().start(15.1, function(tmr:FlxTimer)
{
// FlxTween.tween(FlxG.camera, {zoom: defaultCamZoom}, 0.7, {ease: FlxEase.elasticOut});
FlxG.camera.zoom = 0.8;
// camFollow.y -= 100;
boyfriend.visible = false;
bfCatchGf.visible = true;
bfCatchGf.animation.play('catch');
camFollow.y -= 170;
camFollow.x += 200;
FlxTween.tween(FlxG.camera, {zoom: FlxG.camera.zoom * 1.3}, 2.1, {
ease: FlxEase.quadInOut
});
bfTankCutsceneLayer.remove(fakeBF);
bfCatchGf.animation.finishCallback = function(anim:String)
new FlxTimer().start(2.2, function(swagTimer:FlxTimer)
{
bfCatchGf.visible = false;
boyfriend.visible = true;
// FlxTween.tween(FlxG.camera, {zoom: defaultCamZoom}, 0.7, {ease: FlxEase.elasticOut});
FlxG.camera.zoom = 0.8;
// camFollow.y -= 100;
boyfriend.visible = false;
bfCatchGf.visible = true;
bfCatchGf.animation.play('catch');
bfTankCutsceneLayer.remove(fakeBF);
bfCatchGf.animation.finishCallback = function(anim:String)
{
bfCatchGf.visible = false;
boyfriend.visible = true;
};
new FlxTimer().start(3, function(weedShitBaby:FlxTimer)
{
camFollow.y += 180;
camFollow.x -= 80;
});
new FlxTimer().start(2.3, function(gayLol:FlxTimer)
{
bfTankCutsceneLayer.remove(tankCutscene);
alsoTankCutscene.y = 320;
alsoTankCutscene.animation.play('swagTank');
// tankCutscene.animation.play('weed');
});
});
gf.visible = false;
var cutsceneShit:CutsceneCharacter = new CutsceneCharacter(210, 70, 'gfHoldup');
gfCutsceneLayer.add(cutsceneShit);
gfCutsceneLayer.remove(gfTankmen);
cutsceneShit.onFinish = function()
{
gf.alpha = 1;
gf.visible = true;
};
new FlxTimer().start(3, function(weedShitBaby:FlxTimer)
// add(cutsceneShit);
new FlxTimer().start(20, function(alsoTmr:FlxTimer)
{
camFollow.y += 180;
camFollow.x -= 80;
dad.visible = true;
bfTankCutsceneLayer.remove(alsoTankCutscene);
startCountdown();
remove(dummyLoaderShit);
dummyLoaderShit.destroy();
dummyLoaderShit = null;
gfCutsceneLayer.remove(cutsceneShit);
});
new FlxTimer().start(2.3, function(gayLol:FlxTimer)
{
bfTankCutsceneLayer.remove(tankCutscene);
alsoTankCutscene.y = 320;
alsoTankCutscene.animation.play('swagTank');
// tankCutscene.animation.play('weed');
});
});
gf.visible = false;
var cutsceneShit:CutsceneCharacter = new CutsceneCharacter(210, 70, 'gfHoldup');
gfCutsceneLayer.add(cutsceneShit);
gfCutsceneLayer.remove(gfTankmen);
cutsceneShit.onFinish = function()
{
gf.alpha = 1;
gf.visible = true;
};
// add(cutsceneShit);
new FlxTimer().start(20, function(alsoTmr:FlxTimer)
{
dad.visible = true;
bfTankCutsceneLayer.remove(alsoTankCutscene);
startCountdown();
remove(dummyLoaderShit);
dummyLoaderShit.destroy();
dummyLoaderShit = null;
gfCutsceneLayer.remove(cutsceneShit);
});
});
});*/
}
function initDiscord():Void
@ -1450,6 +1460,7 @@ class PlayState extends MusicBeatState
function startCountdown():Void
{
inCutscene = false;
camHUD.visible = true;
generateStaticArrows(0);
generateStaticArrows(1);
@ -2848,12 +2859,15 @@ class PlayState extends MusicBeatState
function moveTank():Void
{
var daAngleOffset:Float = 1;
tankAngle += FlxG.elapsed * tankSpeed;
tankGround.angle = tankAngle - 90 + 15;
if (!inCutscene)
{
var daAngleOffset:Float = 1;
tankAngle += FlxG.elapsed * tankSpeed;
tankGround.angle = tankAngle - 90 + 15;
tankGround.x = tankX + Math.cos(FlxAngle.asRadians((tankAngle * daAngleOffset) + 180)) * 1500;
tankGround.y = 1300 + Math.sin(FlxAngle.asRadians((tankAngle * daAngleOffset) + 180)) * 1100;
tankGround.x = tankX + Math.cos(FlxAngle.asRadians((tankAngle * daAngleOffset) + 180)) * 1500;
tankGround.y = 1300 + Math.sin(FlxAngle.asRadians((tankAngle * daAngleOffset) + 180)) * 1100;
}
}
var tankResetShit:Bool = false;

View file

@ -31,7 +31,7 @@ class OptionsState extends MusicBeatState
var options = addPage(Options, new OptionsMenu(false));
var preferences = addPage(Preferences, new PreferencesMenu());
var controls = addPage(Controls, new ControlsMenu());
var colors = addPage(Colors, new ColorsMenu());
// var colors = addPage(Colors, new ColorsMenu());
#if cpp
var mods = addPage(Mods, new ModMenu());
@ -41,7 +41,7 @@ class OptionsState extends MusicBeatState
{
options.onExit.add(exitToMainMenu);
controls.onExit.add(switchPage.bind(Options));
colors.onExit.add(switchPage.bind(Options));
// colors.onExit.add(switchPage.bind(Options));
preferences.onExit.add(switchPage.bind(Options));
#if cpp
@ -176,7 +176,7 @@ class OptionsMenu extends Page
add(items = new TextMenuList());
createItem('preferences', function() switchPage(Preferences));
createItem("controls", function() switchPage(Controls));
createItem('colors', function() switchPage(Colors));
// createItem('colors', function() switchPage(Colors));
#if cpp
createItem('mods', function() switchPage(Mods));
#end

View file

@ -30,7 +30,7 @@ class PreferencesMenu extends ui.OptionsState.Page
add(items = new TextMenuList());
createPrefItem('naughtyness', 'censor-naughty', false);
createPrefItem('naughtyness', 'censor-naughty', true);
createPrefItem('downscroll', 'downscroll', false);
createPrefItem('flashing menu', 'flashing-menu', true);
createPrefItem('Camera Zooming on Beat', 'camera-zoom', true);
@ -65,7 +65,7 @@ class PreferencesMenu extends ui.OptionsState.Page
public static function initPrefs():Void
{
preferenceCheck('censor-naughty', false);
preferenceCheck('censor-naughty', true);
preferenceCheck('downscroll', false);
preferenceCheck('flashing-menu', true);
preferenceCheck('camera-zoom', true);