diff --git a/art/campaign_menu_UI_assets.fla b/art/campaign_menu_UI_assets.fla
index f7aae25..3b96a81 100644
Binary files a/art/campaign_menu_UI_assets.fla and b/art/campaign_menu_UI_assets.fla differ
diff --git a/assets/images/campaign_menu_UI_assets.png b/assets/images/campaign_menu_UI_assets.png
index 98a8924..f04d81a 100644
Binary files a/assets/images/campaign_menu_UI_assets.png and b/assets/images/campaign_menu_UI_assets.png differ
diff --git a/assets/images/campaign_menu_UI_assets.xml b/assets/images/campaign_menu_UI_assets.xml
index 51aab94..df812c7 100644
--- a/assets/images/campaign_menu_UI_assets.xml
+++ b/assets/images/campaign_menu_UI_assets.xml
@@ -5,19 +5,18 @@
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
diff --git a/source/FreeplayState.hx b/source/FreeplayState.hx
index f906e8f..6d010f2 100644
--- a/source/FreeplayState.hx
+++ b/source/FreeplayState.hx
@@ -17,6 +17,7 @@ class FreeplayState extends MusicBeatState
var selector:FlxText;
var curSelected:Int = 0;
+ var curDifficulty:Int = 1;
var scoreText:FlxText;
var lerpScore:Int = 0;
@@ -77,6 +78,7 @@ class FreeplayState extends MusicBeatState
add(scoreText);
changeSelection();
+ changeDiff();
// FlxG.sound.playMusic('assets/music/title' + TitleState.soundExt, 0);
// 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)
{
NGio.logEvent('Fresh');
diff --git a/source/MenuItem.hx b/source/MenuItem.hx
index 5aae4ee..e5bf62c 100644
--- a/source/MenuItem.hx
+++ b/source/MenuItem.hx
@@ -10,7 +10,7 @@ class MenuItem extends FlxSpriteGroup
public var targetY:Float = 0;
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);
@@ -18,18 +18,15 @@ class MenuItem extends FlxSpriteGroup
week = new FlxSprite();
week.frames = tex;
- week.animation.addByPrefix('week0', "WEEK1 select", 24);
- week.animation.addByPrefix('week1', "week2 select", 24);
+ // TUTORIAL IS WEEK 0
+ week.animation.addByPrefix('week0', 'tutorial selected', 24);
+ week.animation.addByPrefix('week1', "WEEK1 select", 24);
+ week.animation.addByPrefix('week2', "week2 select", 24);
add(week);
week.animation.play('week' + weekNum);
week.animation.pause();
week.updateHitbox();
-
- if (!unlocked)
- {
- week.alpha = 0.6;
- }
}
override function update(elapsed:Float)
diff --git a/source/StoryMenuState.hx b/source/StoryMenuState.hx
index ca6ba28..a12af46 100644
--- a/source/StoryMenuState.hx
+++ b/source/StoryMenuState.hx
@@ -16,12 +16,12 @@ class StoryMenuState extends MusicBeatState
{
var scoreText:FlxText;
- var weekData:Array = [['Tutorial', 'Bopeebo', 'Fresh', 'Dadbattle'], ['Spookeez', 'South']];
+ var weekData:Array = [['Tutorial'], ['Bopeebo', 'Fresh', 'Dadbattle'], ['Spookeez', 'South']];
var curDifficulty:Int = 1;
- public static var weekUnlocked:Array = [true, false];
+ public static var weekUnlocked:Array = [true, true, false];
- var weekCharacters:Array = [['dad', 'bf', 'gf'], ['spooky', 'bf', 'gf']];
+ var weekCharacters:Array = [['dad', 'bf', 'gf'], ['dad', 'bf', 'gf'], ['spooky', 'bf', 'gf']];
var curWeek:Int = 0;
var txtTracklist:FlxText;
@@ -68,12 +68,7 @@ class StoryMenuState extends MusicBeatState
for (i in 0...weekData.length)
{
- var unlocked:Bool = true;
-
- if (i == 1)
- unlocked = false;
-
- var weekThing:MenuItem = new MenuItem(0, yellowBG.y + yellowBG.height + 10, i, unlocked);
+ var weekThing:MenuItem = new MenuItem(0, yellowBG.y + yellowBG.height + 10, i);
weekThing.y += ((weekThing.height + 20) * i);
weekThing.targetY = i;
grpWeekText.add(weekThing);
@@ -82,6 +77,7 @@ class StoryMenuState extends MusicBeatState
weekThing.antialiasing = true;
// weekThing.updateHitbox();
+ // Needs an offset thingie
if (!weekUnlocked[i])
{
var lock:FlxSprite = new FlxSprite(weekThing.width + 10 + weekThing.x);
@@ -120,7 +116,7 @@ class StoryMenuState extends MusicBeatState
difficultySelectors = new FlxGroup();
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.animation.addByPrefix('idle', "arrow left");
leftArrow.animation.addByPrefix('press', "arrow push left");
@@ -303,7 +299,7 @@ class StoryMenuState extends MusicBeatState
for (item in grpWeekText.members)
{
item.targetY = bullShit - curWeek;
- if (item.targetY == Std.int(0))
+ if (item.targetY == Std.int(0) && weekUnlocked[curWeek])
item.alpha = 1;
else
item.alpha = 0.6;
diff --git a/source/TitleState.hx b/source/TitleState.hx
index 0035635..b3d81ea 100644
--- a/source/TitleState.hx
+++ b/source/TitleState.hx
@@ -68,6 +68,9 @@ class TitleState extends MusicBeatState
if (FlxG.save.data.weekUnlocked != null)
{
StoryMenuState.weekUnlocked = FlxG.save.data.weekUnlocked;
+
+ if (StoryMenuState.weekUnlocked.length < 3)
+ StoryMenuState.weekUnlocked.insert(0, true);
}
#if SKIP_TO_PLAYSTATE