39 lines
1020 B
C#
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);
|
|
}
|
|
}
|
|
} |