mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2025-04-09 05:24:39 -04:00
home and end can now jump to the beginning and end of freeplay
This commit is contained in:
parent
0e0c4aeb77
commit
bb974c2642
2 changed files with 48 additions and 0 deletions
source/funkin
|
@ -67,6 +67,8 @@ class Controls extends FlxActionSet
|
|||
var _freeplay_left = new FunkinAction(Action.FREEPLAY_LEFT);
|
||||
var _freeplay_right = new FunkinAction(Action.FREEPLAY_RIGHT);
|
||||
var _freeplay_char_select = new FunkinAction(Action.FREEPLAY_CHAR_SELECT);
|
||||
var _freeplay_top_scroll = new FunkinAction(Action.FREEPLAY_TOP_SCROLL);
|
||||
var _freeplay_bottom_scroll = new FunkinAction(Action.FREEPLAY_BOTTOM_SCROLL);
|
||||
var _cutscene_advance = new FunkinAction(Action.CUTSCENE_ADVANCE);
|
||||
var _debug_menu = new FunkinAction(Action.DEBUG_MENU);
|
||||
#if FEATURE_CHART_EDITOR
|
||||
|
@ -276,6 +278,16 @@ class Controls extends FlxActionSet
|
|||
inline function get_FREEPLAY_CHAR_SELECT()
|
||||
return _freeplay_char_select.check();
|
||||
|
||||
public var FREEPLAY_BOTTOM_SCROLL(get, never):Bool;
|
||||
|
||||
inline function get_FREEPLAY_BOTTOM_SCROLL()
|
||||
return _freeplay_bottom_scroll.check();
|
||||
|
||||
public var FREEPLAY_TOP_SCROLL(get, never):Bool;
|
||||
|
||||
inline function get_FREEPLAY_TOP_SCROLL()
|
||||
return _freeplay_top_scroll.check();
|
||||
|
||||
public var CUTSCENE_ADVANCE(get, never):Bool;
|
||||
|
||||
inline function get_CUTSCENE_ADVANCE()
|
||||
|
@ -337,6 +349,8 @@ class Controls extends FlxActionSet
|
|||
add(_freeplay_left);
|
||||
add(_freeplay_right);
|
||||
add(_freeplay_char_select);
|
||||
add(_freeplay_bottom_scroll);
|
||||
add(_freeplay_top_scroll);
|
||||
add(_cutscene_advance);
|
||||
add(_debug_menu);
|
||||
#if FEATURE_CHART_EDITOR add(_debug_chart); #end
|
||||
|
@ -462,6 +476,8 @@ class Controls extends FlxActionSet
|
|||
case FREEPLAY_LEFT: _freeplay_left;
|
||||
case FREEPLAY_RIGHT: _freeplay_right;
|
||||
case FREEPLAY_CHAR_SELECT: _freeplay_char_select;
|
||||
case FREEPLAY_BOTTOM_SCROLL: _freeplay_bottom_scroll;
|
||||
case FREEPLAY_TOP_SCROLL: _freeplay_top_scroll;
|
||||
case CUTSCENE_ADVANCE: _cutscene_advance;
|
||||
case DEBUG_MENU: _debug_menu;
|
||||
#if FEATURE_CHART_EDITOR case DEBUG_CHART: _debug_chart; #end
|
||||
|
@ -542,6 +558,10 @@ class Controls extends FlxActionSet
|
|||
func(_freeplay_right, JUST_PRESSED);
|
||||
case FREEPLAY_CHAR_SELECT:
|
||||
func(_freeplay_char_select, JUST_PRESSED);
|
||||
case FREEPLAY_BOTTOM_SCROLL:
|
||||
func(_freeplay_bottom_scroll, JUST_PRESSED);
|
||||
case FREEPLAY_TOP_SCROLL:
|
||||
func(_freeplay_top_scroll, JUST_PRESSED);
|
||||
case CUTSCENE_ADVANCE:
|
||||
func(_cutscene_advance, JUST_PRESSED);
|
||||
case DEBUG_MENU:
|
||||
|
@ -770,6 +790,8 @@ class Controls extends FlxActionSet
|
|||
bindKeys(Control.FREEPLAY_LEFT, getDefaultKeybinds(scheme, Control.FREEPLAY_LEFT));
|
||||
bindKeys(Control.FREEPLAY_RIGHT, getDefaultKeybinds(scheme, Control.FREEPLAY_RIGHT));
|
||||
bindKeys(Control.FREEPLAY_CHAR_SELECT, getDefaultKeybinds(scheme, Control.FREEPLAY_CHAR_SELECT));
|
||||
bindKeys(Control.FREEPLAY_BOTTOM_SCROLL, getDefaultKeybinds(scheme, Control.FREEPLAY_BOTTOM_SCROLL));
|
||||
bindKeys(Control.FREEPLAY_TOP_SCROLL, getDefaultKeybinds(scheme, Control.FREEPLAY_TOP_SCROLL));
|
||||
bindKeys(Control.CUTSCENE_ADVANCE, getDefaultKeybinds(scheme, Control.CUTSCENE_ADVANCE));
|
||||
bindKeys(Control.DEBUG_MENU, getDefaultKeybinds(scheme, Control.DEBUG_MENU));
|
||||
#if FEATURE_CHART_EDITOR
|
||||
|
@ -810,6 +832,8 @@ class Controls extends FlxActionSet
|
|||
case Control.FREEPLAY_LEFT: return [Q]; // Switch tabs on the menu
|
||||
case Control.FREEPLAY_RIGHT: return [E]; // Switch tabs on the menu
|
||||
case Control.FREEPLAY_CHAR_SELECT: return [TAB];
|
||||
case Control.FREEPLAY_BOTTOM_SCROLL: return [END];
|
||||
case Control.FREEPLAY_TOP_SCROLL: return [HOME];
|
||||
case Control.CUTSCENE_ADVANCE: return [Z, ENTER];
|
||||
case Control.DEBUG_MENU: return [GRAVEACCENT];
|
||||
#if FEATURE_CHART_EDITOR case Control.DEBUG_CHART: return []; #end
|
||||
|
@ -839,6 +863,8 @@ class Controls extends FlxActionSet
|
|||
case Control.FREEPLAY_LEFT: return [Q]; // Switch tabs on the menu
|
||||
case Control.FREEPLAY_RIGHT: return [E]; // Switch tabs on the menu
|
||||
case Control.FREEPLAY_CHAR_SELECT: return [TAB];
|
||||
case Control.FREEPLAY_BOTTOM_SCROLL: return [END];
|
||||
case Control.FREEPLAY_TOP_SCROLL: return [HOME];
|
||||
case Control.CUTSCENE_ADVANCE: return [G, Z];
|
||||
case Control.DEBUG_MENU: return [GRAVEACCENT];
|
||||
#if FEATURE_CHART_EDITOR case Control.DEBUG_CHART: return []; #end
|
||||
|
@ -868,6 +894,8 @@ class Controls extends FlxActionSet
|
|||
case Control.FREEPLAY_LEFT: return [];
|
||||
case Control.FREEPLAY_RIGHT: return [];
|
||||
case Control.FREEPLAY_CHAR_SELECT: return [];
|
||||
case Control.FREEPLAY_BOTTOM_SCROLL: return [];
|
||||
case Control.FREEPLAY_TOP_SCROLL: return [];
|
||||
case Control.CUTSCENE_ADVANCE: return [ENTER];
|
||||
case Control.DEBUG_MENU: return [];
|
||||
#if FEATURE_CHART_EDITOR case Control.DEBUG_CHART: return []; #end
|
||||
|
@ -984,6 +1012,8 @@ class Controls extends FlxActionSet
|
|||
Control.FREEPLAY_LEFT => getDefaultGamepadBinds(Control.FREEPLAY_LEFT),
|
||||
Control.FREEPLAY_RIGHT => getDefaultGamepadBinds(Control.FREEPLAY_RIGHT),
|
||||
Control.FREEPLAY_CHAR_SELECT => getDefaultGamepadBinds(Control.FREEPLAY_CHAR_SELECT),
|
||||
Control.FREEPLAY_BOTTOM_SCROLL => getDefaultGamepadBinds(Control.FREEPLAY_BOTTOM_SCROLL),
|
||||
Control.FREEPLAY_TOP_SCROLL => getDefaultGamepadBinds(Control.FREEPLAY_TOP_SCROLL),
|
||||
Control.VOLUME_UP => getDefaultGamepadBinds(Control.VOLUME_UP),
|
||||
Control.VOLUME_DOWN => getDefaultGamepadBinds(Control.VOLUME_DOWN),
|
||||
Control.VOLUME_MUTE => getDefaultGamepadBinds(Control.VOLUME_MUTE),
|
||||
|
@ -1041,6 +1071,10 @@ class Controls extends FlxActionSet
|
|||
return [RIGHT_SHOULDER];
|
||||
case Control.FREEPLAY_CHAR_SELECT:
|
||||
return [X];
|
||||
case Control.FREEPLAY_BOTTOM_SCROLL:
|
||||
return [];
|
||||
case Control.FREEPLAY_TOP_SCROLL:
|
||||
return [];
|
||||
case Control.VOLUME_UP:
|
||||
[];
|
||||
case Control.VOLUME_DOWN:
|
||||
|
@ -1620,6 +1654,8 @@ enum Control
|
|||
FREEPLAY_LEFT;
|
||||
FREEPLAY_RIGHT;
|
||||
FREEPLAY_CHAR_SELECT;
|
||||
FREEPLAY_BOTTOM_SCROLL;
|
||||
FREEPLAY_TOP_SCROLL;
|
||||
// WINDOW
|
||||
#if FEATURE_SCREENSHOTS WINDOW_SCREENSHOT; #end
|
||||
WINDOW_FULLSCREEN;
|
||||
|
@ -1677,6 +1713,8 @@ enum abstract Action(String) to String from String
|
|||
var FREEPLAY_LEFT = "freeplay_left";
|
||||
var FREEPLAY_RIGHT = "freeplay_right";
|
||||
var FREEPLAY_CHAR_SELECT = "freeplay_char_select";
|
||||
var FREEPLAY_BOTTOM_SCROLL = "freeplay_bottom_scroll";
|
||||
var FREEPLAY_TOP_SCROLL = "freeplay_top_scroll";
|
||||
// VOLUME
|
||||
var VOLUME_UP = "volume_up";
|
||||
var VOLUME_DOWN = "volume_down";
|
||||
|
|
|
@ -1400,6 +1400,16 @@ class FreeplayState extends MusicBeatSubState
|
|||
}
|
||||
}
|
||||
|
||||
if (controls.FREEPLAY_BOTTOM_SCROLL && !busy)
|
||||
{
|
||||
changeSelection(grpCapsules.countLiving() - curSelected - 1);
|
||||
}
|
||||
|
||||
if (controls.FREEPLAY_TOP_SCROLL && !busy)
|
||||
{
|
||||
changeSelection(-curSelected);
|
||||
}
|
||||
|
||||
lerpScore = MathUtil.smoothLerp(lerpScore, intendedScore, elapsed, 0.5);
|
||||
lerpCompletion = MathUtil.smoothLerp(lerpCompletion, intendedCompletion, elapsed, 0.5);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue