来源
@timothyqiu的 如何保存游戏设置【Godot教程】
部分源码
这部分代码主要是使用ConfigFile类型,进行游戏背景音乐和音效的启用和暂停。涉及配置项的保存和加载。
extends Node
const CONFIG_PATH "user://settings.cfg"
var bgm_enabled setget set_bgm_enabled,is_bgm_enabled
var sfx_enabled setget set_sfx_enabled,is_sfx_enabled
func set_bgm_enabled(value):
AudioServer.set_bus_mute(BGM_IDX,not value)
func is_sfx_enabled()
return not AudioServer.is_bus_mute(SFX_IDX)
func set_sfx_enabled(value):
AudioServer.set_bus_mute(SFX_IDX,not value)
func save_config()
var file ConfigFile.new()
file.set_value("audio","bgm_enabled",is_bgm_enabled())
file.set_value("audio","sfx_enabled",is_sfx_enabled())
var err = file.save(CONFIG_PATH)
if err != OK:
push_error("Failed to save config:%d"%err)
func load_config():
var file ConfigFile.new()
var err file.load(CONFIG_PATH)
if err ==OK:
set_bgm_enabled(file.get_value("audio","bgm_enabled",true))
set_sfx_enabled(file.get_value("audio","sfx_enabled",true))
else:
push_warning("Failed to load config:%d"%err)
set_bgm_enabled(true)
set_sfx_enabled(true)