ape-ame/Settings.gd

33 lines
1.1 KiB
GDScript3
Raw Normal View History

2024-04-17 17:23:12 -04:00
extends Node
var config = ConfigFile.new()
2024-05-08 11:28:26 -04:00
const CHARACTERS = ["res://player-row.tscn", "res://player-apezoid.tscn", "res://player-iamond.tscn"]
2024-05-06 14:09:14 -04:00
2024-04-17 17:23:12 -04:00
func _ready():
var has_config = config.load("user://settings.cfg") == OK
print(has_config)
2024-04-19 17:59:19 -04:00
$"../Layout/Play".disabled = not has_config
2024-04-17 17:23:12 -04:00
if has_config:
$Menu/Username.text = config.get_value("config", "username")
2024-05-07 19:50:15 -04:00
$Menu/MusicVolume.value = config.get_value("config", "music_volume", 1)
2024-04-17 17:23:12 -04:00
$Menu/Controls.selected = 0 if config.get_value("config", "relative_controls") else 1
2024-05-07 16:40:25 -04:00
$Menu/Character.selected = CHARACTERS.find(config.get_value("gameplay", "class", "res://player-row.tscn"))
2024-04-17 17:23:12 -04:00
func _process(delta):
check_valid("")
func check_valid(none):
2024-04-18 15:02:37 -04:00
$Close.disabled = len($Menu/Username.text) != 3
2024-04-17 17:23:12 -04:00
func save():
config.set_value("config", "username", $Menu/Username.text)
config.set_value("config", "relative_controls", $Menu/Controls.selected == 0)
2024-05-07 19:50:15 -04:00
config.set_value("config", "music_volume", $Menu/MusicVolume.value)
2024-04-17 17:23:12 -04:00
2024-05-06 14:09:14 -04:00
config.set_value("gameplay", "class", CHARACTERS[$Menu/Character.selected])
2024-04-17 17:23:12 -04:00
print("Saving!")
config.save("user://settings.cfg")
2024-04-19 17:59:19 -04:00
$"../Layout/Play".disabled = false