// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved. using System; using FlaxEditor.Windows; using FlaxEngine; namespace FlaxEditor.Content { /// /// Content proxy for . /// /// [ContentContextMenu("New/Scene")] public sealed class SceneProxy : JsonAssetBaseProxy { /// /// The scene files extension. /// public static readonly string Extension = "scene"; /// public override string Name => "Scene"; /// public override string FileExtension => Extension; /// public override bool IsProxyFor(ContentItem item) { return item is SceneItem; } /// public override bool CanCreate(ContentFolder targetLocation) { return targetLocation.CanHaveAssets; } /// public override void Create(string outputPath, object arg) { Editor.Instance.Scene.CreateSceneFile(outputPath); } /// public override EditorWindow Open(Editor editor, ContentItem item) { // Load scene Editor.Instance.Scene.OpenScene(((SceneItem)item).ID); return null; } /// public override Color AccentColor => Color.FromRGB(0xbb37ef); /// public override string TypeName => Scene.AssetTypename; /// public override AssetItem ConstructItem(string path, string typeName, ref Guid id) { return new SceneItem(path, id); } } }