Refactor settings types to use scripting API
This commit is contained in:
@@ -8,35 +8,38 @@
|
||||
/// <summary>
|
||||
/// Audio settings container.
|
||||
/// </summary>
|
||||
/// <seealso cref="SettingsBase{AudioSettings}" />
|
||||
class AudioSettings : public SettingsBase<AudioSettings>
|
||||
API_CLASS(sealed, Namespace="FlaxEditor.Content.Settings") class FLAXENGINE_API AudioSettings : public SettingsBase
|
||||
{
|
||||
DECLARE_SCRIPTING_TYPE_MINIMAL(AudioSettings);
|
||||
public:
|
||||
|
||||
/// <summary>
|
||||
/// If checked, audio playback will be disabled in build game. Can be used if game uses custom audio playback engine.
|
||||
/// </summary>
|
||||
API_FIELD(Attributes="EditorOrder(0), DefaultValue(false), EditorDisplay(\"General\")")
|
||||
bool DisableAudio = false;
|
||||
|
||||
/// <summary>
|
||||
/// The doppler effect factor. Scale for source and listener velocities. Default is 1.
|
||||
/// </summary>
|
||||
API_FIELD(Attributes="EditorOrder(100), DefaultValue(1.0f), EditorDisplay(\"General\")")
|
||||
float DopplerFactor = 1.0f;
|
||||
|
||||
/// <summary>
|
||||
/// True if mute all audio playback when game has no use focus.
|
||||
/// </summary>
|
||||
API_FIELD(Attributes="EditorOrder(200), DefaultValue(true), EditorDisplay(\"General\", \"Mute On Focus Loss\")")
|
||||
bool MuteOnFocusLoss = true;
|
||||
|
||||
public:
|
||||
|
||||
/// <summary>
|
||||
/// Gets the instance of the settings asset (default value if missing). Object returned by this method is always loaded with valid data to use.
|
||||
/// </summary>
|
||||
static AudioSettings* Get();
|
||||
|
||||
// [SettingsBase]
|
||||
void RestoreDefault() final override
|
||||
{
|
||||
DisableAudio = false;
|
||||
DopplerFactor = 1.0f;
|
||||
MuteOnFocusLoss = true;
|
||||
}
|
||||
void Apply() override;
|
||||
|
||||
void Deserialize(DeserializeStream& stream, ISerializeModifier* modifier) final override
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user