EditorInterface
Интерфейс редактора Reckfell.
Интерфейс редактора Reckfell.
EditorInterface дает вам контроль над окном редактора Reckfell. Он позволяет настраивать окно, сохранять и (пере)загружать сцены, визуализировать предварительные просмотры сеток, проверять и редактировать ресурсы и объекты, а также предоставляет доступ к EditorSettings, EditorFileSystem, EditorResourcePreview, ScriptEditor, окну просмотра редактора и информации о сценах.
Примечание: Этот класс не должен быть инстанцирован напрямую. Вместо этого обращайтесь к синглтону напрямую по его имени.
// In C# you can access it via the static Singleton property.
EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Свойства3
DistractionFreeModeСвойство
public bool DistractionFreeMode { get; set; }Читает или переключает режим редактора с уменьшенным количеством отвлекающих панелей. Не переводит игру в полноэкранный режим и не меняет состояние проекта на диске.
MovieMakerEnabledСвойство
public bool MovieMakerEnabled { get; set; }Если true, режим Создатель кино включен в редакторе. См. MovieWriter для получения дополнительной информации.
SingletonСвойство
public static EditorInterface Singleton { get; }Единственный интерфейс работающего редактора. Используйте из кода расширения редактора; это не сервис экспортированной игры. Не освобождайте экземпляр.
Методы80
AddRootEntityvoid
public void AddRootEntity(Entity node);Делает node корнем текущей открытой сцены. Работает только если сцена пуста. Если node является экземпляром сцены, будет создана наследующая сцена.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
CloseSceneError
public Error CloseScene();Закрывает текущий уровень напрямую, отбрасывая несохранённые изменения без диалога подтверждения в текущей реализации. Сначала сохраните нужные данные. Возвращает Error.Ok при выполнении закрытия либо Error.DoesNotExist для начальной пустой вкладки без уровня.
ErrorЗакрывает текущий уровень напрямую, отбрасывая несохранённые изменения без диалога подтверждения в текущей реализации. Сначала сохраните нужные данные. Возвращает Error.Ok при выполнении закрытия либо Error.DoesNotExist для начальной пустой вкладки без уровня.
EditEntityvoid
public void EditEntity(Entity node);Передаёт Entity редактору для редактирования через инспектор. Не создаёт Entity и не добавляет её в уровень. Переданный объект сохраняет своего владельца.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
nodeEntity для редактирования, не передаваемая в собственность вызову.
EditResourcevoid
public void EditResource(Resource resource);Открывает переданный ресурс для редактирования. Не сохраняет его на диск. Для Script с переходом к строке и столбцу используйте EditScript.
| Имя | Тип | По умолчанию |
|---|---|---|
resource | Resource | — |
resourceРесурс для редактирования, не команда сохранения.
EditScriptvoid
public void EditScript(Script script, int line = -1, int column = 0, bool grabFocus = true);Открывает Script в настроенном редакторе соответствующего языка, в том числе внешнем. Положительные line и column задаются от 1: обёртка вычитает 1 из обоих значений. Значения по умолчанию -1 и 0 не означают строку и столбец 0. grabFocus запрашивает фокус.
| Имя | Тип | По умолчанию |
|---|---|---|
script | Script | — |
line | int | -1 |
column | int | 0 |
grabFocus | bool | true |
scriptРесурс Script, открываемый настроенным редактором языка.
lineПоложительная строка от 1; -1 по умолчанию не задаёт первую строку.
columnПоложительный столбец от 1; обёртка вычитает 1.
grabFocusЗапросить фокус редактора скрипта.
GetBaseControlControl
public Control GetBaseControl();Возвращает базовый Control интерфейса редактора, например для размещения собственного диалога. Это объект редактора: не удаляйте, не освобождайте и не меняйте ему родителя. Собственные элементы удаляйте при отключении расширения.
ControlВозвращает базовый Control интерфейса редактора, например для размещения собственного диалога. Это объект редактора: не удаляйте, не освобождайте и не меняйте ему родителя. Собственные элементы удаляйте при отключении расширения.
GetCommandPaletteEditorCommandPalette
public EditorCommandPalette GetCommandPalette();Возвращает общую палитру команд редактора. Это не команда открыть палитру. Собственные команды снимайте при отключении расширения; сервис не освобождайте.
EditorCommandPaletteВозвращает общую палитру команд редактора. Это не команда открыть палитру. Собственные команды снимайте при отключении расширения; сервис не освобождайте.
GetContentBrowserContentBrowser
public ContentBrowser GetContentBrowser();Возвращает общий ContentBrowser редактора. Пути и выделение файлов относятся к этому браузеру, а не к выделению Entity. Не освобождайте панель.
ContentBrowserВозвращает общий ContentBrowser редактора. Пути и выделение файлов относятся к этому браузеру, а не к выделению Entity. Не освобождайте панель.
GetCurrentDirectorystring
public string GetCurrentDirectory();Возвращает текущую директорию ContentBrowser. Не рабочую директорию процесса и не обязательно корень проекта.
stringВозвращает текущую директорию ContentBrowser. Не рабочую директорию процесса и не обязательно корень проекта.
GetCurrentFeatureProfilestring
public string GetCurrentFeatureProfile();Возвращает имя текущего активированного профиля функций. Если в данный момент активен профиль по умолчанию, вместо него возвращается пустая строка.
Чтобы получить ссылку на EditorFeatureProfile, необходимо загрузить профиль функций с помощью EditorFeatureProfile.LoadFromFile.
Примечание: Профили функций, созданные через пользовательский интерфейс, загружаются из каталога feature_profiles в виде файла с расширением .profile. Папку конфигурации редактора можно найти с помощью EditorPaths.GetConfigDir.
stringGetCurrentPathstring
public string GetCurrentPath();Возвращает текущий путь ContentBrowser. Не считайте его всегда директорией: для каталога используйте GetCurrentDirectory.
stringВозвращает текущий путь ContentBrowser. Не считайте его всегда директорией: для каталога используйте GetCurrentDirectory.
GetDockByNameEditorDock
public EditorDock GetDockByName(string name);Ищет зарегистрированную панель по отображаемому заголовку. Это не поиск Entity по Name и не поиск плагина по каталогу.
| Имя | Тип | По умолчанию |
|---|---|---|
name | string | — |
nameОтображаемый заголовок, например Docs workspace. Перевод или смена Title может изменить результат поиска.
EditorDockEditorDock при совпадении, иначе null. Для собственных панелей предпочтительнее сохранять прямую ссылку.
GetEditedSceneRootEntity
public Entity GetEditedSceneRoot();Читает корень текущей редактируемой иерархии. Не равно CurrentScene запущенной игры. В проверке вернул корень открытого Fixture.rscene; не изменяет иерархию.
EntityEntity корня либо null, если редактируемого содержимого нет. Проверяйте перед чтением детей или свойств.
GetEditorLanguagestring
public string GetEditorLanguage();Возвращает выбранный в настройках язык интерфейса редактора. Это не локаль экспортируемой игры.
stringВозвращает выбранный в настройках язык интерфейса редактора. Это не локаль экспортируемой игры.
GetEditorMainScreenVBoxContainer · Устарело
public VBoxContainer GetEditorMainScreen();Устаревший доступ к VBoxContainer для прежних расширений главного экрана. Он больше не представляет весь главный экран редактора. Для панели используйте GetDockByName; для общего родителя собственного UI — GetBaseControl. Возвращённый контейнер принадлежит редактору.
VBoxContainerУстаревший доступ к VBoxContainer для прежних расширений главного экрана. Он больше не представляет весь главный экран редактора. Для панели используйте GetDockByName; для общего родителя собственного UI — GetBaseControl. Возвращённый контейнер принадлежит редактору.
GetEditorPathsEditorPaths
public EditorPaths GetEditorPaths();Возвращает общий EditorPaths с путями данных и настроек редактора. Не подменяйте этими путями пути ресурсов проекта и не освобождайте сервис.
EditorPathsВозвращает общий EditorPaths с путями данных и настроек редактора. Не подменяйте этими путями пути ресурсов проекта и не освобождайте сервис.
GetEditorScalefloat
public float GetEditorScale();Возвращает текущий множитель масштаба интерфейса редактора EDSCALE. Для собственных фиксированных размеров умножайте базовое значение на этот коэффициент; это не разрешение экрана и не масштаб камеры.
floatВозвращает текущий множитель масштаба интерфейса редактора EDSCALE. Для собственных фиксированных размеров умножайте базовое значение на этот коэффициент; это не разрешение экрана и не масштаб камеры.
GetEditorSettingsEditorSettings
public EditorSettings GetEditorSettings();Возвращает текущий объект настроек редактора. Это настройки среды редактора, не ProjectSettings игры. Ссылка заимствована: не освобождайте singleton и не создавайте новый экземпляр для обычного чтения.
EditorSettingsТекущие EditorSettings.
GetEditorThemeTheme
public Theme GetEditorTheme();Возвращает общий ресурс темы редактора. Читайте из него стили, цвета и значки для своего UI. Изменение ресурса затрагивает его пользователей; не используйте общую тему как личную копию.
ThemeВозвращает общий ресурс темы редактора. Читайте из него стили, цвета и значки для своего UI. Изменение ресурса затрагивает его пользователей; не используйте общую тему как личную копию.
GetEditorToasterEditorToaster
public EditorToaster GetEditorToaster();Возвращает общий сервис уведомлений редактора. Получение ссылки ещё не показывает сообщение. Не освобождайте сервис.
EditorToasterВозвращает общий сервис уведомлений редактора. Получение ссылки ещё не показывает сообщение. Не освобождайте сервис.
GetEditorUndoRedoEditorUndoRedoManager
public EditorUndoRedoManager GetEditorUndoRedo();Возвращает общий EditorUndoRedoManager. Изменения расширения оформляйте действиями подходящей истории; получение менеджера само по себе не записывает Undo. Не освобождайте сервис.
EditorUndoRedoManagerВозвращает общий EditorUndoRedoManager. Изменения расширения оформляйте действиями подходящей истории; получение менеджера само по себе не записывает Undo. Не освобождайте сервис.
GetEditorViewport2DSubViewport
public SubViewport GetEditorViewport2D();Возвращает SubViewport редактирования 2D. Он принадлежит редактору, не запущенной игре. Не освобождайте и не перенастраивайте его как собственный viewport.
SubViewportВозвращает SubViewport редактирования 2D. Он принадлежит редактору, не запущенной игре. Не освобождайте и не перенастраивайте его как собственный viewport.
GetEditorViewport3DSubViewport
public SubViewport GetEditorViewport3D(int idx = 0);Возвращает один из четырёх SubViewport редактора 3D по idx от 0 до 3. Неверный индекс приводит к ошибке и null. Это не камера и не viewport запущенной игры; объект принадлежит редактору.
| Имя | Тип | По умолчанию |
|---|---|---|
idx | int | 0 |
idxИндекс 3D-viewport редактора от 0 до 3.
SubViewportВозвращает один из четырёх SubViewport редактора 3D по idx от 0 до 3. Неверный индекс приводит к ошибке и null. Это не камера и не viewport запущенной игры; объект принадлежит редактору.
GetEntity3DRotateSnapfloat
public float GetEntity3DRotateSnap();Возвращает значение, на которое установлена привязка к вращательному полю в 3D-редакторе.
floatGetEntity3DScaleSnapfloat
public float GetEntity3DScaleSnap();Возвращает количество единиц, на которое установлена привязка масштаба в 3D-редакторе.
floatGetEntity3DTranslateSnapfloat
public float GetEntity3DTranslateSnap();Возвращает значение, на которое установлена привязка к перемещению в 3D-редакторе.
floatGetInspectorEditorInspector
public EditorInspector GetInspector();Возвращает инспектор редактора. Для показа объекта используйте InspectObject или EditResource/EditEntity. Не освобождайте и не перемещайте сам инспектор.
EditorInspectorВозвращает инспектор редактора. Для показа объекта используйте InspectObject или EditResource/EditEntity. Не освобождайте и не перемещайте сам инспектор.
GetMcpServiceEditorMcpService
public EditorMcpService GetMcpService();Возвращает встроенный диспетчер команд MCP, совместно используемый внешними клиентами и доком AI. Доступно в редакторе построено с помощью модуля MCP. Команды работают на главной нитью; асинхронные операции возвращают идентификатор работы. Эта услуга, принадлежащая редактору, не должна быть освобождена.
EditorMcpServiceGetOpenSceneRootsReckfell.Collections.Array<Entity>
public Reckfell.Collections.Array<Entity> GetOpenSceneRoots();Возвращает новый массив корневых Entity открытых уровней, пропуская отсутствующие корни. Ссылки ведут на реальные объекты редактора, не копии; не освобождайте их. Из-за пропусков не сопоставляйте индексы вслепую с GetOpenScenes.
Reckfell.Collections.Array<Entity>Возвращает новый массив корневых Entity открытых уровней, пропуская отсутствующие корни. Ссылки ведут на реальные объекты редактора, не копии; не освобождайте их. Из-за пропусков не сопоставляйте индексы вслепую с GetOpenScenes.
GetOpenScenesstring[]
public string[] GetOpenScenes();Возвращает новый string[] путей открытых уровней в порядке вкладок. Несохранённый новый уровень может иметь пустой путь. Массив не является списком экземпляров Entity.
string[]Возвращает новый string[] путей открытых уровней в порядке вкладок. Несохранённый новый уровень может иметь пустой путь. Массив не является списком экземпляров Entity.
GetPlayingScenestring
public string GetPlayingScene();Возвращает имя сцены, которая воспроизводится. Если в данный момент сцена не воспроизводится, возвращает пустую строку.
stringGetResourceFilesystemEditorFileSystem
public EditorFileSystem GetResourceFilesystem();Возвращает общий EditorFileSystem, индексирующий ресурсы проекта. Это не универсальный файловый API и не копия каталога. Не освобождайте сервис.
EditorFileSystemВозвращает общий EditorFileSystem, индексирующий ресурсы проекта. Это не универсальный файловый API и не копия каталога. Не освобождайте сервис.
GetResourcePreviewerEditorResourcePreview
public EditorResourcePreview GetResourcePreviewer();Возвращает общий EditorResourcePreview для запросов превью ресурсов. Сам вызов не создаёт готовую текстуру и не ожидает завершения генерации. Не освобождайте сервис.
EditorResourcePreviewВозвращает общий EditorResourcePreview для запросов превью ресурсов. Сам вызов не создаёт готовую текстуру и не ожидает завершения генерации. Не освобождайте сервис.
GetScenePaint2DScenePaint2DEditor
public ScenePaint2DEditor GetScenePaint2D();Возвращает общий инструмент ScenePaint2DEditor редактора. Это не новый экземпляр инструмента и не Entity игры; не освобождайте его.
ScenePaint2DEditorВозвращает общий инструмент ScenePaint2DEditor редактора. Это не новый экземпляр инструмента и не Entity игры; не освобождайте его.
GetScriptEditorScriptEditor
public ScriptEditor GetScriptEditor();Возвращает установленный экземпляр панели Script. Его текущий документ может быть справкой, поэтому GetCurrentScript()/GetCurrentEditor() не обязаны возвращать скрипт. Это не объект внешней C#-IDE.
ScriptEditorПанель Script текущего редактора.
GetSelectedPathsstring[]
public string[] GetSelectedPaths();Возвращает новый string[] путей, выбранных в ContentBrowser. Изменение массива не меняет выделение браузера. Это не пути выбранных Entity.
string[]Возвращает новый string[] путей, выбранных в ContentBrowser. Изменение массива не меняет выделение браузера. Это не пути выбранных Entity.
GetSelectionEditorSelection
public EditorSelection GetSelection();Возвращает общий EditorSelection редактора. Используйте его для чтения и изменения выделенных Entity; это не список выбранных файлов ContentBrowser. Не освобождайте сервис.
EditorSelectionВозвращает общий EditorSelection редактора. Используйте его для чтения и изменения выделенных Entity; это не список выбранных файлов ContentBrowser. Не освобождайте сервис.
GetUnsavedScenesstring[]
public string[] GetUnsavedScenes();Возвращает пути открытых уровней с несохранёнными изменениями. У нового уровня путь может быть пустым. Это снимок состояния, не операция сохранения.
string[]Возвращает пути открытых уровней с несохранёнными изменениями. У нового уровня путь может быть пустым. Это снимок состояния, не операция сохранения.
InspectObjectvoid
public void InspectObject(ReckfellObject @object, string forProperty = "", bool inspectorOnly = false);Показывает заданное свойство для заданного object в доке Inspector редактора. Если inspector_only равно true, плагины не будут пытаться редактировать object.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
forProperty | string | "" |
inspectorOnly | bool | false |
IsDistractionFreeModeEnabledbool
public bool IsDistractionFreeModeEnabled();Читает или переключает режим редактора с уменьшенным количеством отвлекающих панелей. Не переводит игру в полноэкранный режим и не меняет состояние проекта на диске.
boolЧитает или переключает режим редактора с уменьшенным количеством отвлекающих панелей. Не переводит игру в полноэкранный режим и не меняет состояние проекта на диске.
IsEntity3DSnapEnabledbool
public bool IsEntity3DSnapEnabled();Возвращает true, если в 3D-редакторе в данный момент включен режим привязки, и false в противном случае.
boolIsExitingbool
public bool IsExiting();Возвращает текущее состояние выхода из редактора. Не завершает редактор.
boolВозвращает текущее состояние выхода из редактора. Не завершает редактор.
IsMovieMakerEnabledbool
public bool IsMovieMakerEnabled();boolIsMultiWindowEnabledbool
public bool IsMultiWindowEnabled();Возвращает, включён ли многооконный режим редактора. Не показывает число открытых окон и не описывает поддержку окон экспортированной игрой.
boolВозвращает, включён ли многооконный режим редактора. Не показывает число открытых окон и не описывает поддержку окон экспортированной игрой.
IsObjectEditedbool
public bool IsObjectEdited(ReckfellObject @object);Читает флаг edited переданного объекта. Нужен ненулевой объект. Это не проверка того, отображается ли объект в инспекторе, и не полный список несохранённых уровней.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
objectНенулевой объект, чей флаг edited требуется прочитать или установить.
boolЧитает флаг edited переданного объекта. Нужен ненулевой объект. Это не проверка того, отображается ли объект в инспекторе, и не полный список несохранённых уровней.
IsPlayingScenebool
public bool IsPlayingScene();Возвращает true, если сцена в данный момент воспроизводится, false в противном случае. Остановленные сцены считаются воспроизводимыми.
boolIsPluginEnabledbool
public bool IsPluginEnabled(string plugin);Читает регистрацию включённого плагина редактора. Не проверяет существование каталога на диске и не доказывает правильность всех его операций.
| Имя | Тип | По умолчанию |
|---|---|---|
plugin | string | — |
pluginИмя каталога дополнения либо asset:// путь к его plugin.cfg, как в SetPluginEnabled.
booltrue для включённой зарегистрированной записи; false после проверенного отключения.
MakeMeshPreviewsReckfell.Collections.Array<Texture2D>
public Reckfell.Collections.Array<Texture2D> MakeMeshPreviews(Reckfell.Collections.Array<Mesh> meshes, int previewSize);Возвращает предварительные просмотры сетки, отрисованные в заданном размере, как Reckfell.Collections.Array из Texture2D-ов.
| Имя | Тип | По умолчанию |
|---|---|---|
meshes | Reckfell.Collections.Array<Mesh> | — |
previewSize | int | — |
Reckfell.Collections.Array<Texture2D>MarkSceneAsUnsavedvoid
public void MarkSceneAsUnsaved();Помечает историю текущего уровня несохранённой и обновляет вкладки. Не записывает файл и не создаёт действие Undo за изменения расширения.
OpenSceneFromPath2 перегрузки
public void OpenSceneFromPath(string scenePath);Запрашивает открытие уровня по пути. Вызов ничего не делает, пока редактор уже переключает уровень. setInherited=true открывает наследуемый вариант. Метод void не подтверждает успешное завершение загрузки.
| Имя | Тип | По умолчанию |
|---|---|---|
scenePath | string | — |
scenePathПуть открываемого файла уровня.
public void OpenSceneFromPath(string sceneFilepath, bool setInherited = false);Запрашивает открытие уровня по пути. Вызов ничего не делает, пока редактор уже переключает уровень. setInherited=true открывает наследуемый вариант. Метод void не подтверждает успешное завершение загрузки.
| Имя | Тип | По умолчанию |
|---|---|---|
sceneFilepath | string | — |
setInherited | bool | false |
sceneFilepathПуть файла уровня, обрабатываемого командой.
setInheritedОткрыть наследуемый вариант уровня.
PlayCurrentScenevoid
public void PlayCurrentScene();Воспроизводит текущую активную сцену.
PlayCustomScenevoid
public void PlayCustomScene(string sceneFilepath);Воспроизводит сцену, указанную в пути к файлу.
| Имя | Тип | По умолчанию |
|---|---|---|
sceneFilepath | string | — |
PlayMainScenevoid
public void PlayMainScene();Играет главную сцену.
PopupCreateDialogvoid
public void PopupCreateDialog(Callable callback, StringName baseType = null, string currentType = "", string dialogTitle = "", Reckfell.Collections.Array<StringName> typeBlocklist = null);Открывает диалоговое окно редактора для создания объекта.
Параметр callback должен принимать один аргумент типа string, который будет содержать имя типа выбранного объекта (или путь к скрипту типа, если тип создан из скрипта), или пустую строку, если ни один элемент не выбран.
Параметр base_type указывает базовый тип отображаемых объектов. Например, если вы установите его значение на "Resource", в диалоговом окне создания будут отображаться все типы, производные от Resource.
Параметр current_type будет передан в поле поиска диалогового окна создания, и указанный тип можно будет сразу выбрать при появлении диалогового окна. Если current_type не является производным от base_type, в диалоговом окне не будет результатов этого типа.
Параметр dialog_title позволяет определить пользовательский заголовок для диалогового окна. Это полезно, если вы хотите точно указать на назначение диалогового окна. Если параметр dialog_title является пустой строкой, в качестве заголовка по умолчанию будет использоваться «Создать новый базовый тип».
Параметр type_blocklist содержит список имен типов, и типы из этого списка будут скрыты из диалога создания.
Примечание: Попытка указать базовый тип в параметре type_blocklist скроет из диалога создания все типы, производные от базового типа.
| Имя | Тип | По умолчанию |
|---|---|---|
callback | Callable | — |
baseType | StringName | null |
currentType | string | "" |
dialogTitle | string | "" |
typeBlocklist | Reckfell.Collections.Array<StringName> | null |
PopupDialogvoid
public void PopupDialog(Window dialog, Rect2I? rect = default);Выводит dialog в пользовательском интерфейсе редактора с помощью Window.PopupExclusive. Диалог не должен иметь текущего родителя, в противном случае метод не сработает.
См. также Window.SetUnparentWhenInvisible.
| Имя | Тип | По умолчанию |
|---|---|---|
dialog | Window | — |
rect | Rect2I? | default |
rectЕсли параметр не имеет значения, то значение по умолчанию: new Rect2I(new Vector2I(0, 0), new Vector2I(0, 0)).
PopupDialogCenteredvoid
public void PopupDialogCentered(Window dialog, Vector2I? minsize = default);Выводит dialog в пользовательском интерфейсе редактора с помощью Window.PopupExclusiveCentered. Диалог не должен иметь текущего родителя, в противном случае метод не сработает.
См. также Window.SetUnparentWhenInvisible.
| Имя | Тип | По умолчанию |
|---|---|---|
dialog | Window | — |
minsize | Vector2I? | default |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupDialogCenteredClampedvoid
public void PopupDialogCenteredClamped(Window dialog, Vector2I? minsize = default, float fallbackRatio = 0.75f);Выводит dialog в пользовательском интерфейсе редактора с помощью Window.PopupExclusiveCenteredClamped. Диалог не должен иметь текущего родителя, в противном случае метод не сработает.
См. также Window.SetUnparentWhenInvisible.
| Имя | Тип | По умолчанию |
|---|---|---|
dialog | Window | — |
minsize | Vector2I? | default |
fallbackRatio | float | 0.75f |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupDialogCenteredRatiovoid
public void PopupDialogCenteredRatio(Window dialog, float ratio = 0.8f);Выводит dialog в пользовательском интерфейсе редактора с помощью Window.PopupExclusiveCenteredRatio. Диалог не должен иметь текущего родителя, в противном случае метод не сработает.
См. также Window.SetUnparentWhenInvisible.
| Имя | Тип | По умолчанию |
|---|---|---|
dialog | Window | — |
ratio | float | 0.8f |
PopupEntitySelector2 перегрузки
public void PopupEntitySelector(Callable callback, Reckfell.Collections.Array<StringName> validTypes);Введите диалог редактора для выбора Entity из отредактированной сцены. callback должен взять один аргумент типа EntityPath. Он предлагается выбранному лицу EntityPath или пустой путь ^"" если диалог отменен. Если valid_types В диалоге будут показаны только узлы, которые соответствуют одному из перечисленных Entity типа: если current_value Предусмотрено, а именно: Entity будет автоматически выбираться на дереве, если оно существует.
Пример: Показать диалог выбора узла, как только этот узел будет добавлен к дереву впервые:
| Имя | Тип | По умолчанию |
|---|---|---|
callback | Callable | — |
validTypes | Reckfell.Collections.Array<StringName> | — |
public void PopupEntitySelector(Callable callback, Reckfell.Collections.Array<StringName> validTypes = null, Entity currentValue = null);Введите диалог редактора для выбора Entity из отредактированной сцены. callback должен взять один аргумент типа EntityPath. Он предлагается выбранному лицу EntityPath или пустой путь ^"" если диалог отменен. Если valid_types В диалоге будут показаны только узлы, которые соответствуют одному из перечисленных Entity типа: если current_value Предусмотрено, а именно: Entity будет автоматически выбираться на дереве, если оно существует.
Пример: Показать диалог выбора узла, как только этот узел будет добавлен к дереву впервые:
| Имя | Тип | По умолчанию |
|---|---|---|
callback | Callable | — |
validTypes | Reckfell.Collections.Array<StringName> | null |
currentValue | Entity | null |
PopupMethodSelectorvoid
public void PopupMethodSelector(ReckfellObject @object, Callable callback, string currentValue = "");Открывает диалог редактора для выбора метода из object. callback должен принимать один аргумент типа string, который будет содержать имя выбранного метода или будет пустым, если диалог будет отменен. Если указано current_value, метод будет автоматически выбран в списке методов, если он существует.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
currentValue | string | "" |
PopupPropertySelector4 перегрузки
public void PopupPropertySelector(ReckfellObject @object, Callable callback, int[] typeFilter);Открывает диалог редактора для выбора свойств из object. callback должен принимать один аргумент типа EntityPath. Он вызывается для выбранного пути свойства (см. EntityPath.GetAsPropertyPath) или пустого пути ^"", если диалог отменен. Если указан type_filter, диалог покажет только свойства, которые соответствуют одному из перечисленных значений Variant.Type. Если указан current_value, свойство будет автоматически выбрано в списке свойств, если оно существует.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | int[] | — |
typeFilterЕсли параметр не имеет значения, то значение по умолчанию: Array.Empty<int>().
public void PopupPropertySelector(ReckfellObject @object, Callable callback, int[] typeFilter = null, string currentValue = "");Открывает диалог редактора для выбора свойств из object. callback должен принимать один аргумент типа EntityPath. Он вызывается для выбранного пути свойства (см. EntityPath.GetAsPropertyPath) или пустого пути ^"", если диалог отменен. Если указан type_filter, диалог покажет только свойства, которые соответствуют одному из перечисленных значений Variant.Type. Если указан current_value, свойство будет автоматически выбрано в списке свойств, если оно существует.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | int[] | null |
currentValue | string | "" |
typeFilterЕсли параметр не имеет значения, то значение по умолчанию: Array.Empty<int>().
public void PopupPropertySelector(ReckfellObject @object, Callable callback, ReadOnlySpan<int> typeFilter);Открывает диалог редактора для выбора свойств из object. callback должен принимать один аргумент типа EntityPath. Он вызывается для выбранного пути свойства (см. EntityPath.GetAsPropertyPath) или пустого пути ^"", если диалог отменен. Если указан type_filter, диалог покажет только свойства, которые соответствуют одному из перечисленных значений Variant.Type. Если указан current_value, свойство будет автоматически выбрано в списке свойств, если оно существует.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | ReadOnlySpan<int> | — |
public void PopupPropertySelector(ReckfellObject @object, Callable callback, ReadOnlySpan<int> typeFilter, string currentValue);Открывает диалог редактора для выбора свойств из object. callback должен принимать один аргумент типа EntityPath. Он вызывается для выбранного пути свойства (см. EntityPath.GetAsPropertyPath) или пустого пути ^"", если диалог отменен. Если указан type_filter, диалог покажет только свойства, которые соответствуют одному из перечисленных значений Variant.Type. Если указан current_value, свойство будет автоматически выбрано в списке свойств, если оно существует.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | ReadOnlySpan<int> | — |
currentValue | string | — |
PopupQuickOpenvoid
public void PopupQuickOpen(Callable callback, Reckfell.Collections.Array<StringName> baseTypes = null);Открывает диалог редактора для быстрого выбора файла ресурсов. callback должен принимать один аргумент типа string, который будет содержать путь к выбранному ресурсу или будет пустым, если диалог будет отменен. Если указан base_types, диалог покажет только ресурсы, соответствующие этим типам. Поддерживаются только типы, производные от Resource.
| Имя | Тип | По умолчанию |
|---|---|---|
callback | Callable | — |
baseTypes | Reckfell.Collections.Array<StringName> | null |
ReloadSceneFromPathvoid
public void ReloadSceneFromPath(string sceneFilepath);Запрашивает повторную загрузку открытого уровня с диска. Может заменить несохранённые изменения; сначала решите, нужно ли их сохранить. Во время переключения уровня запрос игнорируется. Метод не возвращает результат загрузки.
| Имя | Тип | По умолчанию |
|---|---|---|
sceneFilepath | string | — |
sceneFilepathПуть файла уровня, обрабатываемого командой.
RestartEditorvoid
public void RestartEditor(bool save = true);Запрашивает перезапуск редактора. При save=true сначала вызывает сохранение всех уровней; false пропускает этот шаг. Вызов не возвращает подтверждение успешной записи.
| Имя | Тип | По умолчанию |
|---|---|---|
save | bool | true |
saveВызвать сохранение всех уровней перед перезапуском.
SaveAllScenesvoid
public void SaveAllScenes();Вызывает сохранение всех открытых уровней через редактор. Не возвращает сводного результата записи и не означает сохранение всех произвольных ресурсов проекта.
SaveSceneError
public Error SaveScene();Для текущего уровня с корнем и уже заданным путём вызывает SaveSceneAs и возвращает Error.Ok. Без корня или пути возвращает Error.CantCreate. Ok здесь не является переданным результатом записи файла: нижележащий вызов void. Для нового уровня сначала нужен SaveSceneAs.
ErrorДля текущего уровня с корнем и уже заданным путём вызывает SaveSceneAs и возвращает Error.Ok. Без корня или пути возвращает Error.CantCreate. Ok здесь не является переданным результатом записи файла: нижележащий вызов void. Для нового уровня сначала нужен SaveSceneAs.
SaveSceneAsvoid
public void SaveSceneAs(string path, bool withPreview = true);Запрашивает сохранение текущего уровня по path; withPreview управляет созданием превью. Метод void не возвращает код ошибки записи. Сохраняйте уровень в .rscene; этот вызов не заменяет отдельный процесс создания .rprefab.
| Имя | Тип | По умолчанию |
|---|---|---|
path | string | — |
withPreview | bool | true |
pathПуть сохранения текущего уровня с расширением .rscene.
withPreviewСоздавать превью при сохранении.
SelectFilevoid
public void SelectFile(string file);Передаёт ContentBrowser запрос выбрать файл. Это навигация по ресурсам редактора, а не загрузка файла в игру и не изменение выделения Entity.
| Имя | Тип | По умолчанию |
|---|---|---|
file | string | — |
fileПуть файла ресурса для выбора в ContentBrowser.
SetCurrentFeatureProfilevoid
public void SetCurrentFeatureProfile(string profileName);Выбирает и активирует указанный профиль функций с заданным profile_name. Установите profile_name на пустую строку, чтобы сбросить до профиля функций по умолчанию.
Профиль функций можно создать программно с помощью класса EditorFeatureProfile.
Примечание: Активируемый профиль функций должен находиться в каталоге feature_profiles в виде файла с расширением .profile. Если профиль не найден, возникает ошибка. Папку конфигурации редактора можно найти с помощью EditorPaths.GetConfigDir.
| Имя | Тип | По умолчанию |
|---|---|---|
profileName | string | — |
SetDistractionFreeModevoid
public void SetDistractionFreeMode(bool enter);Читает или переключает режим редактора с уменьшенным количеством отвлекающих панелей. Не переводит игру в полноэкранный режим и не меняет состояние проекта на диске.
| Имя | Тип | По умолчанию |
|---|---|---|
enter | bool | — |
enterВключить режим без отвлекающих панелей.
SetMainScreenEditorvoid · Устарело
public void SetMainScreenEditor(string name);Устаревший способ сфокусировать панель главного экрана по имени. При неизвестном имени сообщает об ошибке. Для нового кода получите панель через GetDockByName, проверьте null и вызовите MakeVisible.
| Имя | Тип | По умолчанию |
|---|---|---|
name | string | — |
nameИмя требуемой панели; для нового кода используйте GetDockByName.
SetMovieMakerEnabledvoid
public void SetMovieMakerEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetObjectEditedvoid
public void SetObjectEdited(ReckfellObject @object, bool edited);Устанавливает флаг edited ненулевого объекта. Не меняет его свойства, не сохраняет файл и не создаёт Undo. Для несохранённого состояния текущего уровня используйте подходящую историю или MarkSceneAsUnsaved.
| Имя | Тип | По умолчанию |
|---|---|---|
object | ReckfellObject | — |
edited | bool | — |
objectНенулевой объект, чей флаг edited требуется прочитать или установить.
editedНовое значение флага edited, без сохранения и Undo.
SetPluginEnabledvoid
public void SetPluginEnabled(string plugin, bool enabled);Включает или отключает редакторский плагин. Требует работающего редактора и корректного plugin.cfg/tool-скрипта. Метод не возвращает подтверждение: проверяйте IsPluginEnabled и сообщения загрузки.
| Имя | Тип | По умолчанию |
|---|---|---|
plugin | string | — |
enabled | bool | — |
pluginИмя каталога в asset://addons/, например docs_scene_audit; также поддерживается путь asset:// к plugin.cfg. Это не отображаемое имя плагина.
enabledНужное состояние. Сначала проверьте текущее: повторное включение уже включённого или выключение отсутствующего плагина отклоняется.
StopPlayingScenevoid
public void StopPlayingScene();Останавливает текущую воспроизводимую сцену.