From fb7ad03083d45c627f92747174aabcd302a5f241 Mon Sep 17 00:00:00 2001 From: Cameron Taylor <cameron.taylor.ninja@gmail.com> Date: Tue, 30 Mar 2021 20:51:17 -0700 Subject: [PATCH] FPS counter toggle --- source/Main.hx | 5 ++++- source/TitleState.hx | 3 +-- source/ui/PreferencesMenu.hx | 13 +++++++++++++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/source/Main.hx b/source/Main.hx index 95b4e792f..b5f1dcb87 100644 --- a/source/Main.hx +++ b/source/Main.hx @@ -64,6 +64,8 @@ class Main extends Sprite var netStream:NetStream; private var overlay:Sprite; + public static var fpsCounter:FPS; + private function setupGame():Void { var stageWidth:Int = Lib.current.stage.stageWidth; @@ -85,7 +87,8 @@ class Main extends Sprite addChild(new FlxGame(gameWidth, gameHeight, initialState, zoom, framerate, framerate, skipSplash, startFullscreen)); #if !mobile - addChild(new FPS(10, 3, 0xFFFFFF)); + fpsCounter = new FPS(10, 3, 0xFFFFFF); + addChild(fpsCounter); #end /* video = new Video(); diff --git a/source/TitleState.hx b/source/TitleState.hx index 81f8244df..552d63fba 100644 --- a/source/TitleState.hx +++ b/source/TitleState.hx @@ -62,9 +62,8 @@ class TitleState extends MusicBeatState super.create(); - PreferencesMenu.initPrefs(); - FlxG.save.bind('funkin', 'ninjamuffin99'); + PreferencesMenu.initPrefs(); PlayerSettings.init(); Highscore.load(); diff --git a/source/ui/PreferencesMenu.hx b/source/ui/PreferencesMenu.hx index d9038d004..20cd56f3f 100644 --- a/source/ui/PreferencesMenu.hx +++ b/source/ui/PreferencesMenu.hx @@ -24,6 +24,7 @@ class PreferencesMenu extends ui.OptionsState.Page createPrefItem('downscroll', 'downscroll', false); createPrefItem('flashing menu', 'flashing-menu', true); createPrefItem('Camera Zooming on Beat', 'camera-zoom', true); + createPrefItem('FPS Counter', 'fps-counter', true); } public static function getPref(pref:String):Dynamic @@ -37,6 +38,10 @@ class PreferencesMenu extends ui.OptionsState.Page preferenceCheck('downscroll', true); preferenceCheck('flashing-menu', true); preferenceCheck('camera-zoom', true); + preferenceCheck('fps-counter', true); + + if (!getPref('fps-counter')) + FlxG.stage.removeChild(Main.fpsCounter); } private function createPrefItem(prefName:String, prefString:String, prefValue:Dynamic):Void @@ -84,6 +89,14 @@ class PreferencesMenu extends ui.OptionsState.Page preferences.set(prefName, daSwap); checkboxes[items.selectedIndex].daValue = daSwap; trace('toggled? ' + preferences.get(prefName)); + + if (prefName == 'fps-counter') + { + if (getPref('fps-counter')) + FlxG.stage.addChild(Main.fpsCounter); + else + FlxG.stage.removeChild(Main.fpsCounter); + } } override function update(elapsed:Float)