mirror of
https://github.com/ninjamuffin99/Funkin.git
synced 2025-03-22 18:09:33 +00:00
WIP on refactoring some classes related to controls
This commit is contained in:
parent
0a4e0861cc
commit
b9b1461ab5
|
@ -1,5 +1,6 @@
|
|||
package funkin;
|
||||
|
||||
import funkin.input.Controls;
|
||||
import funkin.play.song.Song;
|
||||
import flash.text.TextField;
|
||||
import flixel.addons.display.FlxGridOverlay;
|
||||
|
@ -23,7 +24,7 @@ import flixel.tweens.FlxTween;
|
|||
import flixel.util.FlxColor;
|
||||
import flixel.util.FlxSpriteUtil;
|
||||
import flixel.util.FlxTimer;
|
||||
import funkin.Controls.Control;
|
||||
import funkin.input.Controls.Control;
|
||||
import funkin.data.level.LevelRegistry;
|
||||
import funkin.data.song.SongRegistry;
|
||||
import funkin.freeplayStuff.BGScrollingText;
|
||||
|
|
|
@ -10,7 +10,7 @@ import flixel.math.FlxRect;
|
|||
import flixel.FlxSprite;
|
||||
import flixel.system.debug.log.LogStyle;
|
||||
import flixel.util.FlxColor;
|
||||
import funkin.ui.PreferencesMenu;
|
||||
import funkin.ui.options.PreferencesMenu;
|
||||
import funkin.util.macro.MacroUtil;
|
||||
import funkin.util.WindowUtil;
|
||||
import funkin.play.PlayStatePlaylist;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package funkin;
|
||||
|
||||
import funkin.Controls;
|
||||
import funkin.input.Controls;
|
||||
import flixel.input.gamepad.FlxGamepad;
|
||||
import flixel.input.gamepad.FlxGamepadInputID;
|
||||
import flixel.input.keyboard.FlxKey;
|
||||
|
|
|
@ -108,7 +108,7 @@ class MainMenuState extends MusicBeatState
|
|||
#end
|
||||
|
||||
createMenuItem('options', 'mainmenu/options', function() {
|
||||
startExitState(new funkin.ui.OptionsState());
|
||||
startExitState(new funkin.ui.options.OptionsState());
|
||||
});
|
||||
|
||||
// Reset position of menu items.
|
||||
|
|
|
@ -11,6 +11,7 @@ import funkin.modding.PolymodHandler;
|
|||
import funkin.modding.events.ScriptEvent;
|
||||
import funkin.modding.module.ModuleHandler;
|
||||
import funkin.util.SortUtil;
|
||||
import funkin.input.Controls;
|
||||
|
||||
/**
|
||||
* MusicBeatState actually represents the core utility FlxState of the game.
|
||||
|
|
|
@ -10,6 +10,7 @@ import funkin.modding.module.ModuleHandler;
|
|||
import funkin.modding.PolymodHandler;
|
||||
import funkin.util.SortUtil;
|
||||
import flixel.util.FlxSort;
|
||||
import funkin.input.Controls;
|
||||
|
||||
/**
|
||||
* MusicBeatSubState reincorporates the functionality of MusicBeatState into an FlxSubState.
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
package funkin;
|
||||
|
||||
class Options
|
||||
{
|
||||
public static var masterVolume:Float = 1;
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
package funkin;
|
||||
|
||||
import funkin.save.Save;
|
||||
import funkin.Controls;
|
||||
import funkin.input.Controls;
|
||||
import flixel.FlxCamera;
|
||||
import funkin.input.PreciseInputManager;
|
||||
import flixel.input.actions.FlxActionInput;
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
|
||||
package funkin;
|
||||
package funkin.input;
|
||||
|
||||
import flixel.input.gamepad.FlxGamepad;
|
||||
import flixel.util.FlxDirectionFlags;
|
|
@ -51,7 +51,7 @@ import funkin.data.song.SongData.SongCharacterData;
|
|||
import funkin.play.stage.Stage;
|
||||
import funkin.play.stage.StageData.StageDataParser;
|
||||
import funkin.ui.PopUpStuff;
|
||||
import funkin.ui.PreferencesMenu;
|
||||
import funkin.ui.options.PreferencesMenu;
|
||||
import funkin.ui.stageBuildShit.StageOffsetSubState;
|
||||
import funkin.ui.story.StoryMenuState;
|
||||
import funkin.util.SerializerUtil;
|
||||
|
|
|
@ -12,7 +12,7 @@ import funkin.play.notes.NoteSplash;
|
|||
import funkin.play.notes.NoteSprite;
|
||||
import funkin.play.notes.SustainTrail;
|
||||
import funkin.data.song.SongData.SongNoteData;
|
||||
import funkin.ui.PreferencesMenu;
|
||||
import funkin.ui.options.PreferencesMenu;
|
||||
import funkin.util.SortUtil;
|
||||
|
||||
/**
|
||||
|
|
|
@ -8,7 +8,7 @@ import flixel.FlxSprite;
|
|||
import flixel.graphics.FlxGraphic;
|
||||
import flixel.graphics.tile.FlxDrawTrianglesItem;
|
||||
import flixel.math.FlxMath;
|
||||
import funkin.ui.PreferencesMenu;
|
||||
import funkin.ui.options.PreferencesMenu;
|
||||
|
||||
/**
|
||||
* This is based heavily on the `FlxStrip` class. It uses `drawTriangles()` to clip a sustain note
|
||||
|
|
|
@ -3,7 +3,7 @@ package funkin.save;
|
|||
import flixel.util.FlxSave;
|
||||
import funkin.save.migrator.SaveDataMigrator;
|
||||
import thx.semver.Version;
|
||||
import funkin.Controls.Device;
|
||||
import funkin.input.Controls.Device;
|
||||
import funkin.save.migrator.RawSaveData_v1_0_0;
|
||||
|
||||
@:nullSafety
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package funkin;
|
||||
package funkin.ui.options;
|
||||
|
||||
import flixel.FlxSubState;
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package funkin.ui;
|
||||
package funkin.ui.options;
|
||||
|
||||
import funkin.data.notestyle.NoteStyleRegistry;
|
||||
import flixel.addons.effects.chainable.FlxEffectSprite;
|
||||
import flixel.addons.effects.chainable.FlxOutlineEffect;
|
||||
import flixel.group.FlxGroup.FlxTypedGroup;
|
||||
import flixel.util.FlxColor;
|
||||
import funkin.ui.OptionsState.Page;
|
||||
import funkin.ui.options.OptionsState.Page;
|
||||
import funkin.play.notes.NoteSprite;
|
||||
|
||||
class ColorsMenu extends Page
|
|
@ -1,4 +1,4 @@
|
|||
package funkin.ui;
|
||||
package funkin.ui.options;
|
||||
|
||||
import flixel.FlxCamera;
|
||||
import flixel.FlxObject;
|
||||
|
@ -7,12 +7,12 @@ import flixel.group.FlxGroup;
|
|||
import flixel.input.actions.FlxActionInput;
|
||||
import flixel.input.gamepad.FlxGamepadInputID;
|
||||
import flixel.input.keyboard.FlxKey;
|
||||
import funkin.Controls;
|
||||
import funkin.input.Controls;
|
||||
import funkin.ui.AtlasText;
|
||||
import funkin.ui.MenuList;
|
||||
import funkin.ui.TextMenuList;
|
||||
|
||||
class ControlsMenu extends funkin.ui.OptionsState.Page
|
||||
class ControlsMenu extends funkin.ui.options.OptionsState.Page
|
||||
{
|
||||
public static inline final COLUMNS = 2;
|
||||
static var controlList = Control.createAll();
|
|
@ -1,11 +1,11 @@
|
|||
package funkin.ui;
|
||||
package funkin.ui.options;
|
||||
|
||||
import funkin.modding.PolymodHandler;
|
||||
import flixel.group.FlxGroup.FlxTypedGroup;
|
||||
import flixel.text.FlxText;
|
||||
import flixel.util.FlxColor;
|
||||
import polymod.Polymod;
|
||||
import funkin.ui.OptionsState.Page;
|
||||
import funkin.ui.options.OptionsState.Page;
|
||||
|
||||
class ModMenu extends Page
|
||||
{
|
|
@ -1,4 +1,4 @@
|
|||
package funkin.ui;
|
||||
package funkin.ui.options;
|
||||
|
||||
import flixel.FlxSprite;
|
||||
import flixel.FlxSubState;
|
||||
|
@ -6,6 +6,7 @@ import flixel.addons.transition.FlxTransitionableState;
|
|||
import flixel.group.FlxGroup;
|
||||
import flixel.util.FlxSignal;
|
||||
import funkin.util.WindowUtil;
|
||||
import funkin.input.Controls;
|
||||
|
||||
class OptionsState extends MusicBeatState
|
||||
{
|
||||
|
@ -33,7 +34,7 @@ class OptionsState extends MusicBeatState
|
|||
if (options.hasMultipleOptions())
|
||||
{
|
||||
options.onExit.add(exitToMainMenu);
|
||||
controls.onExit.add(switchPage.bind(Options));
|
||||
controls.onExit.add(exitControls);
|
||||
preferences.onExit.add(switchPage.bind(Options));
|
||||
}
|
||||
else
|
||||
|
@ -83,10 +84,19 @@ class OptionsState extends MusicBeatState
|
|||
|
||||
function switchPage(name:PageName)
|
||||
{
|
||||
// Todo animate?
|
||||
// TODO: Animate this transition?
|
||||
setPage(name);
|
||||
}
|
||||
|
||||
function exitControls():Void
|
||||
{
|
||||
// Apply any changes to the controls.
|
||||
PlayerSettings.reset();
|
||||
PlayerSettings.init();
|
||||
|
||||
switchPage(Options);
|
||||
}
|
||||
|
||||
function exitToMainMenu()
|
||||
{
|
||||
currentPage.enabled = false;
|
|
@ -1,11 +1,11 @@
|
|||
package funkin.ui;
|
||||
package funkin.ui.options;
|
||||
|
||||
import flixel.FlxCamera;
|
||||
import flixel.FlxObject;
|
||||
import flixel.FlxSprite;
|
||||
import flixel.group.FlxSpriteGroup.FlxTypedSpriteGroup;
|
||||
import funkin.ui.AtlasText.AtlasFont;
|
||||
import funkin.ui.OptionsState.Page;
|
||||
import funkin.ui.options.OptionsState.Page;
|
||||
import funkin.ui.TextMenuList.TextMenuItem;
|
||||
|
||||
class PreferencesMenu extends Page
|
Loading…
Reference in a new issue