Files
Fishing2/Assets/Scripts/Common/Services/Settings/Options/Graphics/QualityLevelSetting.cs
2025-05-30 17:49:12 +08:00

39 lines
1020 B
C#

using UnityEngine;
namespace NBF.Setting
{
/// <summary>
/// 画质设置
/// </summary>
[Sort(3)]
public class QualityLevelSetting : MultiOption<int>
{
private int _defaultQualityLevel;
public override string Name => "QualityLevel";
public override string Group => SettingsDef.Group.Graphic;
protected override int DefaultValue => _defaultQualityLevel;
protected override void OnInitialize()
{
var names = QualitySettings.names;
for (int i = 0; i < names.Length; i++)
{
AddOption(names[i], i);
}
_defaultQualityLevel = QualitySettings.GetQualityLevel();
SetIndex(QualitySettings.GetQualityLevel());
}
protected override void OnApply()
{
QualitySettings.SetQualityLevel(GetSelectedOption());
}
protected override void OnReset()
{
SetIndex(_defaultQualityLevel);
}
}
}