Skip to content

Commit

Permalink
use confirm and denied cursor
Browse files Browse the repository at this point in the history
  • Loading branch information
lemz1 committed Nov 9, 2024
1 parent cecb882 commit 837eaba
Showing 1 changed file with 46 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import flixel.group.FlxSpriteGroup.FlxTypedSpriteGroup;
import flixel.group.FlxSpriteGroup;
import flixel.tweens.FlxEase;
import flixel.tweens.FlxTween;
import flixel.util.FlxTimer;
import flixel.FlxSprite;
import openfl.display.BlendMode;
import openfl.filters.ShaderFilter;
Expand All @@ -31,6 +32,8 @@ class CharSelectIndexSubPage extends FlxSpriteGroup

var cursorIndex:Int = 0;

var isSelecting:Bool = false;

public function new(parentPage:CharCreatorSelectPage)
{
super();
Expand All @@ -56,16 +59,19 @@ class CharSelectIndexSubPage extends FlxSpriteGroup
{
super.update(elapsed);

changeSelectedIcon();

handleMousePress();
if (!isSelecting)
{
changeSelectedIcon();

handleCursorPosition(elapsed);
handleMousePress();

if (FlxG.keys.justPressed.X)
{
close();
if (FlxG.keys.justPressed.X)
{
close();
}
}

handleCursorPosition(elapsed);
}

public function open():Void
Expand Down Expand Up @@ -112,12 +118,14 @@ class CharSelectIndexSubPage extends FlxSpriteGroup
cursorConfirmed = new FlxSprite(0, 0);
cursorConfirmed.frames = Paths.getSparrowAtlas("charSelect/charSelectorConfirm");
cursorConfirmed.animation.addByPrefix("idle", "cursor ACCEPTED instance 1", 24, true);
cursorConfirmed.offset.set(3, 3);
cursorConfirmed.visible = false;
add(cursorConfirmed);

cursorDenied = new FlxSprite(0, 0);
cursorDenied.frames = Paths.getSparrowAtlas("charSelect/charSelectorDenied");
cursorDenied.animation.addByPrefix("idle", "cursor DENIED instance 1", 24, false);
cursorDenied.offset.set(3, 3);
cursorDenied.visible = false;
add(cursorDenied);

Expand Down Expand Up @@ -248,17 +256,42 @@ class CharSelectIndexSubPage extends FlxSpriteGroup
return;
}

cursor.visible = false;
cursorBlue.visible = false;
cursorDarkBlue.visible = false;

isSelecting = true;

var selectedIcon = grpIcons.members[cursorIndex];

// skip if the selected icon is already used
if (selectedIcon.ID == 0)
{
lockedSound.play(true);
cursorDenied.visible = true;
cursorDenied.animation.play("idle", true);
new FlxTimer().start(0.5, _ -> {
cursorDenied.visible = false;
cursor.visible = true;
cursorBlue.visible = true;
cursorDarkBlue.visible = true;
isSelecting = false;
});
return;
}

parentPage.selectedIndexData = cursorIndex;
FlxG.sound.play(Paths.sound('CS_confirm'));

cursorConfirmed.visible = true;
cursorConfirmed.animation.play("idle", true);
new FlxTimer().start(0.5, _ -> {
cursorConfirmed.visible = false;
cursor.visible = true;
cursorBlue.visible = true;
cursorDarkBlue.visible = true;
isSelecting = false;
});
}

function handleCursorPosition(elapsed:Float):Void
Expand All @@ -276,6 +309,12 @@ class CharSelectIndexSubPage extends FlxSpriteGroup
cursorDarkBlue.x = MathUtil.coolLerp(cursorDarkBlue.x, cursorLocIntended.x, 0.95 * 0.2);
cursorDarkBlue.y = MathUtil.coolLerp(cursorDarkBlue.y, cursorLocIntended.y, 0.95 * 0.2);

cursorConfirmed.x = cursor.x;
cursorConfirmed.y = cursor.y;

cursorDenied.x = cursor.x;
cursorDenied.y = cursor.y;

cursorLocIntended.put();
}
}

0 comments on commit 837eaba

Please sign in to comment.