1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-12-26 15:07:14 +00:00

pause menu in progress

This commit is contained in:
Cameron Taylor 2020-11-17 17:50:09 -08:00
parent f2f0bfb013
commit f419163ccc

View file

@ -4,11 +4,17 @@ import Controls.Control;
import flixel.FlxG; import flixel.FlxG;
import flixel.FlxSprite; import flixel.FlxSprite;
import flixel.FlxSubState; import flixel.FlxSubState;
import flixel.group.FlxGroup.FlxTypedGroup;
import flixel.input.keyboard.FlxKey; import flixel.input.keyboard.FlxKey;
import flixel.util.FlxColor; import flixel.util.FlxColor;
class PauseSubState extends FlxSubState class PauseSubState extends MusicBeatSubstate
{ {
var grpMenuShit:FlxTypedGroup<Alphabet>;
var menuItems:Array<String> = ['Resume', 'Restart Song', 'Exit to menu'];
var curSelected:Int = 0;
public function new(x:Float, y:Float) public function new(x:Float, y:Float)
{ {
super(); super();
@ -17,25 +23,83 @@ class PauseSubState extends FlxSubState
bg.scrollFactor.set(); bg.scrollFactor.set();
add(bg); add(bg);
var bf:Boyfriend = new Boyfriend(x, y); grpMenuShit = new FlxTypedGroup<Alphabet>();
bf.scrollFactor.set(); add(grpMenuShit);
// add(bf);
bf.playAnim('firstDeath'); for (i in 0...menuItems.length)
{
var songText:Alphabet = new Alphabet(0, (70 * i) + 30, menuItems[i], true, false);
songText.isMenuItem = true;
songText.targetY = i;
grpMenuShit.add(songText);
}
bg.cameras = [FlxG.cameras.list[1]]; changeSelection();
cameras = [FlxG.cameras.list[1]];
} }
override function update(elapsed:Float) override function update(elapsed:Float)
{ {
super.update(elapsed); super.update(elapsed);
if (FlxG.keys.justPressed.J) var upP = controls.UP_P;
var downP = controls.DOWN_P;
var accepted = controls.ACCEPT;
if (upP)
{ {
PlayerSettings.player1.controls.replaceBinding(Control.LEFT, Keys, FlxKey.J, null); changeSelection(-1);
}
if (downP)
{
changeSelection(1);
} }
if (FlxG.keys.justPressed.ENTER) if (accepted)
{
var daSelected:String = menuItems[curSelected];
switch (daSelected)
{
case "Resume":
close(); close();
case "Exit to menu":
FlxG.switchState(new MainMenuState());
}
}
if (FlxG.keys.justPressed.J)
{
// for reference later!
// PlayerSettings.player1.controls.replaceBinding(Control.LEFT, Keys, FlxKey.J, null);
}
}
function changeSelection(change:Int = 0):Void
{
curSelected += change;
if (curSelected < 0)
curSelected = menuItems.length - 1;
if (curSelected >= menuItems.length)
curSelected = 0;
var bullShit:Int = 0;
for (item in grpMenuShit.members)
{
item.targetY = bullShit - curSelected;
bullShit++;
item.alpha = 0.6;
// item.setGraphicSize(Std.int(item.width * 0.8));
if (item.targetY == 0)
{
item.alpha = 1;
// item.setGraphicSize(Std.int(item.width));
}
}
} }
} }