using System.Runtime.CompilerServices;
namespace BansheeEngine
{
///
/// Handles operations with the active scene (level).
///
public static class Scene
{
///
/// Returns the UUID of the scene prefab. This is empty if scene hasn't been saved yet.
///
internal static string ActiveSceneUUID { get; set; }
///
/// Checks did we make any modifications to the scene since it was last saved.
///
/// True if the scene was never saved, or was modified after last save.
public static bool IsModified()
{
// TODO - Needs implementing
return true;
}
///
/// Clears all scene objects from the current scene.
///
public static void Clear()
{
Internal_ClearScene();
ActiveSceneUUID = null;
}
///
/// Loads a new scene.
///
/// Path to the prefab to load.
public static void Load(string path)
{
Clear();
ActiveSceneUUID = Internal_LoadScene(path);
}
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern string Internal_LoadScene(string path);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_ClearScene();
}
}