1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2025-03-24 10:59:32 +00:00

Seperated tutorials

This commit is contained in:
Cameron Taylor 2020-11-06 02:21:29 -08:00
parent 35eee013d5
commit 36361ff0a4
4 changed files with 27 additions and 19 deletions

View file

@ -17,6 +17,7 @@ class FreeplayState extends MusicBeatState
var selector:FlxText; var selector:FlxText;
var curSelected:Int = 0; var curSelected:Int = 0;
var curDifficulty:Int = 1;
var scoreText:FlxText; var scoreText:FlxText;
var lerpScore:Int = 0; var lerpScore:Int = 0;
@ -77,6 +78,7 @@ class FreeplayState extends MusicBeatState
add(scoreText); add(scoreText);
changeSelection(); changeSelection();
changeDiff();
// FlxG.sound.playMusic('assets/music/title' + TitleState.soundExt, 0); // FlxG.sound.playMusic('assets/music/title' + TitleState.soundExt, 0);
// FlxG.sound.music.fadeIn(2, 0, 0.8); // FlxG.sound.music.fadeIn(2, 0, 0.8);
@ -143,6 +145,16 @@ class FreeplayState extends MusicBeatState
} }
} }
function changeDiff(change:Int = 0)
{
curDifficulty += change;
if (curDifficulty < 0)
curDifficulty = 2;
if (curDifficulty > 2)
curDifficulty = 0;
}
function changeSelection(change:Int = 0) function changeSelection(change:Int = 0)
{ {
NGio.logEvent('Fresh'); NGio.logEvent('Fresh');

View file

@ -10,7 +10,7 @@ class MenuItem extends FlxSpriteGroup
public var targetY:Float = 0; public var targetY:Float = 0;
public var week:FlxSprite; public var week:FlxSprite;
public function new(x:Float, y:Float, weekNum:Int = 0, unlocked:Bool = false) public function new(x:Float, y:Float, weekNum:Int = 0)
{ {
super(x, y); super(x, y);
@ -18,18 +18,15 @@ class MenuItem extends FlxSpriteGroup
week = new FlxSprite(); week = new FlxSprite();
week.frames = tex; week.frames = tex;
week.animation.addByPrefix('week0', "WEEK1 select", 24); // TUTORIAL IS WEEK 0
week.animation.addByPrefix('week1', "week2 select", 24); week.animation.addByPrefix('week0', 'tutorial selected', 24);
week.animation.addByPrefix('week1', "WEEK1 select", 24);
week.animation.addByPrefix('week2', "week2 select", 24);
add(week); add(week);
week.animation.play('week' + weekNum); week.animation.play('week' + weekNum);
week.animation.pause(); week.animation.pause();
week.updateHitbox(); week.updateHitbox();
if (!unlocked)
{
week.alpha = 0.6;
}
} }
override function update(elapsed:Float) override function update(elapsed:Float)

View file

@ -16,12 +16,12 @@ class StoryMenuState extends MusicBeatState
{ {
var scoreText:FlxText; var scoreText:FlxText;
var weekData:Array<Dynamic> = [['Tutorial', 'Bopeebo', 'Fresh', 'Dadbattle'], ['Spookeez', 'South']]; var weekData:Array<Dynamic> = [['Tutorial'], ['Bopeebo', 'Fresh', 'Dadbattle'], ['Spookeez', 'South']];
var curDifficulty:Int = 1; var curDifficulty:Int = 1;
public static var weekUnlocked:Array<Bool> = [true, false]; public static var weekUnlocked:Array<Bool> = [true, true, false];
var weekCharacters:Array<Dynamic> = [['dad', 'bf', 'gf'], ['spooky', 'bf', 'gf']]; var weekCharacters:Array<Dynamic> = [['dad', 'bf', 'gf'], ['dad', 'bf', 'gf'], ['spooky', 'bf', 'gf']];
var curWeek:Int = 0; var curWeek:Int = 0;
var txtTracklist:FlxText; var txtTracklist:FlxText;
@ -68,12 +68,7 @@ class StoryMenuState extends MusicBeatState
for (i in 0...weekData.length) for (i in 0...weekData.length)
{ {
var unlocked:Bool = true; var weekThing:MenuItem = new MenuItem(0, yellowBG.y + yellowBG.height + 10, i);
if (i == 1)
unlocked = false;
var weekThing:MenuItem = new MenuItem(0, yellowBG.y + yellowBG.height + 10, i, unlocked);
weekThing.y += ((weekThing.height + 20) * i); weekThing.y += ((weekThing.height + 20) * i);
weekThing.targetY = i; weekThing.targetY = i;
grpWeekText.add(weekThing); grpWeekText.add(weekThing);
@ -82,6 +77,7 @@ class StoryMenuState extends MusicBeatState
weekThing.antialiasing = true; weekThing.antialiasing = true;
// weekThing.updateHitbox(); // weekThing.updateHitbox();
// Needs an offset thingie
if (!weekUnlocked[i]) if (!weekUnlocked[i])
{ {
var lock:FlxSprite = new FlxSprite(weekThing.width + 10 + weekThing.x); var lock:FlxSprite = new FlxSprite(weekThing.width + 10 + weekThing.x);
@ -120,7 +116,7 @@ class StoryMenuState extends MusicBeatState
difficultySelectors = new FlxGroup(); difficultySelectors = new FlxGroup();
add(difficultySelectors); add(difficultySelectors);
leftArrow = new FlxSprite(grpWeekText.members[0].x + 370, grpWeekText.members[0].y + 10); leftArrow = new FlxSprite(grpWeekText.members[0].x + grpWeekText.members[0].width + 10, grpWeekText.members[0].y + 10);
leftArrow.frames = ui_tex; leftArrow.frames = ui_tex;
leftArrow.animation.addByPrefix('idle', "arrow left"); leftArrow.animation.addByPrefix('idle', "arrow left");
leftArrow.animation.addByPrefix('press', "arrow push left"); leftArrow.animation.addByPrefix('press', "arrow push left");
@ -303,7 +299,7 @@ class StoryMenuState extends MusicBeatState
for (item in grpWeekText.members) for (item in grpWeekText.members)
{ {
item.targetY = bullShit - curWeek; item.targetY = bullShit - curWeek;
if (item.targetY == Std.int(0)) if (item.targetY == Std.int(0) && weekUnlocked[curWeek])
item.alpha = 1; item.alpha = 1;
else else
item.alpha = 0.6; item.alpha = 0.6;

View file

@ -68,6 +68,9 @@ class TitleState extends MusicBeatState
if (FlxG.save.data.weekUnlocked != null) if (FlxG.save.data.weekUnlocked != null)
{ {
StoryMenuState.weekUnlocked = FlxG.save.data.weekUnlocked; StoryMenuState.weekUnlocked = FlxG.save.data.weekUnlocked;
if (StoryMenuState.weekUnlocked.length < 3)
StoryMenuState.weekUnlocked.insert(0, true);
} }
#if SKIP_TO_PLAYSTATE #if SKIP_TO_PLAYSTATE