// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
using FlaxEngine;
using FlaxEditor.Utilities;
using FlaxEngine.Utilities;
namespace FlaxEditor.States
{
///
/// In this state user may edit scene and use editor normally.
///
///
[HideInEditor]
public sealed class EditingSceneState : EditorState
{
internal string AutoSaveStatus;
///
public override bool CanUseToolbox => true;
///
public override bool CanUseUndoRedo => true;
///
public override bool CanChangeScene => true;
///
public override bool CanEditScene => true;
///
public override bool CanEnterPlayMode => true;
///
public override bool CanReloadScripts => true;
///
public override string Status => AutoSaveStatus;
internal EditingSceneState(Editor editor)
: base(editor)
{
UpdateFPS();
}
///
public override void OnEnter()
{
base.OnEnter();
ScriptsBuilder.ScriptsReloadBegin += OnScriptsReloadBegin;
}
///
public override void OnExit(State nextState)
{
ScriptsBuilder.ScriptsReloadBegin -= OnScriptsReloadBegin;
base.OnExit(nextState);
}
private void OnScriptsReloadBegin()
{
StateMachine.GoToState();
}
}
}