diff --git a/source/funkin/options/type/ArrayOption.hx b/source/funkin/options/type/ArrayOption.hx index b143e16b..52c33904 100644 --- a/source/funkin/options/type/ArrayOption.hx +++ b/source/funkin/options/type/ArrayOption.hx @@ -52,8 +52,7 @@ class ArrayOption extends TextOption { } override function changeSelection(change:Int) { - if (locked) return; - currentSelection = FlxMath.wrap(currentSelection + change, 0, options.length - 1); + if (locked || currentSelection == (currentSelection = CoolUtil.boundInt(currentSelection + change, 0, options.length - 1))) return; __selectionText.text = formatTextOption(); CoolUtil.playMenuSFX(SCROLL); diff --git a/source/funkin/options/type/Checkbox.hx b/source/funkin/options/type/Checkbox.hx index 5ac65391..0659314a 100644 --- a/source/funkin/options/type/Checkbox.hx +++ b/source/funkin/options/type/Checkbox.hx @@ -37,7 +37,7 @@ class Checkbox extends TextOption { __text.x = 100; var fieldValue = Reflect.field(parent, optionName); - checked = fieldValue != null && fieldValue; + checked = fieldValue != null ? fieldValue : false; } public var firstFrame:Bool = true; diff --git a/source/funkin/options/type/NumOption.hx b/source/funkin/options/type/NumOption.hx index 70848275..a98ac732 100644 --- a/source/funkin/options/type/NumOption.hx +++ b/source/funkin/options/type/NumOption.hx @@ -32,7 +32,7 @@ class NumOption extends TextOption { this.parent = parent = parent != null ? parent : Options; var fieldValue = Reflect.field(parent, optionName); - if (fieldValue != null) currentSelection = fieldValue; + currentSelection = fieldValue != null ? fieldValue : 0; __number = new Alphabet(0, 20, ': $currentSelection', 'bold'); super(text, desc);