1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-11-17 12:23:36 +00:00

update to master 11/11/20

This commit is contained in:
Brandon 2020-11-11 05:00:13 -05:00
parent 68958963a3
commit e30ed8e6e5
7 changed files with 56 additions and 7 deletions

View file

@ -4,6 +4,11 @@ All notable changes will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Fixed
- Cleaned up some charting on South on hard mode
- Fixed some animation timings, should feel both better to play, and watch.
## [0.2.1.2] - 2020-11-06 ## [0.2.1.2] - 2020-11-06
### Fixed ### Fixed
- Story mode scores not properly resetting, leading to VERY inflated highscores on the leaderboards. This also requires me to clear the scores that are on the leaderboard right now, sorry! - Story mode scores not properly resetting, leading to VERY inflated highscores on the leaderboards. This also requires me to clear the scores that are on the leaderboard right now, sorry!

View file

@ -108,4 +108,5 @@
<!-- <haxedef name="SKIP_TO_PLAYSTATE" if="debug" /> --> <!-- <haxedef name="SKIP_TO_PLAYSTATE" if="debug" /> -->
<haxedef name="NG_LOGIN" if="newgrounds" /> <haxedef name="NG_LOGIN" if="newgrounds" />
</project> </project>

View file

@ -3,6 +3,7 @@ package;
import flixel.FlxG; import flixel.FlxG;
import flixel.FlxSprite; import flixel.FlxSprite;
import flixel.graphics.frames.FlxAtlasFrames; import flixel.graphics.frames.FlxAtlasFrames;
import flixel.util.FlxTimer;
using StringTools; using StringTools;
@ -54,6 +55,13 @@ class Boyfriend extends Character
override function update(elapsed:Float) override function update(elapsed:Float)
{ {
if (animation.curAnim.name.startsWith('sing'))
{
holdTimer += elapsed;
}
else
holdTimer = 0;
if (animation.curAnim.name.endsWith('miss') && animation.curAnim.finished && !debugMode) if (animation.curAnim.name.endsWith('miss') && animation.curAnim.finished && !debugMode)
{ {
playAnim('idle', true, false, 10); playAnim('idle', true, false, 10);

View file

@ -3,6 +3,8 @@ package;
import flixel.FlxSprite; import flixel.FlxSprite;
import flixel.graphics.frames.FlxAtlasFrames; import flixel.graphics.frames.FlxAtlasFrames;
using StringTools;
class Character extends FlxSprite class Character extends FlxSprite
{ {
public var animOffsets:Map<String, Array<Dynamic>>; public var animOffsets:Map<String, Array<Dynamic>>;
@ -11,6 +13,8 @@ class Character extends FlxSprite
public var isPlayer:Bool = false; public var isPlayer:Bool = false;
public var curCharacter:String = 'bf'; public var curCharacter:String = 'bf';
public var holdTimer:Float = 0;
public function new(x:Float, y:Float, ?character:String = "bf", ?isPlayer:Bool = false) public function new(x:Float, y:Float, ?character:String = "bf", ?isPlayer:Bool = false)
{ {
animOffsets = new Map<String, Array<Dynamic>>(); animOffsets = new Map<String, Array<Dynamic>>();
@ -52,6 +56,7 @@ class Character extends FlxSprite
addOffset('scared'); addOffset('scared');
playAnim('danceRight'); playAnim('danceRight');
case 'dad': case 'dad':
// DAD ANIMATION LOADING CODE // DAD ANIMATION LOADING CODE
tex = FlxAtlasFrames.fromSparrow(AssetPaths.DADDY_DEAREST__png, AssetPaths.DADDY_DEAREST__xml); tex = FlxAtlasFrames.fromSparrow(AssetPaths.DADDY_DEAREST__png, AssetPaths.DADDY_DEAREST__xml);
@ -120,6 +125,29 @@ class Character extends FlxSprite
} }
} }
override function update(elapsed:Float)
{
if (curCharacter != 'bf')
{
if (animation.curAnim.name.startsWith('sing'))
{
holdTimer += elapsed;
}
var dadVar:Float = 4;
if (curCharacter == 'dad')
dadVar = 6.1;
if (holdTimer >= Conductor.stepCrochet * dadVar * 0.001)
{
dance();
holdTimer = 0;
}
}
super.update(elapsed);
}
private var danced:Bool = false; private var danced:Bool = false;
/** /**

View file

@ -37,6 +37,8 @@ class Note extends FlxSprite
isSustainNote = sustainNote; isSustainNote = sustainNote;
x += 50; x += 50;
// MAKE SURE ITS DEFINITELY OFF SCREEN?
y -= 2000;
this.strumTime = strumTime; this.strumTime = strumTime;
this.noteData = noteData; this.noteData = noteData;

View file

@ -30,9 +30,6 @@ import flixel.util.FlxTimer;
import haxe.Json; import haxe.Json;
import lime.utils.Assets; import lime.utils.Assets;
//New Audio BS
//import faxe.Faxe;
using StringTools; using StringTools;
class PlayState extends MusicBeatState class PlayState extends MusicBeatState
@ -811,6 +808,8 @@ class PlayState extends MusicBeatState
dad.playAnim('singLEFT', true); dad.playAnim('singLEFT', true);
} }
dad.holdTimer = 0;
if (SONG.needsVoices) if (SONG.needsVoices)
vocals.volume = 1; vocals.volume = 1;
@ -1044,6 +1043,8 @@ class PlayState extends MusicBeatState
// FlxG.watch.addQuick('asdfa', upP); // FlxG.watch.addQuick('asdfa', upP);
if ((upP || rightP || downP || leftP) && !boyfriend.stunned && generatedMusic) if ((upP || rightP || downP || leftP) && !boyfriend.stunned && generatedMusic)
{ {
boyfriend.holdTimer = 0;
var possibleNotes:Array<Note> = []; var possibleNotes:Array<Note> = [];
notes.forEachAlive(function(daNote:Note) notes.forEachAlive(function(daNote:Note)
@ -1114,9 +1115,9 @@ class PlayState extends MusicBeatState
}); });
} }
if (upR || leftR || rightR || downR) if (boyfriend.holdTimer > Conductor.stepCrochet * 4 * 0.001 && !up && !down && !right && !left)
{ {
if (boyfriend.animation.curAnim.name.startsWith('sing')) if (boyfriend.animation.curAnim.name.startsWith('sing') && !boyfriend.animation.curAnim.name.endsWith('miss'))
{ {
boyfriend.playAnim('idle'); boyfriend.playAnim('idle');
} }

View file

@ -38,7 +38,7 @@ class TitleState extends MusicBeatState
['Ritz dx', 'rest in peace'], ['rate five', 'pls no blam'], ['rhythm gaming', 'ultimate'], ['game of the year', 'forever'], ['Ritz dx', 'rest in peace'], ['rate five', 'pls no blam'], ['rhythm gaming', 'ultimate'], ['game of the year', 'forever'],
['you already know', 'we really out here'], ['rise and grind', 'love to luis'], ['like parappa', 'but cooler'], ['you already know', 'we really out here'], ['rise and grind', 'love to luis'], ['like parappa', 'but cooler'],
['album of the year', 'chuckie finster'], ["free gitaroo man", "with love to wandaboy"], ['better than geometry dash', 'fight me robtop'], ['album of the year', 'chuckie finster'], ["free gitaroo man", "with love to wandaboy"], ['better than geometry dash', 'fight me robtop'],
['kiddbrute for president', 'vote now'], ['play dead estate', 'on newgrounds'], ['this is a god damn prototype', 'we workin on it okay'], ['kiddbrute for president', 'vote now'], ['play dead estate', 'on newgrounds'], ['this a god damn prototype', 'we workin on it okay'],
['WOMEN ARE real', 'this is official'], ['Nintendo Switch', 'Pre-orders now available']]; ['WOMEN ARE real', 'this is official'], ['Nintendo Switch', 'Pre-orders now available']];
var curWacky:Array<String> = []; var curWacky:Array<String> = [];
@ -106,6 +106,10 @@ class TitleState extends MusicBeatState
transIn = FlxTransitionableState.defaultTransIn; transIn = FlxTransitionableState.defaultTransIn;
transOut = FlxTransitionableState.defaultTransOut; transOut = FlxTransitionableState.defaultTransOut;
// var music:FlxSound = new FlxSound();
// music.loadStream('assets/music/freakyMenu' + TitleState.soundExt);
// FlxG.sound.list.add(music);
// music.play();
FlxG.sound.playMusic('assets/music/freakyMenu' + TitleState.soundExt, 0); FlxG.sound.playMusic('assets/music/freakyMenu' + TitleState.soundExt, 0);
FlxG.sound.music.fadeIn(4, 0, 0.7); FlxG.sound.music.fadeIn(4, 0, 0.7);