Advertisement
Guest User

settingsconfig

a guest
Mar 26th, 2025
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | Source Code | 0 0
  1. extends Node
  2.  
  3. var config = ConfigFile.new()
  4. const SETTINGS_FILE_PATH = "user://settings.ini"
  5.  
  6. func _ready():
  7. if !FileAccess.file_exists(SETTINGS_FILE_PATH):
  8. #audio setting
  9. config.set_value("audio", "mastervolume", 1.0)
  10. config.set_value("audio", "musicvolume", 1.0)
  11. config.set_value("audio", "sfxvolume", 1.0)
  12. config.set_value("audio", "voicesvolume", 1.0)
  13. config.set_value("audio", "ambiencevolume", 1.0)
  14. config.set_value("audio", "outputdevice", -1)
  15. config.set_value("audio", "speakermode", 0)
  16. #video setting
  17. config.set_value("video", "resolution", 0)
  18. config.set_value("video", "windowmode", 1)
  19. config.set_value("video", "resizewindow", false)
  20. config.set_value("video", "maxfps", 3)
  21. config.set_value("video", "vsync", 0)
  22. config.set_value("video", "darkmode", false)
  23. config.set_value("video", "brightness", 1.0)
  24. #keybind setting
  25. #not yet!
  26. #other setting
  27. config.set_value("other", "textspeed", 1)
  28. config.set_value("other", "language", 0)
  29. config.set_value("other", "tts", 0)
  30. config.set_value("other", "autosavefrequency", 0)
  31. config.set_value("other", "textscale", 100.0)
  32. config.set_value("other", "guiscale", 100.0)
  33. config.set_value("other", "autofreezesave", false)
  34. config.set_value("other", "highcontrast", false)
  35.  
  36. config.save(SETTINGS_FILE_PATH)
  37. else:
  38. config.load(SETTINGS_FILE_PATH)
  39.  
  40. #save/load audio
  41. func save_audio_setting(key: String, value):
  42. config.set_value ("audio", key, value)
  43. config.save(SETTINGS_FILE_PATH)
  44.  
  45. func load_audio_settings():
  46. var audio_settings = {}
  47. for key in config.get_section_keys("audio"):
  48. audio_settings[key] = config.get_value("audio", key)
  49. return audio_settings
  50.  
  51. #save/load video
  52. func save_video_setting(key: String, value):
  53. config.set_value ("video", key, value)
  54. config.save(SETTINGS_FILE_PATH)
  55.  
  56. func load_video_settings():
  57. var video_settings = {}
  58. for key in config.get_section_keys("video"):
  59. video_settings[key] = config.get_value("video", key)
  60. return video_settings
  61.  
  62. #save/load keybind
  63. func save_keybind_setting(key: String, value):
  64. config.set_value ("keybind", key, value)
  65. config.save(SETTINGS_FILE_PATH)
  66.  
  67. func load_keybind_settings():
  68. var keybind_settings = {}
  69. for key in config.get_section_keys("keybind"):
  70. keybind_settings[key] = config.get_value("keybind", key)
  71. return keybind_settings
  72.  
  73. #save/load other
  74. func save_other_setting(key: String, value):
  75. config.set_value ("other", key, value)
  76. config.save(SETTINGS_FILE_PATH)
  77.  
  78. func load_other_settings():
  79. var other_settings = {}
  80. for key in config.get_section_keys("other"):
  81. other_settings[key] = config.get_value("other", key)
  82. return other_settings
  83.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement