From 7e52a76329b4030ef7646e3748ea2a9ecaabec4c Mon Sep 17 00:00:00 2001 From: MtH Date: Fri, 19 Mar 2021 18:13:41 +0100 Subject: [PATCH] quickAnimAdd() for all, fixes looping anims dad, pico looping idle fixed, they now dance on beat instead also adds animation.finish() after initial anims, so their anims on create don't get in the way of anims during countdown commented-out idea for senpai idle, as it's currently 2 beats long but not properly on beat --- source/BackgroundDancer.hx | 1 + source/BackgroundGirls.hx | 2 + source/Character.hx | 309 +++++++++++++++++-------------------- source/PlayState.hx | 3 +- 4 files changed, 146 insertions(+), 169 deletions(-) diff --git a/source/BackgroundDancer.hx b/source/BackgroundDancer.hx index a619dacc2..43a68c145 100644 --- a/source/BackgroundDancer.hx +++ b/source/BackgroundDancer.hx @@ -13,6 +13,7 @@ class BackgroundDancer extends FlxSprite animation.addByIndices('danceLeft', 'bg dancer sketch PINK', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], "", 24, false); animation.addByIndices('danceRight', 'bg dancer sketch PINK', [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29], "", 24, false); animation.play('danceLeft'); + animation.finish(); antialiasing = true; } diff --git a/source/BackgroundGirls.hx b/source/BackgroundGirls.hx index c37b16f91..1a6030362 100644 --- a/source/BackgroundGirls.hx +++ b/source/BackgroundGirls.hx @@ -16,6 +16,7 @@ class BackgroundGirls extends FlxSprite animation.addByIndices('danceRight', 'BG girls group', CoolUtil.numberArray(30, 15), "", 24, false); animation.play('danceLeft'); + animation.finish(); } var danceDir:Bool = false; @@ -25,6 +26,7 @@ class BackgroundGirls extends FlxSprite animation.addByIndices('danceLeft', 'BG fangirls dissuaded', CoolUtil.numberArray(14), "", 24, false); animation.addByIndices('danceRight', 'BG fangirls dissuaded', CoolUtil.numberArray(30, 15), "", 24, false); dance(); + animation.finish(); } public function dance():Void diff --git a/source/Character.hx b/source/Character.hx index ef8c3d96b..1547b2c4a 100644 --- a/source/Character.hx +++ b/source/Character.hx @@ -35,17 +35,17 @@ class Character extends FlxSprite // GIRLFRIEND CODE tex = Paths.getSparrowAtlas('characters/GF_assets'); frames = tex; - animation.addByPrefix('cheer', 'GF Cheer', 24, false); - animation.addByPrefix('singLEFT', 'GF left note', 24, false); - animation.addByPrefix('singRIGHT', 'GF Right Note', 24, false); - animation.addByPrefix('singUP', 'GF Up Note', 24, false); - animation.addByPrefix('singDOWN', 'GF Down Note', 24, false); + quickAnimAdd('cheer', 'GF Cheer'); + quickAnimAdd('singLEFT', 'GF left note'); + quickAnimAdd('singRIGHT', 'GF Right Note'); + quickAnimAdd('singUP', 'GF Up Note'); + quickAnimAdd('singDOWN', 'GF Down Note'); animation.addByIndices('sad', 'gf sad', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], "", 24, false); animation.addByIndices('danceLeft', 'GF Dancing Beat', [30, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], "", 24, false); animation.addByIndices('danceRight', 'GF Dancing Beat', [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29], "", 24, false); animation.addByIndices('hairBlow', "GF Dancing Beat Hair blowing", [0, 1, 2, 3], "", 24); animation.addByIndices('hairFall', "GF Dancing Beat Hair Landing", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "", 24, false); - animation.addByPrefix('scared', 'GF FEAR', 24); + animation.addByPrefix('scared', 'GF FEAR', 24, true); loadOffsetFile(curCharacter); @@ -54,17 +54,17 @@ class Character extends FlxSprite case 'gf-christmas': tex = Paths.getSparrowAtlas('christmas/gfChristmas'); frames = tex; - animation.addByPrefix('cheer', 'GF Cheer', 24, false); - animation.addByPrefix('singLEFT', 'GF left note', 24, false); - animation.addByPrefix('singRIGHT', 'GF Right Note', 24, false); - animation.addByPrefix('singUP', 'GF Up Note', 24, false); - animation.addByPrefix('singDOWN', 'GF Down Note', 24, false); + quickAnimAdd('cheer', 'GF Cheer'); + quickAnimAdd('singLEFT', 'GF left note'); + quickAnimAdd('singRIGHT', 'GF Right Note'); + quickAnimAdd('singUP', 'GF Up Note'); + quickAnimAdd('singDOWN', 'GF Down Note'); animation.addByIndices('sad', 'gf sad', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], "", 24, false); animation.addByIndices('danceLeft', 'GF Dancing Beat', [30, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], "", 24, false); animation.addByIndices('danceRight', 'GF Dancing Beat', [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29], "", 24, false); animation.addByIndices('hairBlow', "GF Dancing Beat Hair blowing", [0, 1, 2, 3], "", 24); animation.addByIndices('hairFall', "GF Dancing Beat Hair Landing", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], "", 24, false); - animation.addByPrefix('scared', 'GF FEAR', 24); + animation.addByPrefix('scared', 'GF FEAR', 24, true); addOffset('cheer'); addOffset('sad', -2, -21); @@ -135,11 +135,11 @@ class Character extends FlxSprite // DAD ANIMATION LOADING CODE tex = Paths.getSparrowAtlas('DADDY_DEAREST'); frames = tex; - animation.addByPrefix('idle', 'Dad idle dance', 24); - animation.addByPrefix('singUP', 'Dad Sing Note UP', 24); - animation.addByPrefix('singRIGHT', 'Dad Sing Note RIGHT', 24); - animation.addByPrefix('singDOWN', 'Dad Sing Note DOWN', 24); - animation.addByPrefix('singLEFT', 'Dad Sing Note LEFT', 24); + quickAnimAdd('idle', 'Dad idle dance'); + quickAnimAdd('singUP', 'Dad Sing Note UP'); + quickAnimAdd('singRIGHT', 'Dad Sing Note RIGHT'); + quickAnimAdd('singDOWN', 'Dad Sing Note DOWN'); + quickAnimAdd('singLEFT', 'Dad Sing Note LEFT'); addOffset('idle'); addOffset("singUP", -6, 50); @@ -151,10 +151,10 @@ class Character extends FlxSprite case 'spooky': tex = Paths.getSparrowAtlas('spooky_kids_assets'); frames = tex; - animation.addByPrefix('singUP', 'spooky UP NOTE', 24, false); - animation.addByPrefix('singDOWN', 'spooky DOWN note', 24, false); - animation.addByPrefix('singLEFT', 'note sing left', 24, false); - animation.addByPrefix('singRIGHT', 'spooky sing right', 24, false); + quickAnimAdd('singUP', 'spooky UP NOTE'); + quickAnimAdd('singDOWN', 'spooky DOWN note'); + quickAnimAdd('singLEFT', 'note sing left'); + quickAnimAdd('singRIGHT', 'spooky sing right'); animation.addByIndices('danceLeft', 'spooky dance idle', [0, 2, 6], "", 12, false); animation.addByIndices('danceRight', 'spooky dance idle', [8, 10, 12, 14], "", 12, false); @@ -171,13 +171,13 @@ class Character extends FlxSprite tex = Paths.getSparrowAtlas('Mom_Assets'); frames = tex; - animation.addByPrefix('idle', "Mom Idle", 24, false); - animation.addByPrefix('singUP', "Mom Up Pose", 24, false); - animation.addByPrefix('singDOWN', "MOM DOWN POSE", 24, false); - animation.addByPrefix('singLEFT', 'Mom Left Pose', 24, false); + quickAnimAdd('idle', "Mom Idle"); + quickAnimAdd('singUP', "Mom Up Pose"); + quickAnimAdd('singDOWN', "MOM DOWN POSE"); + quickAnimAdd('singLEFT', 'Mom Left Pose'); // ANIMATION IS CALLED MOM LEFT POSE BUT ITS FOR THE RIGHT // CUZ DAVE IS DUMB! - animation.addByPrefix('singRIGHT', 'Mom Pose Left', 24, false); + quickAnimAdd('singRIGHT', 'Mom Pose Left'); addOffset('idle'); addOffset("singUP", 14, 71); @@ -191,13 +191,13 @@ class Character extends FlxSprite tex = Paths.getSparrowAtlas('momCar'); frames = tex; - animation.addByPrefix('idle', "Mom Idle", 24, false); - animation.addByPrefix('singUP', "Mom Up Pose", 24, false); - animation.addByPrefix('singDOWN', "MOM DOWN POSE", 24, false); - animation.addByPrefix('singLEFT', 'Mom Left Pose', 24, false); + quickAnimAdd('idle', "Mom Idle"); + quickAnimAdd('singUP', "Mom Up Pose"); + quickAnimAdd('singDOWN', "MOM DOWN POSE"); + quickAnimAdd('singLEFT', 'Mom Left Pose'); // ANIMATION IS CALLED MOM LEFT POSE BUT ITS FOR THE RIGHT // CUZ DAVE IS DUMB! - animation.addByPrefix('singRIGHT', 'Mom Pose Left', 24, false); + quickAnimAdd('singRIGHT', 'Mom Pose Left'); addOffset('idle'); addOffset("singUP", 14, 71); @@ -209,11 +209,11 @@ class Character extends FlxSprite case 'monster': tex = Paths.getSparrowAtlas('Monster_Assets'); frames = tex; - animation.addByPrefix('idle', 'monster idle', 24, false); - animation.addByPrefix('singUP', 'monster up note', 24, false); - animation.addByPrefix('singDOWN', 'monster down', 24, false); - animation.addByPrefix('singLEFT', 'Monster left note', 24, false); - animation.addByPrefix('singRIGHT', 'Monster Right note', 24, false); + quickAnimAdd('idle', 'monster idle'); + quickAnimAdd('singUP', 'monster up note'); + quickAnimAdd('singDOWN', 'monster down'); + quickAnimAdd('singLEFT', 'Monster left note'); + quickAnimAdd('singRIGHT', 'Monster Right note'); addOffset('idle'); addOffset("singUP", -20, 94); @@ -224,11 +224,11 @@ class Character extends FlxSprite case 'monster-christmas': tex = Paths.getSparrowAtlas('christmas/monsterChristmas'); frames = tex; - animation.addByPrefix('idle', 'monster idle', 24, false); - animation.addByPrefix('singUP', 'monster up note', 24, false); - animation.addByPrefix('singDOWN', 'monster down', 24, false); - animation.addByPrefix('singLEFT', 'Monster left note', 24, false); - animation.addByPrefix('singRIGHT', 'Monster Right note', 24, false); + quickAnimAdd('idle', 'monster idle'); + quickAnimAdd('singUP', 'monster up note'); + quickAnimAdd('singDOWN', 'monster down'); + quickAnimAdd('singLEFT', 'Monster left note'); + quickAnimAdd('singRIGHT', 'Monster Right note'); addOffset('idle'); addOffset("singUP", -20, 50); @@ -239,27 +239,27 @@ class Character extends FlxSprite case 'pico': tex = Paths.getSparrowAtlas('Pico_FNF_assetss'); frames = tex; - animation.addByPrefix('idle', "Pico Idle Dance", 24); - animation.addByPrefix('singUP', 'pico Up note0', 24, false); - animation.addByPrefix('singDOWN', 'Pico Down Note0', 24, false); + quickAnimAdd('idle', "Pico Idle Dance"); + quickAnimAdd('singUP', 'pico Up note0'); + quickAnimAdd('singDOWN', 'Pico Down Note0'); if (isPlayer) { - animation.addByPrefix('singLEFT', 'Pico NOTE LEFT0', 24, false); - animation.addByPrefix('singRIGHT', 'Pico Note Right0', 24, false); - animation.addByPrefix('singRIGHTmiss', 'Pico Note Right Miss', 24, false); - animation.addByPrefix('singLEFTmiss', 'Pico NOTE LEFT miss', 24, false); + quickAnimAdd('singLEFT', 'Pico NOTE LEFT0'); + quickAnimAdd('singRIGHT', 'Pico Note Right0'); + quickAnimAdd('singRIGHTmiss', 'Pico Note Right Miss'); + quickAnimAdd('singLEFTmiss', 'Pico NOTE LEFT miss'); } else { // Need to be flipped! REDO THIS LATER! - animation.addByPrefix('singLEFT', 'Pico Note Right0', 24, false); - animation.addByPrefix('singRIGHT', 'Pico NOTE LEFT0', 24, false); - animation.addByPrefix('singRIGHTmiss', 'Pico NOTE LEFT miss', 24, false); - animation.addByPrefix('singLEFTmiss', 'Pico Note Right Miss', 24, false); + quickAnimAdd('singLEFT', 'Pico Note Right0'); + quickAnimAdd('singRIGHT', 'Pico NOTE LEFT0'); + quickAnimAdd('singRIGHTmiss', 'Pico NOTE LEFT miss'); + quickAnimAdd('singLEFTmiss', 'Pico Note Right Miss'); } - animation.addByPrefix('singUPmiss', 'pico Up note miss', 24); - animation.addByPrefix('singDOWNmiss', 'Pico Down Note MISS', 24); + quickAnimAdd('singUPmiss', 'pico Up note miss'); + quickAnimAdd('singDOWNmiss', 'Pico Down Note MISS'); addOffset('idle'); addOffset("singUP", -29, 27); @@ -290,22 +290,22 @@ class Character extends FlxSprite case 'bf': var tex = Paths.getSparrowAtlas('characters/BOYFRIEND'); frames = tex; - animation.addByPrefix('idle', 'BF idle dance', 24, false); - animation.addByPrefix('singUP', 'BF NOTE UP0', 24, false); - animation.addByPrefix('singLEFT', 'BF NOTE LEFT0', 24, false); - animation.addByPrefix('singRIGHT', 'BF NOTE RIGHT0', 24, false); - animation.addByPrefix('singDOWN', 'BF NOTE DOWN0', 24, false); - animation.addByPrefix('singUPmiss', 'BF NOTE UP MISS', 24, false); - animation.addByPrefix('singLEFTmiss', 'BF NOTE LEFT MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'BF NOTE RIGHT MISS', 24, false); - animation.addByPrefix('singDOWNmiss', 'BF NOTE DOWN MISS', 24, false); - animation.addByPrefix('hey', 'BF HEY', 24, false); + quickAnimAdd('idle', 'BF idle dance'); + quickAnimAdd('singUP', 'BF NOTE UP0'); + quickAnimAdd('singLEFT', 'BF NOTE LEFT0'); + quickAnimAdd('singRIGHT', 'BF NOTE RIGHT0'); + quickAnimAdd('singDOWN', 'BF NOTE DOWN0'); + quickAnimAdd('singUPmiss', 'BF NOTE UP MISS'); + quickAnimAdd('singLEFTmiss', 'BF NOTE LEFT MISS'); + quickAnimAdd('singRIGHTmiss', 'BF NOTE RIGHT MISS'); + quickAnimAdd('singDOWNmiss', 'BF NOTE DOWN MISS'); + quickAnimAdd('hey', 'BF HEY'); - animation.addByPrefix('firstDeath', "BF dies", 24, false); + quickAnimAdd('firstDeath', "BF dies"); animation.addByPrefix('deathLoop', "BF Dead Loop", 24, true); - animation.addByPrefix('deathConfirm', "BF Dead confirm", 24, false); + quickAnimAdd('deathConfirm', "BF Dead confirm"); - animation.addByPrefix('scared', 'BF idle shaking', 24); + animation.addByPrefix('scared', 'BF idle shaking', 24, true); loadOffsetFile(curCharacter); @@ -318,16 +318,16 @@ class Character extends FlxSprite case 'bf-christmas': var tex = Paths.getSparrowAtlas('christmas/bfChristmas'); frames = tex; - animation.addByPrefix('idle', 'BF idle dance', 24, false); - animation.addByPrefix('singUP', 'BF NOTE UP0', 24, false); - animation.addByPrefix('singLEFT', 'BF NOTE LEFT0', 24, false); - animation.addByPrefix('singRIGHT', 'BF NOTE RIGHT0', 24, false); - animation.addByPrefix('singDOWN', 'BF NOTE DOWN0', 24, false); - animation.addByPrefix('singUPmiss', 'BF NOTE UP MISS', 24, false); - animation.addByPrefix('singLEFTmiss', 'BF NOTE LEFT MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'BF NOTE RIGHT MISS', 24, false); - animation.addByPrefix('singDOWNmiss', 'BF NOTE DOWN MISS', 24, false); - animation.addByPrefix('hey', 'BF HEY', 24, false); + quickAnimAdd('idle', 'BF idle dance'); + quickAnimAdd('singUP', 'BF NOTE UP0'); + quickAnimAdd('singLEFT', 'BF NOTE LEFT0'); + quickAnimAdd('singRIGHT', 'BF NOTE RIGHT0'); + quickAnimAdd('singDOWN', 'BF NOTE DOWN0'); + quickAnimAdd('singUPmiss', 'BF NOTE UP MISS'); + quickAnimAdd('singLEFTmiss', 'BF NOTE LEFT MISS'); + quickAnimAdd('singRIGHTmiss', 'BF NOTE RIGHT MISS'); + quickAnimAdd('singDOWNmiss', 'BF NOTE DOWN MISS'); + quickAnimAdd('hey', 'BF HEY'); addOffset('idle', -5); addOffset("singUP", -29, 27); @@ -346,15 +346,15 @@ class Character extends FlxSprite case 'bf-car': var tex = Paths.getSparrowAtlas('bfCar'); frames = tex; - animation.addByPrefix('idle', 'BF idle dance', 24, false); - animation.addByPrefix('singUP', 'BF NOTE UP0', 24, false); - animation.addByPrefix('singLEFT', 'BF NOTE LEFT0', 24, false); - animation.addByPrefix('singRIGHT', 'BF NOTE RIGHT0', 24, false); - animation.addByPrefix('singDOWN', 'BF NOTE DOWN0', 24, false); - animation.addByPrefix('singUPmiss', 'BF NOTE UP MISS', 24, false); - animation.addByPrefix('singLEFTmiss', 'BF NOTE LEFT MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'BF NOTE RIGHT MISS', 24, false); - animation.addByPrefix('singDOWNmiss', 'BF NOTE DOWN MISS', 24, false); + quickAnimAdd('idle', 'BF idle dance'); + quickAnimAdd('singUP', 'BF NOTE UP0'); + quickAnimAdd('singLEFT', 'BF NOTE LEFT0'); + quickAnimAdd('singRIGHT', 'BF NOTE RIGHT0'); + quickAnimAdd('singDOWN', 'BF NOTE DOWN0'); + quickAnimAdd('singUPmiss', 'BF NOTE UP MISS'); + quickAnimAdd('singLEFTmiss', 'BF NOTE LEFT MISS'); + quickAnimAdd('singRIGHTmiss', 'BF NOTE RIGHT MISS'); + quickAnimAdd('singDOWNmiss', 'BF NOTE DOWN MISS'); addOffset('idle', -5); addOffset("singUP", -29, 27); @@ -370,15 +370,15 @@ class Character extends FlxSprite flipX = true; case 'bf-pixel': frames = Paths.getSparrowAtlas('weeb/bfPixel'); - animation.addByPrefix('idle', 'BF IDLE', 24, false); - animation.addByPrefix('singUP', 'BF UP NOTE', 24, false); - animation.addByPrefix('singLEFT', 'BF LEFT NOTE', 24, false); - animation.addByPrefix('singRIGHT', 'BF RIGHT NOTE', 24, false); - animation.addByPrefix('singDOWN', 'BF DOWN NOTE', 24, false); - animation.addByPrefix('singUPmiss', 'BF UP MISS', 24, false); - animation.addByPrefix('singLEFTmiss', 'BF LEFT MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'BF RIGHT MISS', 24, false); - animation.addByPrefix('singDOWNmiss', 'BF DOWN MISS', 24, false); + quickAnimAdd('idle', 'BF IDLE'); + quickAnimAdd('singUP', 'BF UP NOTE'); + quickAnimAdd('singLEFT', 'BF LEFT NOTE'); + quickAnimAdd('singRIGHT', 'BF RIGHT NOTE'); + quickAnimAdd('singDOWN', 'BF DOWN NOTE'); + quickAnimAdd('singUPmiss', 'BF UP MISS'); + quickAnimAdd('singLEFTmiss', 'BF LEFT MISS'); + quickAnimAdd('singRIGHTmiss', 'BF RIGHT MISS'); + quickAnimAdd('singDOWNmiss', 'BF DOWN MISS'); addOffset('idle'); addOffset("singUP"); @@ -403,10 +403,10 @@ class Character extends FlxSprite flipX = true; case 'bf-pixel-dead': frames = Paths.getSparrowAtlas('weeb/bfPixelsDEAD'); - animation.addByPrefix('singUP', "BF Dies pixel", 24, false); - animation.addByPrefix('firstDeath', "BF Dies pixel", 24, false); + quickAnimAdd('singUP', "BF Dies pixel"); + quickAnimAdd('firstDeath', "BF Dies pixel"); animation.addByPrefix('deathLoop', "Retry Loop", 24, true); - animation.addByPrefix('deathConfirm', "RETRY CONFIRM", 24, false); + quickAnimAdd('deathConfirm', "RETRY CONFIRM"); animation.play('firstDeath'); addOffset('firstDeath'); @@ -421,11 +421,16 @@ class Character extends FlxSprite case 'senpai': frames = Paths.getSparrowAtlas('weeb/senpai'); - animation.addByPrefix('idle', 'Senpai Idle', 24, false); - animation.addByPrefix('singUP', 'SENPAI UP NOTE', 24, false); - animation.addByPrefix('singLEFT', 'SENPAI LEFT NOTE', 24, false); - animation.addByPrefix('singRIGHT', 'SENPAI RIGHT NOTE', 24, false); - animation.addByPrefix('singDOWN', 'SENPAI DOWN NOTE', 24, false); + quickAnimAdd('idle', 'Senpai Idle'); + // at framerate 16.8 animation plays over 2 beats at 144bpm, + // but if the game lags or the bpm is > 144 (mods etc.) + // he may miss his next dance + // animation.getByName('idle').frameRate = 16.8; + + quickAnimAdd('singUP', 'SENPAI UP NOTE'); + quickAnimAdd('singLEFT', 'SENPAI LEFT NOTE'); + quickAnimAdd('singRIGHT', 'SENPAI RIGHT NOTE'); + quickAnimAdd('singDOWN', 'SENPAI DOWN NOTE'); addOffset('idle'); addOffset("singUP", 5, 37); @@ -441,11 +446,11 @@ class Character extends FlxSprite antialiasing = false; case 'senpai-angry': frames = Paths.getSparrowAtlas('weeb/senpai'); - animation.addByPrefix('idle', 'Angry Senpai Idle', 24, false); - animation.addByPrefix('singUP', 'Angry Senpai UP NOTE', 24, false); - animation.addByPrefix('singLEFT', 'Angry Senpai LEFT NOTE', 24, false); - animation.addByPrefix('singRIGHT', 'Angry Senpai RIGHT NOTE', 24, false); - animation.addByPrefix('singDOWN', 'Angry Senpai DOWN NOTE', 24, false); + quickAnimAdd('idle', 'Angry Senpai Idle'); + quickAnimAdd('singUP', 'Angry Senpai UP NOTE'); + quickAnimAdd('singLEFT', 'Angry Senpai LEFT NOTE'); + quickAnimAdd('singRIGHT', 'Angry Senpai RIGHT NOTE'); + quickAnimAdd('singDOWN', 'Angry Senpai DOWN NOTE'); addOffset('idle'); addOffset("singUP", 5, 37); @@ -461,11 +466,11 @@ class Character extends FlxSprite case 'spirit': frames = Paths.getPackerAtlas('weeb/spirit'); - animation.addByPrefix('idle', "idle spirit_", 24, false); - animation.addByPrefix('singUP', "up_", 24, false); - animation.addByPrefix('singRIGHT', "right_", 24, false); - animation.addByPrefix('singLEFT', "left_", 24, false); - animation.addByPrefix('singDOWN', "spirit down_", 24, false); + quickAnimAdd('idle', "idle spirit_"); + quickAnimAdd('singUP', "up_"); + quickAnimAdd('singRIGHT', "right_"); + quickAnimAdd('singLEFT', "left_"); + quickAnimAdd('singDOWN', "spirit down_"); addOffset('idle', -220, -280); addOffset('singUP', -220, -240); @@ -482,17 +487,17 @@ class Character extends FlxSprite case 'parents-christmas': frames = Paths.getSparrowAtlas('christmas/mom_dad_christmas_assets'); - animation.addByPrefix('idle', 'Parent Christmas Idle', 24, false); - animation.addByPrefix('singUP', 'Parent Up Note Dad', 24, false); - animation.addByPrefix('singDOWN', 'Parent Down Note Dad', 24, false); - animation.addByPrefix('singLEFT', 'Parent Left Note Dad', 24, false); - animation.addByPrefix('singRIGHT', 'Parent Right Note Dad', 24, false); + quickAnimAdd('idle', 'Parent Christmas Idle'); + quickAnimAdd('singUP', 'Parent Up Note Dad'); + quickAnimAdd('singDOWN', 'Parent Down Note Dad'); + quickAnimAdd('singLEFT', 'Parent Left Note Dad'); + quickAnimAdd('singRIGHT', 'Parent Right Note Dad'); - animation.addByPrefix('singUP-alt', 'Parent Up Note Mom', 24, false); + quickAnimAdd('singUP-alt', 'Parent Up Note Mom'); - animation.addByPrefix('singDOWN-alt', 'Parent Down Note Mom', 24, false); - animation.addByPrefix('singLEFT-alt', 'Parent Left Note Mom', 24, false); - animation.addByPrefix('singRIGHT-alt', 'Parent Right Note Mom', 24, false); + quickAnimAdd('singDOWN-alt', 'Parent Down Note Mom'); + quickAnimAdd('singLEFT-alt', 'Parent Left Note Mom'); + quickAnimAdd('singRIGHT-alt', 'Parent Right Note Mom'); addOffset('idle'); addOffset("singUP", -47, 24); @@ -508,28 +513,28 @@ class Character extends FlxSprite case 'tankman': frames = Paths.getSparrowAtlas('characters/tankmanCaptain'); - animation.addByPrefix('idle', "Tankman Idle Dance", 24, false); + quickAnimAdd('idle', "Tankman Idle Dance"); if (isPlayer) { - animation.addByPrefix('singLEFT', 'Tankman Note Left0', 24, false); - animation.addByPrefix('singRIGHT', 'Tankman Right Note0', 24, false); - animation.addByPrefix('singLEFTmiss', 'Tankman Note Left MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'Tankman Right Note MISS', 24, false); + quickAnimAdd('singLEFT', 'Tankman Note Left0'); + quickAnimAdd('singRIGHT', 'Tankman Right Note0'); + quickAnimAdd('singLEFTmiss', 'Tankman Note Left MISS'); + quickAnimAdd('singRIGHTmiss', 'Tankman Right Note MISS'); } else { // Need to be flipped! REDO THIS LATER - animation.addByPrefix('singLEFT', 'Tankman Right Note0', 24, false); - animation.addByPrefix('singRIGHT', 'Tankman Note Left0', 24, false); - animation.addByPrefix('singLEFTmiss', 'Tankman Right Note MISS', 24, false); - animation.addByPrefix('singRIGHTmiss', 'Tankman Note Left MISS', 24, false); + quickAnimAdd('singLEFT', 'Tankman Right Note0'); + quickAnimAdd('singRIGHT', 'Tankman Note Left0'); + quickAnimAdd('singLEFTmiss', 'Tankman Right Note MISS'); + quickAnimAdd('singRIGHTmiss', 'Tankman Note Left MISS'); } - animation.addByPrefix('singUP', 'Tankman UP note0', 24, false); - animation.addByPrefix('singDOWN', 'Tankman DOWN note0', 24, false); - animation.addByPrefix('singUPmiss', 'Tankman UP note MISS', 24, false); - animation.addByPrefix('singDOWNmiss', 'Tankman DOWN note MISS', 24, false); + quickAnimAdd('singUP', 'Tankman UP note0'); + quickAnimAdd('singDOWN', 'Tankman DOWN note0'); + quickAnimAdd('singUPmiss', 'Tankman UP note MISS'); + quickAnimAdd('singDOWNmiss', 'Tankman DOWN note MISS'); loadOffsetFile(curCharacter); @@ -539,6 +544,7 @@ class Character extends FlxSprite } dance(); + animation.finish(); if (isPlayer) { @@ -620,7 +626,7 @@ class Character extends FlxSprite { switch (curCharacter) { - case 'gf': + case 'gf' | 'gf-christmas' | 'gf-car' | 'gf-pixel': if (!animation.curAnim.name.startsWith('hair')) { danced = !danced; @@ -631,37 +637,6 @@ class Character extends FlxSprite playAnim('danceLeft'); } - case 'gf-christmas': - if (!animation.curAnim.name.startsWith('hair')) - { - danced = !danced; - - if (danced) - playAnim('danceRight'); - else - playAnim('danceLeft'); - } - - case 'gf-car': - if (!animation.curAnim.name.startsWith('hair')) - { - danced = !danced; - - if (danced) - playAnim('danceRight'); - else - playAnim('danceLeft'); - } - case 'gf-pixel': - if (!animation.curAnim.name.startsWith('hair')) - { - danced = !danced; - - if (danced) - playAnim('danceRight'); - else - playAnim('danceLeft'); - } case 'pico-speaker': playAnim('shoot' + FlxG.random.int(1, 4), true); diff --git a/source/PlayState.hx b/source/PlayState.hx index 971b1f651..9548ad1e0 100644 --- a/source/PlayState.hx +++ b/source/PlayState.hx @@ -1048,12 +1048,11 @@ class PlayState extends MusicBeatState } }); FlxG.sound.play(Paths.sound('introGo'), 0.6); - case 4: } swagCounter += 1; // generateSong('fresh'); - }, 5); + }, 4); } var previousFrameTime:Int = 0;