Entity
Базовая сущность в иерархии уровня или префаба.
Entity хранит имя, Parent, дочерние сущности и скрипт. Это объектная иерархия, не ECS-идентификатор и не массив ECS-компонентов. Для пространственного положения используйте Entity2D/Entity3D. Parent задаёт иерархию и освобождение детей; Owner определяет сохраняемое дерево, а %Name ищется в области Owner. AddChild не назначает Owner автоматически.
_EnterTree повторяется при входе, обычный _Ready — один раз после готовности детей; RequestReady запрашивает его для следующего входа только этой Entity. _ExitTree подходит для снятия внешних подписок. ProcessMode управляет обычной обработкой, но не блокирует прямые методы и сигналы.
Сохранение дерева · Поиск и области имён.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
EntityКонструктор
public Entity();Свойства14
AutoTranslateModeСвойство
public Entity.AutoTranslateModeEnum AutoTranslateMode { get; set; }Определяет, следует ли автоматически изменять любой текст на его переведенную версию в зависимости от текущей локали (для таких сущностей, как Label, RichTextLabel, Window и т. д.). Также определяет, следует ли анализировать строки сущности для генерации шаблона перевода.
Примечание: Для корневого сущности режим автоматического перевода также можно установить через ProjectSettings.internationalization/rendering/root_node_auto_translate.
EditorDescriptionСвойство
public string EditorDescription { get; set; }Необязательное описание сущности. Оно будет отображаться как подсказка при наведении курсора на сущность в доке сцены редактора.
MultiplayerСвойство
public MultiplayerApi Multiplayer { get; }Экземпляр MultiplayerApi, связанный с этим сущностью. См. EntityTree.GetMultiplayer.
Примечание: Переименование сущности или перемещение его в дереве не переместит MultiplayerApi на новый путь, вам придется обновить его вручную.
NameСвойство
public StringName Name { get; set; }Имя сущности. Это имя должно быть уникальным среди сестринских сущностей (других дочерних сущностей того же родителя). При установке на имя существующего сестринского сущности сущность автоматически переименовывается.
Примечание: При изменении имени следующие символы будут заменены подчеркиванием: (. : @ / " %). В частности, символ @ зарезервирован для автоматически сгенерированных имен. См. также String.validate_node_name.
Владелец
OwnerСвойство
public Entity Owner { get; set; }Владелец сохраняемой иерархии, не родитель и не счётчик ссылок. Ненулевой владелец должен быть предком; назначайте после AddChild. Сам AddChild не назначает Owner, поэтому программно добавленный ребёнок может не попасть в PackedEntity.Pack.
PhysicsInterpolationModeСвойство
public Entity.PhysicsInterpolationModeEnum PhysicsInterpolationMode { get; set; }Локальный режим Inherit/On/Off. Работает совместно с глобально включённой физической интерполяцией. Off не отменяет пространственное влияние интерполируемого родителя.
ProcessModeСвойство
public Entity.ProcessModeEnum ProcessMode { get; set; }Управляет обычной обработкой при паузе/отключении. Inherit следует Parent, не Owner. Не блокирует прямые вызовы методов и сигналы.
ProcessPhysicsPriorityСвойство
public int ProcessPhysicsPriority { get; set; }Аналогично Entity.ProcessPriority, но для Entity.NotificationPhysicsProcess, Entity._PhysicsProcess или Entity.NotificationInternalPhysicsProcess.
ProcessPriorityСвойство
public int ProcessPriority { get; set; }Порядок выполнения обратных вызовов процесса сущности (Entity._Process, Entity.NotificationProcess и Entity.NotificationInternalProcess). сущности, приоритет которых ниже, вызывают обратные вызовы своего процесса в первую очередь, независимо от порядка дерева.
ProcessThreadGroupСвойство
public Entity.ProcessThreadGroupEnum ProcessThreadGroup { get; set; }Установите группу потоков процесса для этого сущности (в основном, получает ли он Entity.NotificationProcess, Entity.NotificationPhysicsProcess, Entity._Process или Entity._PhysicsProcess (и внутренние версии) в основном потоке или в подпотоке.
По умолчанию группа потоков — Entity.ProcessThreadGroupEnum.Inherit, что означает, что этот сущность принадлежит к той же группе потоков, что и родительский сущность. Группы потоков означают, что сущности в определенной группе потоков будут обрабатываться вместе, отдельно от других групп потоков (в зависимости от Entity.ProcessThreadGroupOrder). Если установлено значение Entity.ProcessThreadGroupEnum.SubThread, эта группа потоков будет выполняться в подпотоке (не в основном потоке), в противном случае, если установлено значение Entity.ProcessThreadGroupEnum.MainThread, она будет обрабатываться в основном потоке. Если есть не родительский или прародительский сущность, для которого установлено значение, отличное от inheritage, сущность будет принадлежать группе потоков по умолчанию. Эта группа по умолчанию будет обрабатываться в главном потоке, а ее порядок группы равен 0.
Во время обработки в подпотоке доступ к большинству функций в узлах за пределами группы потоков запрещен (и это приведет к ошибке в режиме отладки). Используйте ReckfellObject.CallDeferred, Entity.CallThreadSafe, Entity.CallDeferredThreadGroup и тому подобное для связи из групп потоков с основным потоком (или с другими группами потоков).
Чтобы лучше понять группы потоков процесса, идея заключается в том, что любой сущность, установленный на любое другое значение, чем Entity.ProcessThreadGroupEnum.Inherit, включит любые дочерние (и внучатые) сущности, установленные для наследования в его группу потоков процесса. Это означает, что обработка всех сущностей в группе будет происходить вместе, в то же время, когда сущность включает их.
ProcessThreadGroupOrderСвойство
public int ProcessThreadGroupOrder { get; set; }Измените порядок групп потоков процесса. Группы с меньшим порядком будут обрабатываться до групп с большим порядком. Это полезно, когда большое количество сущностей обрабатывается в подпотоке, а затем другая группа хочет собрать свой результат в главном потоке, например.
ProcessThreadMessagesСвойство
public Entity.ProcessThreadMessagesEnum ProcessThreadMessages { get; set; }Установите, будет ли текущая группа потоков обрабатывать сообщения (вызовы Entity.CallDeferredThreadGroup в потоках), и хочет ли она получать их во время обычных процессов или обратных вызовов физических процессов.
SourceAssetPathСвойство
public string SourceAssetPath { get; set; }Логический исходный путь корня загруженного PackedEntity. Не является путём каждого потомка и не определяет отдельный класс Entity. У дерева из new Entity может быть пустым.
UniqueNameInOwnerСвойство
public bool UniqueNameInOwner { get; set; }Регистрирует имя для поиска %Name в области Owner. Это не глобальная уникальность, UID файла или сетевой ID.
Методы145
AddChildvoid
public void AddChild(Entity node, bool forceReadableName = false, Entity.InternalMode @internal = Entity.InternalMode.Disabled);Подключает Entity как дочернюю. У неё не должно быть другого родителя. Если этот родитель уже в активном дереве, вход и подготовка ребёнка могут выполниться до возвращения из вызова: начальные свойства задавайте заранее. Не назначает Owner автоматически.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
forceReadableName | bool | false |
internal | Entity.InternalMode | Entity.InternalMode.Disabled |
nodeСозданная Entity без родителя; не этот же объект и не предок, создающий цикл. Для смены родителя используйте Reparent или явное отсоединение.
forceReadableNameПри true запрашивает читаемое имя ребёнка. В любом случае имя должно быть уникальным среди соседних детей; не используйте этот параметр как постоянный идентификатор объекта.
internalРежим внутреннего ребёнка. Для обычных игровых объектов оставьте Disabled; внутренние дети отличаются участием в обычных перечислениях детей.
AddSiblingvoid
public void AddSibling(Entity sibling, bool forceReadableName = false);Добавить a sibling Угол к родителю этого сущности, и двигает дополнительного брата прямо под этим сущностью.
Если force_readable_name это true, улучшает удобочитаемость добавленного sibling. Если не указано, то: sibling переименован в свой тип, и если он делится Entity.Name При помощи сестринского брата более уместно установить число suffling. Эта операция осуществляется очень медленно. false, который присваивает название манекена с указанием @ в обеих ситуациях.
Использование Entity.AddChild вместо этого метода, если вы не хотите добавить детский сущность под конкретным сущностью в списке детей.
Примечание: Если этот сущность является внутренним, то дополнительный брат тоже будет внутренним (см. Entity.AddChild's internal параметр).
| Имя | Тип | По умолчанию |
|---|---|---|
sibling | Entity | — |
forceReadableName | bool | false |
AddToGroupvoid
public void AddToGroup(StringName group, bool persistent = false);Добавляет метку группы. До входа IsInGroup уже true, но дерево ещё не находит участника. persistent нужен для записи в PackedEntity; повторное добавление не меняет этот флаг.
| Имя | Тип | По умолчанию |
|---|---|---|
group | StringName | — |
persistent | bool | false |
Atrstring
public string Atr(string message, StringName context = null);Переводит message, используя каталоги перевода, настроенные в настройках проекта. Для помощи с переводом можно указать дополнительный context. Обратите внимание, что большинство сущностей Control автоматически переводят свои строки, поэтому этот метод в основном полезен для форматированных строк или пользовательского нарисованного текста.
Этот метод работает так же, как ReckfellObject.Tr, с добавлением соблюдения состояния Entity.AutoTranslateMode.
Если ReckfellObject.CanTranslateMessages равен false или перевод недоступен, этот метод возвращает message без изменений. См. ReckfellObject.SetMessageTranslation.
Подробные примеры см. в Интернационализация игр.
| Имя | Тип | По умолчанию |
|---|---|---|
message | string | — |
context | StringName | null |
stringAtrNstring
public string AtrN(string message, StringName pluralMessage, int n, StringName context = null);Переводит message или plural_message, используя каталоги перевода, настроенные в настройках проекта. Для помощи с переводом можно указать дополнительный context.
Этот метод работает так же, как ReckfellObject.TrN, с добавлением соблюдения состояния Entity.AutoTranslateMode.
Если ReckfellObject.CanTranslateMessages имеет значение false или перевод недоступен, этот метод возвращает message или plural_message без изменений. См. ReckfellObject.SetMessageTranslation.
n — это номер или количество темы сообщения. Он используется системой перевода для получения правильной формы множественного числа для текущего языка.
Подробные примеры см. в Локализация с использованием gettext.
Примечание: Отрицательные и Entity.Atr.
| Имя | Тип | По умолчанию |
|---|---|---|
message | string | — |
pluralMessage | StringName | — |
n | int | — |
context | StringName | null |
stringCallDeferredThreadGroup2 перегрузки
public Variant CallDeferredThreadGroup(StringName method, params Variant[] args);Эта функция похожа на ReckfellObject.CallDeferred, за исключением того, что вызов будет иметь место, когда обрабатывается группа потоков сущности. Если группа потоков сущности обрабатывается в подпотоках, то вызов будет сделан в этом потоке, прямо перед вызовом Entity.NotificationProcess или Entity.NotificationPhysicsProcess, Entity._Process или Entity._PhysicsProcess или их внутренних версий.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | Variant[] | — |
Variantpublic Variant CallDeferredThreadGroup(StringName method, ReadOnlySpan<Variant> args);Эта функция похожа на ReckfellObject.CallDeferred, за исключением того, что вызов будет иметь место, когда обрабатывается группа потоков сущности. Если группа потоков сущности обрабатывается в подпотоках, то вызов будет сделан в этом потоке, прямо перед вызовом Entity.NotificationProcess или Entity.NotificationPhysicsProcess, Entity._Process или Entity._PhysicsProcess или их внутренних версий.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | ReadOnlySpan<Variant> | — |
VariantCallThreadSafe2 перегрузки
public Variant CallThreadSafe(StringName method, params Variant[] args);Эта функция гарантирует, что вызов этой функции будет успешным, независимо от того, выполняется ли он из потока или нет. Если он вызван из потока, которому не разрешено вызывать функцию, вызов станет отложенным. В противном случае вызов будет выполнен напрямую.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | Variant[] | — |
Variantpublic Variant CallThreadSafe(StringName method, ReadOnlySpan<Variant> args);Эта функция гарантирует, что вызов этой функции будет успешным, независимо от того, выполняется ли он из потока или нет. Если он вызван из потока, которому не разрешено вызывать функцию, вызов станет отложенным. В противном случае вызов будет выполнен напрямую.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | ReadOnlySpan<Variant> | — |
VariantCanAutoTranslatebool
public bool CanAutoTranslate();Возвращает true, если этот сущность может автоматически переводить сообщения в зависимости от текущей локали. См. Entity.AutoTranslateMode, Entity.Atr и Entity.AtrN.
boolCanProcessbool
public bool CanProcess();Проверяет активное дерево и допустимость обработки по текущему состоянию/ProcessMode. Отличается от флага IsProcessing.
boolCreateTweenTween
public Tween CreateTween();Создаёт Tween через доступное EntityTree и связывает его с этой Entity. Если она временно вне дерева, связанная анимация приостанавливается; при удалении Entity Tween прекращается. Один только выход из дерева не означает автоматический возврат анимируемых свойств к исходным значениям. Для повторного независимого запуска создавайте новый Tween, не переиспользуйте завершённый или остановленный через Kill().
TweenDuplicateEntity
public Entity Duplicate(int flags = 15);Подделывает сущность, возвращая новый сущность со всеми его свойствами, сигналами, группами и детьми, скопированными с оригинала, рекурсивно. flags (см. Entity.DuplicateFlags) Внутренние сущности не дублируются.
Примечание: Для сущностей с a Script прилагаемый, если Object._init , был определен с требуемыми параметрами, дубликат сущности не будет иметь Script.
Примечание: По умолчанию этот метод дублирует только свойства, помеченные для серийной обработки (т.е. PropertyUsageFlags.Storageили в C#, Entity.DuplicateFlags.InternalState.
| Имя | Тип | По умолчанию |
|---|---|---|
flags | int | 15 |
EntityFindChildEntity
public Entity FindChild(string pattern, bool recursive = true, bool owned = true);Находит первого потомка этого сущности, чье Entity.Name соответствует pattern, возвращая null, если совпадений не найдено. Сопоставление выполняется с именами сущностей, не их путями, через String.match. Таким образом, он чувствителен к регистру, "*" соответствует нулю или более символов, а "?" соответствует любому одному символу.
Если recursive равен false, проверяются только прямые потомки этого сущности. сущности проверяются в порядке дерева, поэтому сначала проверяется первый прямой потомок этого сущности, затем его собственные прямые потомки и т. д., прежде чем перейти ко второму прямому потомку и т. д. Внутренние потомки также включаются в поиск (см. параметр internal в Entity.AddChild).
Если owned равен true, проверяются только потомки с допустимым сущностью Entity.Owner.
Примечание: Этот метод может быть очень медленным. Рассмотрите возможность сохранения ссылки на найденный сущность в переменной. В качестве альтернативы используйте Entity.GetEntity с уникальными именами (см. Entity.UniqueNameInOwner).
Примечание: Чтобы найти все сущности-потомки, соответствующие шаблону или типу класса, см. Entity.FindChildren.
| Имя | Тип | По умолчанию |
|---|---|---|
pattern | string | — |
recursive | bool | true |
owned | bool | true |
EntityFindChildrenReckfell.Collections.Array<Entity>
public Reckfell.Collections.Array<Entity> FindChildren(string pattern, string type = "", bool recursive = true, bool owned = true);Находит всех потомков этого сущности, чьи имена соответствуют pattern, возвращая пустой Reckfell.Collections.Array, если совпадение не найдено. Сопоставление выполняется по именам сущностей, а не их путям, с помощью String.match. Таким образом, оно чувствительно к регистру: "*" соответствует нулю или более символам, а "?" соответствует любому отдельному символу.
Если type не пуст, включаются только потомки, наследующие от type (см. ReckfellObject.IsClass).
Если recursive равно false, проверяются только непосредственные потомки этого сущности. сущности проверяются в порядке дерева, поэтому сначала проверяется первый непосредственный потомок этого сущности, затем его собственные непосредственные потомки и т. д., прежде чем перейти ко второму непосредственному потомку и так далее. В поиск также включаются внутренние потомки (см. internal параметр в Entity.AddChild).
Если owned равно true, проверяются только потомки с действительным сущностью Entity.Owner.
Примечание: Этот метод может быть очень медленным. Рекомендуется сохранять ссылки на найденные сущности в переменной.
Примечание: Чтобы найти единственный дочерний сущность, соответствующий шаблону, см. Entity.FindChild.
| Имя | Тип | По умолчанию |
|---|---|---|
pattern | string | — |
type | string | "" |
recursive | bool | true |
owned | bool | true |
Reckfell.Collections.Array<Entity>FindParentEntity
public Entity FindParent(string pattern);Находит первого предка этого сущности, чье Entity.Name соответствует pattern, возвращая null, если совпадений не найдено. Сопоставление выполняется с помощью String.match. Таким образом, он чувствителен к регистру, "*" соответствует нулю или более символов, а "?" соответствует любому отдельному символу. См. также Entity.FindChild и Entity.FindChildren.
Примечание: Поскольку этот метод идет вверх по дереву сцены, он может быть медленным в больших, глубоко вложенных узлах. Рассмотрите возможность сохранения ссылки на найденный сущность в переменной. В качестве альтернативы используйте Entity.GetEntity с уникальными именами (см. Entity.UniqueNameInOwner).
| Имя | Тип | По умолчанию |
|---|---|---|
pattern | string | — |
EntityGetAccessibilityElementRid
public Rid GetAccessibilityElement();Возвращает основной элемент доступности RID.
Примечание: Этот метод следует вызывать только во время обновлений информации о доступности (Entity.NotificationAccessibilityUpdate).
RidGetAutoTranslateModeEntity.AutoTranslateModeEnum
public Entity.AutoTranslateModeEnum GetAutoTranslateMode();Entity.AutoTranslateModeEnumGetChild2 перегрузки
public Entity GetChild(int idx, bool includeInternal = false);Извлекает дочерний сущность по его индексу. Каждый дочерний сущность имеет индекс относительно своих братьев и сестер (см. Entity.GetIndex). Первый дочерний сущность имеет индекс 0. Отрицательные значения также могут использоваться для начала с конца списка. Этот метод можно использовать в сочетании с Entity.GetChildCount для итерации по дочерним узлам этого сущности. Если по указанному индексу дочерний сущность не существует, этот метод возвращает null и генерируется ошибка.
Если include_internal равен false, внутренние дочерние сущности игнорируются (см. параметр Entity.AddChild internal).
Примечание: Чтобы получить сущность по EntityPath, используйте Entity.GetEntity.
| Имя | Тип | По умолчанию |
|---|---|---|
idx | int | — |
includeInternal | bool | false |
Entitypublic T GetChild<T>(int idx, bool includeInternal = false) where T : class;Извлекает дочерний сущность по его индексу. Каждый дочерний сущность имеет индекс относительно своих братьев и сестер (см. Entity.GetIndex). Первый дочерний сущность имеет индекс 0. Отрицательные значения также могут использоваться для начала с конца списка. Этот метод можно использовать в сочетании с Entity.GetChildCount для итерации по дочерним узлам этого сущности. Если по указанному индексу дочерний сущность не существует, этот метод возвращает null и генерируется ошибка.
Если include_internal равен false, внутренние дочерние сущности игнорируются (см. параметр Entity.AddChild internal).
Примечание: Чтобы получить сущность по EntityPath, используйте Entity.GetEntity.
| Имя | Тип | По умолчанию |
|---|---|---|
idx | int | — |
includeInternal | bool | false |
idxИндекс детей.
includeInternalЕсли false, внутренние дети пропускаются (см. internal
параметр в Entity.AddChild).
GetChildCountint
public int GetChildCount(bool includeInternal = false);Возвращает количество детей этого сущности.
Если include_internal это false, внутренние дети не учитываются (см. Entity.AddChild's internal параметр).
| Имя | Тип | По умолчанию |
|---|---|---|
includeInternal | bool | false |
intGetChildOrNullT
public T GetChildOrNull<T>(int idx, bool includeInternal = false) where T : class;Возвращает детский сущность по индексу (см. Entity.GetChildCount).
Этот метод часто используется для итерации всех детей сущности.
Негативные показатели позволяют детям получить доступ к последним.
Доступ к детскому сущности через его имя, использование Entity.GetEntity.
| Имя | Тип | По умолчанию |
|---|---|---|
idx | int | — |
includeInternal | bool | false |
idxИндекс детей.
includeInternalЕсли false, внутренние дети пропускаются (см. internal
параметр в Entity.AddChild).
GetChildrenReckfell.Collections.Array<Entity>
public Reckfell.Collections.Array<Entity> GetChildren(bool includeInternal = false);Возвращает всех детей этого сущности в Reckfell.Collections.Array.
Если include_internal это false, исключить внутренних детей из возвращенного массива (см. Entity.AddChild's internal параметр).
| Имя | Тип | По умолчанию |
|---|---|---|
includeInternal | bool | false |
Reckfell.Collections.Array<Entity>GetEditorDescriptionstring
public string GetEditorDescription();stringGetEntity2 перегрузки
public Entity GetEntity(EntityPath path);Возвращает сущность по пути относительно текущей сущности. Абсолютный путь начинается с /root и требует, чтобы текущая сущность находилась в дереве. Если путь не существует, движок сообщает об ошибке и возвращает null. Для необязательной ссылки используйте GetEntityOrNull().
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
Entitypublic T GetEntity<T>(EntityPath path) where T : class;Ищет сущность по пути и приводит результат к T. Отсутствующий путь сообщает об ошибке; несовместимый тип вызывает InvalidCastException. Используйте эту перегрузку, когда структура префаба известна. Для необязательной сущности или проверки типа используйте GetEntityOrNull<T>().
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
pathПуть к сущности, чтобы принести.
GetEntityAndResourceReckfell.Collections.Array
public Reckfell.Collections.Array GetEntityAndResource(EntityPath path);Привозит сущность и его самый гнездистый ресурс, указанный EntityPathВернётся. Reckfell.Collections.Array размер 3 где:
- Элемент
0этоEntityилиnullесли они не найдены; - Элемент
1это последнее гнездо под имениResourceилиnullесли они не найдены; - Элемент
2- остальныеEntityPath, с указанием существующего,Resourceимущество (см.ReckfellObject.GetIndexed). Пример: Предположим, что ребенокSprite2D.TextureназначеноAtlasTexture:
var a = GetEntityAndResource(EntityPath("Area2D/Sprite2D"));
ReckfellApi.Print(a[0].Name); // Prints Sprite2D
ReckfellApi.Print(a[1]); // Prints <null>
ReckfellApi.Print(a[2]); // Prints ^"
var b = GetEntityAndResource(EntityPath("Area2D/Sprite2D:texture:atlas"));
ReckfellApi.Print(b[0].name); // Prints Sprite2D
ReckfellApi.Print(b[1].get_class()); // Prints AtlasTexture
ReckfellApi.Print(b[2]); // Prints ^""
var c = GetEntityAndResource(EntityPath("Area2D/Sprite2D:texture:atlas:region"));
ReckfellApi.Print(c[0].name); // Prints Sprite2D
ReckfellApi.Print(c[1].get_class()); // Prints AtlasTexture
ReckfellApi.Print(c[2]); // Prints ^":region"| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
Reckfell.Collections.ArrayGetEntityOrNull2 перегрузки
public Entity GetEntityOrNull(EntityPath path);Возвращает объект по пути либо null. В generic-варианте несовместимый тип также даёт null. Проверяйте область %Name и ожидаемый класс.
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
Entitypublic T GetEntityOrNull<T>(EntityPath path) where T : class;Возвращает объект по пути либо null. В generic-варианте несовместимый тип также даёт null. Проверяйте область %Name и ожидаемый класс.
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
pathПуть к сущности, чтобы принести.
GetEntityRpcConfigVariant
public Variant GetEntityRpcConfig();Возвращает Reckfell.Collections.Dictionary, сопоставляющий имена методов с их конфигурацией RPC, определенной для этого сущности, с помощью Entity.RpcConfig.
Примечание: Этот метод возвращает только конфигурацию RPC, назначенную с помощью Entity.RpcConfig. См. Script.GetRpcConfig, чтобы получить RPC, определенным в Script.
VariantGetGroupsReckfell.Collections.Array<StringName>
public Reckfell.Collections.Array<StringName> GetGroups();Возвращает Reckfell.Collections.Array имен групп, в которые был добавлен сущность.
Примечание: Для повышения производительности порядок имен групп не гарантирован и может меняться между запусками проекта. Поэтому не полагайтесь на порядок групп.
Примечание: Этот метод также может возвращать некоторые имена групп, начинающиеся с подчеркивания (_). Они используются движком внутри. Чтобы избежать конфликтов, не используйте пользовательские группы, начинающиеся с подчеркивания. Чтобы исключить внутренние группы, см. следующий фрагмент кода:
// Stores the node's non-internal groups only (as a List of StringNames).
List<string> nonInternalGroups = new List<string>();
foreach (string group in GetGroups())
{
if (!group.BeginsWith("_"))
nonInternalGroups.Add(group);
}Reckfell.Collections.Array<StringName>GetIndexint
public int GetIndex(bool includeInternal = false);Возвращает порядок этого сущности среди его братьев и сестер. Индекс первого сущности — 0. См. также Entity.GetChild.
Если include_internal — false, возвращает индекс, игнорируя внутренние дочерние элементы. Первый, не внутренний дочерний элемент будет иметь индекс 0 (см. параметр Entity.AddChild internal).
| Имя | Тип | По умолчанию |
|---|---|---|
includeInternal | bool | false |
intGetLastExclusiveWindowWindow
public Window GetLastExclusiveWindow();Возвращает Window, содержащее этот сущность, или последний исключительный дочерний элемент в цепочке окон, начиная с того, которое содержит этот сущность.
WindowGetMultiplayerMultiplayerApi
public MultiplayerApi GetMultiplayer();MultiplayerApiGetMultiplayerAuthorityint
public int GetMultiplayerAuthority();Возвращает идентификатор пира многопользовательского органа для этого сущности. См. Entity.SetMultiplayerAuthority.
intGetNameStringName
public StringName GetName();StringNameGetOrphanEntityIdsReckfell.Collections.Array<int>
public static Reckfell.Collections.Array<int> GetOrphanEntityIds();Возвращает ID идентификаторы объектов всех сущностей-сирот (сущностей вне EntityTree). Используется для отладки.
Примечание: Entity.GetOrphanEntityIds работает только в отладочных сборках. При вызове в проекте, экспортированном в режиме выпуска, Entity.GetOrphanEntityIds вернет пустой массив.
Reckfell.Collections.Array<int>GetOwner2 перегрузки
public Entity GetOwner();Entitypublic T GetOwner<T>() where T : class;Владелец сущности. У сущности может быть любой другой сущность в качестве владельца (как long Так и есть.
- действительным родителем, дедушкой и т.д., поднявшимся на дерево.
сущность (используемый
PackedEntity), все его сущности будут сохранены Это позволяет создавать комплексыEntityTrees, с неустойчивостью и приземлением.
GetOwnerOrNullT
public T GetOwnerOrNull<T>() where T : class;Владелец сущности. У сущности может быть любой другой сущность в качестве владельца (как long Так и есть.
- действительным родителем, дедушкой и т.д., поднявшимся на дерево.
сущность (используемый
PackedEntity), все его сущности будут сохранены Это позволяет создавать комплексыEntityTrees, с неустойчивостью и приземлением.
GetParent2 перегрузки
public Entity GetParent();Читает непосредственного родителя иерархии. Родитель не равен Owner: родительство управляет деревом и временем жизни, Owner участвует в сохранении.
EntityРодительская Entity или null, если родителя нет, например после RemoveChild. Отсутствие родителя само по себе не означает удаление.
public T GetParent<T>() where T : class;Возвращает родительский сущность данного сущности или null, если у сущности нет родителя.
GetParentOrNullT
public T GetParentOrNull<T>() where T : class;Возвращает родительский сущность текущего сущности или null примеры
если у сущности нет родителя.
GetPathEntityPath
public EntityPath GetPath();Возвращает абсолютный путь сущности относительно EntityTree.Root. Если сущность не находится внутри дерева сцены, этот метод завершается ошибкой и возвращает пустой EntityPath.
EntityPathGetPathToEntityPath
public EntityPath GetPathTo(Entity node, bool useUniquePath = false);Возвращает относительный EntityPath от этого сущности до указанного node. Оба сущности должны находиться в одной и той же EntityTree или иерархии сцены, в противном случае этот метод завершается ошибкой и возвращает пустой EntityPath.
Если use_unique_path равен true, возвращает кратчайший путь с учетом уникального имени этого сущности (см. Entity.UniqueNameInOwner).
Примечание: Если вы получаете относительный путь, который начинается с уникального сущности, путь может быть длиннее обычного относительного пути из-за добавления имени уникального сущности.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
useUniquePath | bool | false |
EntityPathGetPhysicsInterpolationModeEntity.PhysicsInterpolationModeEnum
public Entity.PhysicsInterpolationModeEnum GetPhysicsInterpolationMode();Entity.PhysicsInterpolationModeEnumGetPhysicsProcessDeltaTimedouble
public double GetPhysicsProcessDeltaTime();Длительность физического шага в игровом времени. Для движения учитывайте семантику метода: MoveAndSlide интегрирует Velocity сам, MoveAndCollide получает перемещение.
doubleGetPhysicsProcessPriorityint
public int GetPhysicsProcessPriority();intGetProcessDeltaTimedouble
public double GetProcessDeltaTime();Последняя длительность обычного шага обработки в секундах игрового времени. Это не отдельные реальные часы; в _Process обычно используйте переданный delta.
doubleGetProcessModeEntity.ProcessModeEnum
public Entity.ProcessModeEnum GetProcessMode();Entity.ProcessModeEnumGetProcessPriorityint
public int GetProcessPriority();intGetProcessThreadGroupEntity.ProcessThreadGroupEnum
public Entity.ProcessThreadGroupEnum GetProcessThreadGroup();Entity.ProcessThreadGroupEnumGetProcessThreadGroupOrderint
public int GetProcessThreadGroupOrder();intGetProcessThreadMessagesEntity.ProcessThreadMessagesEnum
public Entity.ProcessThreadMessagesEnum GetProcessThreadMessages();Entity.ProcessThreadMessagesEnumGetSceneInstanceLoadPlaceholderbool
public bool GetSceneInstanceLoadPlaceholder();Возвращает true, если этот сущность является заполнителем загрузки экземпляра. См. InstancePlaceholder и Entity.SetSceneInstanceLoadPlaceholder.
boolGetSourceAssetPathstring
public string GetSourceAssetPath();stringGetTreeEntityTree
public EntityTree GetTree();Получает активное дерево этой Entity. Для объекта вне дерева сначала проверяйте IsInsideTree; метод не подключает объект автоматически.
EntityTreeEntityTree при нахождении в дереве. Вне дерева нативная реализация сообщает ошибку и возвращает null.
GetTreeStringstring
public string GetTreeString();Возвращает дерево как string. Используется в основном для отладки. Эта версия отображает путь относительно текущего сущности и подходит для копирования/вставки в функцию Entity.GetEntity. Также может использоваться в игровом UI/UX.
Может выводить, например:
TheGame
TheGame/Menu
TheGame/Menu/Label
TheGame/Menu/Camera2D
TheGame/SplashScreen
TheGame/SplashScreen/Camera2DstringGetTreeStringPrettystring
public string GetTreeStringPretty();Подобно Entity.GetTreeString, это возвращает дерево как string. Эта версия отображает более графическое представление, похожее на то, что отображается в Сцена. Это полезно для проверки больших деревьев.
Может печатать, например:
┖╴TheGame
┠╴Menu
┃ ┠╴Label
┃ ┖╴Camera2D
┖╴SplashScreen
┖╴Camera2DstringGetViewportViewport
public Viewport GetViewport();Возвращает ближайшего предка Viewport сущности, если сущность находится внутри дерева. В противном случае возвращает null.
ViewportGetWindowWindow
public Window GetWindow();Возвращает Window, содержащее этот сущность. Если сущность находится в главном окне, это эквивалентно получению корневого сущности (get_tree().get_root()).
WindowHasEntitybool
public bool HasEntity(EntityPath path);Возвращает true, если path указывает на допустимый сущность. См. также Entity.GetEntity.
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
boolHasEntityAndResourcebool
public bool HasEntityAndResource(EntityPath path);Возвращает true, если path указывает на допустимый сущность, а его подимена указывают на допустимый Resource, например, Area2D/CollisionShape2D:shape. Свойства, которые не являются типами Resource (например, сущности или другие типы Variant), не рассматриваются. См. также Entity.GetEntityAndResource.
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
boolIsAncestorOfbool
public bool IsAncestorOf(Entity node);Возвращает true, если заданный node является прямым или косвенным дочерним элементом этого сущности.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
boolIsDisplayedFoldedbool
public bool IsDisplayedFolded();Возвращает true, если сущность свёрнут в доке сцены. Этот метод предназначен для использования в плагинах и инструментах редактора. См. также Entity.SetDisplayFolded.
boolIsEditableInstancebool
public bool IsEditableInstance(Entity node);Возвращает true, если node имеет редактируемые дочерние элементы, включенные относительно этого сущности. Этот метод предназначен для использования в плагинах и инструментах редактора. См. также Entity.SetEditableInstance.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
boolIsEntityReadybool
public bool IsEntityReady();Возвращает true, если сущность готов, т. е. он находится внутри дерева сцены и все его дочерние элементы инициализированы.
Entity.RequestReady сбрасывает его обратно в false.
boolIsGreaterThanbool
public bool IsGreaterThan(Entity node);Возвращает true, если заданный node встречается позже в иерархии сцены, чем этот сущность. сущность, встречающийся позже, обычно обрабатывается последним.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
boolIsInGroupbool
public bool IsInGroup(StringName group);Проверяет сохранённую на объекте метку, даже если Entity сейчас отсоединена. Это не проверка наличия в активной выборке дерева.
| Имя | Тип | По умолчанию |
|---|---|---|
group | StringName | — |
boolIsInsideTreebool
public bool IsInsideTree();Проверяет участие в активном EntityTree. Созданный или отсоединённый объект может существовать в памяти, оставаясь вне дерева. Это не проверка наличия родителя или очереди удаления.
booltrue при назначенном дереве; false до подключения или после выхода из дерева.
IsMultiplayerAuthoritybool
public bool IsMultiplayerAuthority();Возвращает true, если локальная система является многопользовательским центром этого сущности.
boolIsPartOfEditedScenebool
public bool IsPartOfEditedScene();Возвращает true, если сущность является частью сцены, открытой в данный момент в редакторе.
boolIsPhysicsInterpolatedbool
public bool IsPhysicsInterpolated();Возвращает true, если физическая интерполяция включена для этого сущности (см. Entity.PhysicsInterpolationMode).
Примечание: Интерполяция будет активна только если и флаг установлен и физическая интерполяция включена в EntityTree. Это можно проверить с помощью Entity.IsPhysicsInterpolatedAndEnabled.
boolIsPhysicsInterpolatedAndEnabledbool
public bool IsPhysicsInterpolatedAndEnabled();Возвращает true, если включена интерполяция физики (см. Entity.PhysicsInterpolationMode) и включена в EntityTree.
Это удобная версия Entity.IsPhysicsInterpolated, которая также проверяет, включена ли интерполяция физики глобально.
См. EntityTree.PhysicsInterpolation и ProjectSettings.physics/common/physics_interpolation.
boolIsPhysicsProcessingbool
public bool IsPhysicsProcessing();Показывает флаг включения физического callback. Это не подтверждение фактического вызова при текущей паузе/ProcessMode и не состояние симуляции всех физических тел.
boolIsPhysicsProcessingInternalbool
public bool IsPhysicsProcessingInternal();Возвращает true, если включена внутренняя обработка физики (см. Entity.SetPhysicsProcessInternal).
boolIsProcessingbool
public bool IsProcessing();Сообщает, включён ли _Process. True не гарантирует вызов во время паузы или при запрещающем унаследованном режиме.
boolIsProcessingInputbool
public bool IsProcessingInput();Возвращает true, если сущность обрабатывает входные данные (см. Entity.SetProcessInput).
boolIsProcessingInternalbool
public bool IsProcessingInternal();Возвращает true, если включена внутренняя обработка (см. Entity.SetProcessInternal).
boolIsProcessingShortcutInputbool
public bool IsProcessingShortcutInput();Возвращает true, если сущность обрабатывает сочетания клавиш (см. Entity.SetProcessShortcutInput).
boolIsProcessingUnhandledInputbool
public bool IsProcessingUnhandledInput();Возвращает true, если сущность обрабатывает необработанный ввод (см. Entity.SetProcessUnhandledInput).
boolIsProcessingUnhandledKeyInputbool
public bool IsProcessingUnhandledKeyInput();Возвращает true, если сущность обрабатывает необработанный ввод с клавиатуры (см. Entity.SetProcessUnhandledKeyInput).
boolIsUniqueNameInOwnerbool
public bool IsUniqueNameInOwner();boolMoveChildvoid
public void MoveChild(Entity childNode, int toIndex);Перемещает child_node в указанный индекс. Индекс сущности — это порядок среди его братьев и сестер. Если to_index отрицательный, индекс отсчитывается с конца списка. См. также Entity.GetChild и Entity.GetIndex.
Примечание: Порядок обработки нескольких обратных вызовов движка (Entity.Ready, Entity._Process и т. д.) и уведомлений, отправленных через Entity.PropagateNotification, зависит от порядка дерева. сущности CanvasItem также отображаются в порядке дерева. См. также Entity.ProcessPriority.
| Имя | Тип | По умолчанию |
|---|---|---|
childNode | Entity | — |
toIndex | int | — |
NotifyDeferredThreadGroupvoid
public void NotifyDeferredThreadGroup(int what);Аналогично Entity.CallDeferredThreadGroup, но для уведомлений.
| Имя | Тип | По умолчанию |
|---|---|---|
what | int | — |
NotifyThreadSafevoid
public void NotifyThreadSafe(int what);Аналогично Entity.CallThreadSafe, но для уведомлений.
| Имя | Тип | По умолчанию |
|---|---|---|
what | int | — |
PrintOrphanEntitiesvoid
public static void PrintOrphanEntities();Выводит все осиротевшие сущности (сущности вне EntityTree). Полезно для отладки.
Примечание: Этот метод работает только в отладочных сборках. Он ничего не делает в проекте, экспортированном в режиме выпуска.
PrintTreevoid
public void PrintTree();Выводит сущность и его дочерние элементы на консоль рекурсивно. сущность не обязательно должен находиться внутри дерева. Этот метод выводит EntityPath относительно этого сущности и подходит для копирования/вставки в Entity.GetEntity. См. также Entity.PrintTreePretty.
Может выводить, например:
.
Menu
Menu/Label
Menu/Camera2D
SplashScreen
SplashScreen/Camera2DPrintTreePrettyvoid
public void PrintTreePretty();Выводит сущность и его дочерние элементы на консоль, рекурсивно. сущность не обязательно должен находиться внутри дерева. Аналогично Entity.PrintTree, но графическое представление выглядит так, как отображается в редакторе Сценический док. Это полезно для проверки больших деревьев.
Например, может вывести:
┖╴TheGame
┠╴Menu
┃ ┠╴Label
┃ ┖╴Camera2D
┖╴SplashScreen
┖╴Camera2DPropagateCallvoid
public void PropagateCall(StringName method, Reckfell.Collections.Array args = null, bool parentFirst = false);Вызывает заданное имя method, передавая args в качестве аргументов, на этом сущности и всех его дочерних узлах, рекурсивно.
Если parent_first равен true, метод сначала вызывается на этом сущности, затем на всех его дочерних узлах. Если false, сначала вызываются методы дочерних сущностей.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | Reckfell.Collections.Array | null |
parentFirst | bool | false |
PropagateNotificationvoid
public void PropagateNotification(int what);Синхронно отправляет указанное уведомление этой Entity, затем её потомкам. Само уведомление закрытия не завершает процесс; это может сделать обработчик через Quit(). Не рассылайте то же уведомление повторно из его обработчика.
| Имя | Тип | По умолчанию |
|---|---|---|
what | int | — |
whatИдентификатор уведомления, например (int)NotificationWMCloseRequest. Используйте константу нужного уведомления, а не код завершения процесса.
QueueAccessibilityUpdatevoid
public void QueueAccessibilityUpdate();Ставит в очередь обновление информации о доступности для этого сущности.
QueueFreevoid
public void QueueFree();Ставит нативную Entity на отложенное удаление. Дочерние объекты, остающиеся у неё к моменту удаления, также освобождаются. В выполненной проверке сразу после вызова объект ещё был действителен, а после обработки очереди исчез вместе с ребёнком. Не путайте с RemoveChild.
RemoveChildvoid
public void RemoveChild(Entity node);Отсоединяет непосредственного ребёнка без освобождения памяти. Выход из активного дерева вызывает события выхода; повторное подключение того же экземпляра не повторяет _Ready автоматически. Сохраните ссылку для повторного использования или освободите объект.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
nodeНепосредственный ребёнок этого родителя. Удаление посторонней Entity этим вызовом отклоняется.
RemoveFromGroupvoid
public void RemoveFromGroup(StringName group);Удаляет метку членства и активную регистрацию, если объект находится в дереве. Не удаляет саму Entity.
| Имя | Тип | По умолчанию |
|---|---|---|
group | StringName | — |
Reparentvoid
public void Reparent(Entity newParent, bool keepGlobalTransform = true);Перемещает под нового родителя. Owner сохраняется, только если остаётся допустимым предком; иначе область сохранения и уникального имени может измениться.
| Имя | Тип | По умолчанию |
|---|---|---|
newParent | Entity | — |
keepGlobalTransform | bool | true |
ReplaceByvoid
public void ReplaceBy(Entity node, bool keepGroups = false);Заменяет этот сущность заданным node. Все дочерние элементы этого сущности перемещаются в node.
Если keep_groups равно true, node добавляется в те же группы, в которых находится замененный сущность (см. Entity.AddToGroup).
Предупреждение: Замененный сущность удаляется из дерева, но он не удаляется сам. Чтобы предотвратить утечки памяти, сохраните ссылку на сущность в переменной или используйте ReckfellObject.Free.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
keepGroups | bool | false |
RequestReadyvoid
public void RequestReady();Запрашивает _Ready для следующего входа только этой Entity. Не вызывает его немедленно и не обходит потомков рекурсивно.
ResetPhysicsInterpolationvoid
public void ResetPhysicsInterpolation();Сбрасывает историю интерполяции ветви после установки финального transform, например при телепорте. Вызывайте после изменения и внутри активного дерева. Не обнуляет скорости, контакты или сетевые буферы.
Rpc2 перегрузки
public Error Rpc(StringName method, params Variant[] args);Посылает запрос на дистанционную процедуру method Запрос о вызове будет получен только узлами с теми же возможностями. EntityPath, включая то же самое Entity.NameПоведение зависит от конфигурации ОКП для данного method (см. Entity.RpcConfig и [annotation @C#@rpc]. По умолчанию методы не подвергаются воздействию ОКП.
Может вернуться OK Если он будет зовом удачным, ERR_INVALID_PARAMETER если аргументы, изложенные в method не совпадать, ERR_UNCONFIGURED если сущность Entity.Multiplayer не могут быть доставлены (например, когда сущность не находится внутри дерева), ERR_CONNECTION_ERROR если Entity.Multiplayer'связь отсутствует.
Примечание: Вы можете безопасно использовать RPC на клиентах только после получения MultiplayerApi.ConnectedToServer сигнал от MultiplayerApiВы также должны следить за состоянием соединения, либо с помощью MultiplayerApi такие сигналы, как MultiplayerApi.ServerDisconnected либо путем проверки (get_multiplayer().peer.get_connection_status() == CONNECTION_CONNECTED).
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | Variant[] | — |
Errorpublic Error Rpc(StringName method, ReadOnlySpan<Variant> args);Посылает запрос на дистанционную процедуру method Запрос о вызове будет получен только узлами с теми же возможностями. EntityPath, включая то же самое Entity.NameПоведение зависит от конфигурации ОКП для данного method (см. Entity.RpcConfig и [annotation @C#@rpc]. По умолчанию методы не подвергаются воздействию ОКП.
Может вернуться OK Если он будет зовом удачным, ERR_INVALID_PARAMETER если аргументы, изложенные в method не совпадать, ERR_UNCONFIGURED если сущность Entity.Multiplayer не могут быть доставлены (например, когда сущность не находится внутри дерева), ERR_CONNECTION_ERROR если Entity.Multiplayer'связь отсутствует.
Примечание: Вы можете безопасно использовать RPC на клиентах только после получения MultiplayerApi.ConnectedToServer сигнал от MultiplayerApiВы также должны следить за состоянием соединения, либо с помощью MultiplayerApi такие сигналы, как MultiplayerApi.ServerDisconnected либо путем проверки (get_multiplayer().peer.get_connection_status() == CONNECTION_CONNECTED).
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
args | ReadOnlySpan<Variant> | — |
ErrorRpcConfigvoid
public void RpcConfig(StringName method, Variant config);Изменяет конфигурацию ОТС для данного method. config должны быть либо null отключать функцию (как по умолчанию) или Reckfell.Collections.Dictionary с следующими позициями:
rpc_modeСм.MultiplayerApi.RpcMode;transfer_modeСм.MultiplayerPeer.TransferModeEnum;call_local:: еслиtrue, этот метод будет также называться на местном уровне;channel:: a [int] представляющего канал для отправки ОКСР. Примечание: В C# этот метод соответствует [Аннотация @C#@rpc] с различными параметрами, переданными (@rpc(any),@rpc(authority)...) См. многопользователь высокого уровня Наставник.
| Имя | Тип | По умолчанию |
|---|---|---|
method | StringName | — |
config | Variant | — |
RpcId2 перегрузки
public Error RpcId(long peerId, StringName method, params Variant[] args);Отправляет Entity.Rpc определенному одноранговому сущности, идентифицированному peer_id (см. MultiplayerPeer.SetTargetPeer).
Может возвращать OK, если вызов успешен, ERR_INVALID_PARAMETER, если аргументы, переданные в method, не совпадают, ERR_UNCONFIGURED, если Entity.Multiplayer сущности не может быть извлечен (например, когда сущность не находится внутри дерева), ERR_CONNECTION_ERROR, если соединение Entity.Multiplayer недоступно.
| Имя | Тип | По умолчанию |
|---|---|---|
peerId | long | — |
method | StringName | — |
args | Variant[] | — |
Errorpublic Error RpcId(long peerId, StringName method, ReadOnlySpan<Variant> args);Отправляет Entity.Rpc определенному одноранговому сущности, идентифицированному peer_id (см. MultiplayerPeer.SetTargetPeer).
Может возвращать OK, если вызов успешен, ERR_INVALID_PARAMETER, если аргументы, переданные в method, не совпадают, ERR_UNCONFIGURED, если Entity.Multiplayer сущности не может быть извлечен (например, когда сущность не находится внутри дерева), ERR_CONNECTION_ERROR, если соединение Entity.Multiplayer недоступно.
| Имя | Тип | По умолчанию |
|---|---|---|
peerId | long | — |
method | StringName | — |
args | ReadOnlySpan<Variant> | — |
ErrorSetAutoTranslateModevoid
public void SetAutoTranslateMode(Entity.AutoTranslateModeEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | Entity.AutoTranslateModeEnum | — |
SetDeferredThreadGroupvoid
public void SetDeferredThreadGroup(StringName property, Variant value);Аналогично Entity.CallDeferredThreadGroup, но для настройки свойств.
| Имя | Тип | По умолчанию |
|---|---|---|
property | StringName | — |
value | Variant | — |
SetDisplayFoldedvoid
public void SetDisplayFolded(bool fold);Если установлено значение true, сущность отображается свернутым в Сценический док. В результате все его дочерние элементы скрыты. Этот метод предназначен для использования в плагинах и инструментах редактора, но он также работает в сборках релиза. См. также Entity.IsDisplayedFolded.
| Имя | Тип | По умолчанию |
|---|---|---|
fold | bool | — |
SetEditableInstancevoid
public void SetEditableInstance(Entity node, bool isEditable);Установите значение true, чтобы разрешить всем узлам, принадлежащим node, быть доступными и редактируемыми в доке сцены, даже если их Entity.Owner не является корнем сцены. Этот метод предназначен для использования в плагинах и инструментах редактора, но он также работает в сборках релиза. См. также Entity.IsEditableInstance.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
isEditable | bool | — |
SetEditorDescriptionvoid
public void SetEditorDescription(string editorDescription);| Имя | Тип | По умолчанию |
|---|---|---|
editorDescription | string | — |
SetMultiplayerAuthorityvoid
public void SetMultiplayerAuthority(int id, bool recursive = true);Назначает peer с правом authority для этой сущности и, при recursive, потомков. Сам по себе не синхронизирует назначение на всех участниках и не проверяет аккаунт.
| Имя | Тип | По умолчанию |
|---|---|---|
id | int | — |
recursive | bool | true |
SetNamevoid
public void SetName(StringName name);| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
SetOwnervoid
public void SetOwner(Entity owner);Назначает предка владельцем сохраняемой Entity. Вызывайте после добавления в иерархию; не назначайте Entity самой себе и не ломайте области вложенных префабов.
| Имя | Тип | По умолчанию |
|---|---|---|
owner | Entity | — |
SetPhysicsInterpolationModevoid
public void SetPhysicsInterpolationMode(Entity.PhysicsInterpolationModeEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | Entity.PhysicsInterpolationModeEnum | — |
SetPhysicsProcessvoid
public void SetPhysicsProcess(bool enable);Переключает _PhysicsProcess этого объекта, отдельно от обычного callback. Отключение не является удалением тела из физического мира или очисткой его коллизий.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetPhysicsProcessInternalvoid
public void SetPhysicsProcessInternal(bool enable);Если установлено значение true, включает внутреннюю физику для этого сущности. Внутренняя обработка физики происходит изолированно от обычных вызовов Entity._PhysicsProcess и используется некоторыми узлами внутренне, чтобы гарантировать правильное функционирование, даже если сущность приостановлен или обработка физики отключена для скриптинга (Entity.SetPhysicsProcess).
Предупреждение: Встроенные сущности полагаются на внутреннюю обработку для своей внутренней логики. Отключение ее небезопасно и может привести к неожиданному поведению. Используйте этот метод, если вы знаете, что делаете.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetPhysicsProcessPriorityvoid
public void SetPhysicsProcessPriority(int priority);| Имя | Тип | По умолчанию |
|---|---|---|
priority | int | — |
SetProcessvoid
public void SetProcess(bool enable);Переключает обычный _Process этого объекта, отдельно от _PhysicsProcess. Не отключает автоматически все дочерние сигналы; pause/ProcessMode также влияют на фактический вызов.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetProcessInputvoid
public void SetProcessInput(bool enable);В случае установки true, позволяет обрабатывать входные данные.
Примечание: Если Entity._Input отключается, это будет автоматически включено до Entity.Ready зовутся. Input Уже предусмотрена обработка данных для контроля ГУИ, например Button и TextEdit.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetProcessInternalvoid
public void SetProcessInternal(bool enable);Если установлено значение true, включает внутреннюю обработку для этого сущности. Внутренняя обработка происходит изолированно от обычных вызовов Entity._Process и используется некоторыми узлами внутренне, чтобы гарантировать надлежащую работу, даже если сущность приостановлен или обработка отключена для скриптинга (Entity.SetProcess).
Предупреждение: Встроенные сущности полагаются на внутреннюю обработку для своей внутренней логики. Отключение ее небезопасно и может привести к неожиданному поведению. Используйте этот метод, если вы знаете, что делаете.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetProcessModevoid
public void SetProcessMode(Entity.ProcessModeEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | Entity.ProcessModeEnum | — |
SetProcessPriorityvoid
public void SetProcessPriority(int priority);| Имя | Тип | По умолчанию |
|---|---|---|
priority | int | — |
SetProcessShortcutInputvoid
public void SetProcessShortcutInput(bool enable);Если установлено значение true, включает обработку сокращений для этого сущности.
Примечание: Если Entity._ShortcutInput переопределен, он будет автоматически включен перед вызовом Entity.Ready.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetProcessThreadGroupvoid
public void SetProcessThreadGroup(Entity.ProcessThreadGroupEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | Entity.ProcessThreadGroupEnum | — |
SetProcessThreadGroupOrdervoid
public void SetProcessThreadGroupOrder(int order);| Имя | Тип | По умолчанию |
|---|---|---|
order | int | — |
SetProcessThreadMessagesvoid
public void SetProcessThreadMessages(Entity.ProcessThreadMessagesEnum flags);| Имя | Тип | По умолчанию |
|---|---|---|
flags | Entity.ProcessThreadMessagesEnum | — |
SetProcessUnhandledInputvoid
public void SetProcessUnhandledInput(bool enable);Если установлено значение true, включается обработка необработанного ввода. Это позволяет сущности получать весь ввод, который ранее не был обработан (обычно Control).
Примечание: Если Entity._UnhandledInput переопределен, он будет автоматически включен до вызова Entity.Ready. Обработка необработанного ввода также уже включена для элементов управления GUI, таких как Button и TextEdit.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetProcessUnhandledKeyInputvoid
public void SetProcessUnhandledKeyInput(bool enable);Если установлено значение true, включается обработка необработанного ввода клавиш.
Примечание: Если Entity._UnhandledKeyInput переопределен, он будет автоматически включен перед вызовом Entity.Ready.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetSceneInstanceLoadPlaceholdervoid
public void SetSceneInstanceLoadPlaceholder(bool loadPlaceholder);Если установлено значение true, сущность становится InstancePlaceholder при упаковке и создании экземпляра из PackedEntity. См. также Entity.GetSceneInstanceLoadPlaceholder.
| Имя | Тип | По умолчанию |
|---|---|---|
loadPlaceholder | bool | — |
SetSourceAssetPathvoid
public void SetSourceAssetPath(string sourceAssetPath);| Имя | Тип | По умолчанию |
|---|---|---|
sourceAssetPath | string | — |
SetThreadSafevoid
public void SetThreadSafe(StringName property, Variant value);Аналогично Entity.CallThreadSafe, но для настройки свойств.
| Имя | Тип | По умолчанию |
|---|---|---|
property | StringName | — |
value | Variant | — |
SetTranslationDomainInheritedvoid
public void SetTranslationDomainInherited();Делает так, чтобы этот сущность наследовал домен перевода от своего родительского сущности. Если у этого сущности нет родителя, будет использоваться основной домен перевода.
Это поведение по умолчанию для всех сущностей. Вызов ReckfellObject.SetTranslationDomain отключает это поведение.
SetUniqueNameInOwnervoid
public void SetUniqueNameInOwner(bool enable);| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
UpdateConfigurationWarningsvoid
public void UpdateConfigurationWarnings();Обновляет предупреждения, отображаемые для этого сущности в доке сцены. Используйте Entity._GetConfigurationWarnings для настройки отображаемых предупреждающих сообщений.
_EnterTreevoid
public virtual void _EnterTree();Вызывается при каждом входе в активное дерево, прежде обычного входа детей. Подходит для симметричной подписки с отпиской в _ExitTree.
_ExitTreevoid
public virtual void _ExitTree();Вызывается при выходе, после детей. Снимайте внешние подписки; выход не всегда означает удаление объекта.
_GetAccessibilityConfigurationWarningsstring[]
public virtual string[] _GetAccessibilityConfigurationWarnings();Элементы в массиве, возвращаемые этим методом, отображаются как предупреждения в доке сцены, если скрипт, который его переопределяет, является скриптом tool, а предупреждения о доступности включены в настройках редактора.
Возврат пустого массива не приводит к появлению предупреждений.
string[]_GetConfigurationWarningsstring[]
public virtual string[] _GetConfigurationWarnings();Элементы в массиве, возвращаемые этим методом, отображаются как предупреждения в доке сцены, если скрипт, который его переопределяет, является скриптом tool.
Возврат пустого массива не приводит к появлению предупреждений.
Вызовите Entity.UpdateConfigurationWarnings, когда предупреждения необходимо обновить для этого сущности.
string[]_GetFocusedAccessibilityElementRid
public virtual Rid _GetFocusedAccessibilityElement();Вызывается во время обновления информации о доступности для определения текущего сфокусированного подэлемента, должен возвращать RID подэлемента или значение, возвращаемое Entity.GetAccessibilityElement.
Rid_Inputvoid
public virtual void _Input(InputEvent @event);Вызывается при наличии события ввода. Событие ввода распространяется вверх по дереву сущностей, пока сущность не потребит его.
Вызывается только в том случае, если включена обработка ввода, что выполняется автоматически, если этот метод переопределен, и может быть переключено с помощью Entity.SetProcessInput.
Чтобы потребить событие ввода и остановить его дальнейшее распространение на другие сущности, можно вызвать Viewport.SetInputAsHandled.
Для игрового ввода обычно лучше подходят Entity._UnhandledInput и Entity._UnhandledKeyInput, поскольку они позволяют графическому интерфейсу сначала перехватывать события.
Примечание: Этот метод вызывается только в том случае, если сущность присутствует в дереве сцены (т. е. если он не является сиротой).
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
_PhysicsProcessvoid
public virtual void _PhysicsProcess(double delta);Вызывается на фиксированном шаге физики. delta — длительность шага в секундах. Здесь обновляют скорость CharacterBody2D или CharacterBody3D и вызывают MoveAndSlide(). Частота физики задаётся настройками проекта и не равна частоте отрисовки.
| Имя | Тип | По умолчанию |
|---|---|---|
delta | double | — |
_Processvoid
public virtual void _Process(double delta);Вызывается каждый отрисовываемый кадр при включённой обработке. delta — время с предыдущего кадра в секундах. Умножайте скорость на delta для перемещения с одинаковой скоростью при разной частоте кадров. Физическое движение выполняйте в _PhysicsProcess().
| Имя | Тип | По умолчанию |
|---|---|---|
delta | double | — |
_Readyvoid
public virtual void _Ready();Вызывается после готовности обычных детей; без RequestReady автоматически не повторяется при повторном входе. Не обещает готовность будущих объектов и внешних служб.
_ShortcutInputvoid
public virtual void _ShortcutInput(InputEvent @event);Вызывается, когда InputEventKey, InputEventShortcut или InputEventJoypadButton не были использованы Entity._Input или любым элементом GUI Control. Вызывается до Entity._UnhandledKeyInput и Entity._UnhandledInput. Событие ввода распространяется вверх по дереву сущностей, пока сущность не потребит его.
Вызывается только в том случае, если включена обработка сочетаний клавиш, что выполняется автоматически, если этот метод переопределен, и может быть переключено с помощью Entity.SetProcessShortcutInput.
Чтобы использовать событие ввода и остановить его дальнейшее распространение на другие сущности, можно вызвать Viewport.SetInputAsHandled.
Этот метод можно использовать для обработки сочетаний клавиш. Для общих событий GUI используйте вместо этого Entity._Input. События игрового процесса обычно следует обрабатывать с помощью Entity._UnhandledInput или Entity._UnhandledKeyInput.
Примечание: Этот метод вызывается только в том случае, если сущность присутствует в дереве сцены (т. е. если он не является сиротским).
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
_UnhandledInputvoid
public virtual void _UnhandledInput(InputEvent @event);Вызывается, когда InputEvent не был использован Entity._Input или любым элементом GUI Control. Он вызывается после Entity._ShortcutInput и после Entity._UnhandledKeyInput. Событие ввода распространяется вверх по дереву сущностей, пока сущность не использует его.
Он вызывается только в том случае, если включена обработка необработанного ввода, что выполняется автоматически, если этот метод переопределен, и может быть переключено с помощью Entity.SetProcessUnhandledInput.
Чтобы использовать событие ввода и остановить его дальнейшее распространение на другие сущности, можно вызвать Viewport.SetInputAsHandled.
Для игрового ввода этот метод обычно подходит лучше, чем Entity._Input, так как событиям GUI требуется более высокий приоритет. Для сочетаний клавиш рассмотрите возможность использования Entity._ShortcutInput, так как он вызывается перед этим методом. Наконец, для обработки событий клавиатуры рассмотрите возможность использования Entity._UnhandledKeyInput из соображений производительности.
Примечание: Этот метод вызывается только в том случае, если сущность присутствует в дереве сцены (т. е. если он не является сиротой).
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
_UnhandledKeyInputvoid
public virtual void _UnhandledKeyInput(InputEvent @event);Вызывается, когда InputEventKey не был использован Entity._Input или любым элементом GUI Control. Вызывается после Entity._ShortcutInput, но до Entity._UnhandledInput. Событие ввода распространяется вверх по дереву сущностей, пока сущность не потребит его.
Вызывается только в том случае, если включена обработка необработанного ввода клавиш, что выполняется автоматически, если этот метод переопределен, и может быть переключено с помощью Entity.SetProcessUnhandledKeyInput.
Чтобы использовать событие ввода и остановить его дальнейшее распространение на другие сущности, можно вызвать Viewport.SetInputAsHandled.
Этот метод можно использовать для обработки ввода символов Unicode с модификаторами [kbd]Alt[/kbd], [kbd]Alt + Ctrl[/kbd] и [kbd]Alt + Shift[/kbd] после обработки сочетаний клавиш.
Для игрового ввода этот и Entity._UnhandledInput обычно подходят лучше, чем Entity._Input, так как события GUI должны обрабатываться в первую очередь. Этот метод также работает лучше, чем Entity._UnhandledInput, так как несвязанные события, такие как InputEventMouseMotion, автоматически фильтруются. Для сочетаний клавиш рассмотрите возможность использования Entity._ShortcutInput.
Примечание: Этот метод вызывается только в том случае, если сущность присутствует в дереве сцены (т. е. если он не является сиротой).
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
Сигналы и события11
ChildEnteredTreeСобытие
public event Entity.ChildEnteredTreeEventHandler ChildEnteredTree;Выдается, когда дочерний node входит в EntityTree, обычно потому, что этот сущность вошел в дерево (см. Entity.TreeEntered) или был вызван Entity.AddChild.
Этот сигнал выдается после собственных Entity.NotificationEnterTree и Entity.TreeEntered дочернего сущности.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
ChildExitingTreeСобытие
public event Entity.ChildExitingTreeEventHandler ChildExitingTree;Выдается, когда дочерний node собирается выйти из EntityTree, обычно потому что этот сущность выходит из дерева (см. Entity.TreeExiting) или потому что дочерний node удаляется или освобождается.
Когда этот сигнал получен, дочерний node все еще доступен внутри дерева. Этот сигнал выдается после собственного Entity.TreeExiting и Entity.NotificationExitTree дочернего сущности.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
ChildOrderChangedСобытие
public event Action ChildOrderChanged;Выдается при изменении списка дочерних сущностей. Это происходит при добавлении, перемещении или удалении дочерних сущностей.
EditorDescriptionChangedСобытие
public event Entity.EditorDescriptionChangedEventHandler EditorDescriptionChanged;Генерируется при изменении поля описания сущности.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
EditorStateChangedСобытие
public event Action EditorStateChanged;Выдается при изменении атрибута сущности, который имеет отношение к редактору. Выдается только в редакторе.
ReadyСобытие
public event Action Ready;Вызывается, когда сущность «готов», т. е. когда и сущность, и его потомки вошли в дерево сцены. Если у сущности есть потомки, их обратные вызовы Entity.Ready срабатывают первыми, а родительский сущность получит уведомление о готовности позже.
Соответствует уведомлению Entity.NotificationReady в ReckfellObject.Notification. См. также аннотацию @onready для переменных.
Обычно используется для инициализации. Для еще более ранней инициализации можно использовать Object._init. См. также Entity._EnterTree.
Примечание: Этот метод может быть вызван только один раз для каждого сущности. После удаления сущности из дерева сцены и его повторного добавления Entity.Ready не будет вызван во второй раз. Это можно обойти, запросив другой вызов с помощью Entity.RequestReady, который может быть вызван в любом месте перед повторным добавлением сущности.
RenamedСобытие
public event Action Renamed;Выдается при изменении Entity.Name сущности, если сущность находится внутри дерева.
ReplacingByСобытие
public event Entity.ReplacingByEventHandler ReplacingBy;Выдается, когда этот сущность заменяется на node, см. Entity.ReplaceBy.
Этот сигнал выдается после добавления node в качестве дочернего элемента исходного родительского сущности, но до того, как все исходные дочерние сущности были переименованы в node.
| Имя | Тип | По умолчанию |
|---|---|---|
node | Entity | — |
TreeEnteredСобытие
public event Action TreeEntered;Выдается, когда сущность входит в дерево.
Этот сигнал выдается после связанного Entity.NotificationEnterTree уведомления.
TreeExitedСобытие
public event Action TreeExited;Выдается после того, как сущность выходит из дерева и больше не активен.
Этот сигнал выдается после связанного Entity.NotificationExitTree уведомления.
TreeExitingСобытие
public event Action TreeExiting;Выдается, когда сущность вот-вот выйдет из дерева. сущность все еще действителен. Таким образом, это правильное место для деинициализации (или «деструктора», если хотите).
Этот сигнал выдается после Entity._ExitTree сущности и до связанной Entity.NotificationExitTree.
Поля и константы49
NotificationAccessibilityInvalidateПоле
public const long NotificationAccessibilityInvalidate = 3001;Уведомление получено, когда элементы доступности становятся недействительными. Все элементы доступности сущности автоматически удаляются после получения этого сообщения, поэтому все существующие ссылки на такие элементы должны быть отброшены.
NotificationAccessibilityUpdateПоле
public const long NotificationAccessibilityUpdate = 3000;Уведомление получено, когда требуется обновление информации о доступности.
NotificationApplicationFocusInПоле
public const long NotificationApplicationFocusIn = 2016;Уведомление, полученное от OS при концентрации приложения, т.е. при изменении фокуса OS настольное или третье приложение к любому открытому окну в деле Reckfell. Выполнено на рабочих и мобильных платформах.
NotificationApplicationFocusOutПоле
public const long NotificationApplicationFocusOut = 2017;Уведомление, полученное от OS когда приложение дефокусируется, т.е. при изменении фокуса с любого открытого окна в деле Reckfell OS настольное или третье приложение. Выполнено на рабочих и мобильных платформах.
УВЕДОМЛЕНИЕ_TEXT_SERVER_ ИЗМЕНЕНИЕ
NotificationApplicationPausedПоле
public const long NotificationApplicationPaused = 2015;Уведомление, полученное от OS когда приложение задерживается. Специально для платформ Android и iOS. Примечание: На iOS у вас есть всего около 5 секунд, чтобы завершить задачу, запущенную этим сигналом. Если вы превысите это время, iOS завершит работу приложения вместо того, чтобы приостановить его.
NotificationApplicationPipModeEnteredПоле
public const long NotificationApplicationPipModeEntered = 2019;Уведомление приходит, когда приложение переходит в режим "картинка в картинке".
NotificationApplicationPipModeExitedПоле
public const long NotificationApplicationPipModeExited = 2020;Уведомление приходит при выходе приложения из режима "картинка в картинке".
NotificationApplicationResumedПоле
public const long NotificationApplicationResumed = 2014;Уведомление, полученное от OS при возобновлении подачи заявления. Специально для платформ Android и iOS.
NotificationChildOrderChangedПоле
public const long NotificationChildOrderChanged = 24;Уведомление получено при изменении списка дочерних сущностей. Это происходит при добавлении, перемещении или удалении дочерних сущностей.
УВЕДОМЛЕНИЕ МЕЖПРАВИТЕЛЬСТВЕННОГО
NotificationCrashПоле
public const long NotificationCrash = 2012;Уведомление получено от обработчика сбоев Reckfell, когда движок вот-вот рухнет. Реализовано на настольных платформах, если обработчик сбоев включен.
NotificationDisabledПоле
public const long NotificationDisabled = 28;Уведомление получено, когда сущность отключен. См. Entity.ProcessModeEnum.Disabled.
УВЕДОМЛЕНИЕ
NotificationDragBeginПоле
public const long NotificationDragBegin = 21;Уведомление получено, когда начинается операция перетаскивания. Все сущности получают это уведомление, а не только перетаскиваемый.
Может быть вызвано либо перетаскиванием Control, который предоставляет данные перетаскивания (см. Control._GetDragData), либо использованием Control.ForceDrag.
Используйте Viewport.GuiGetDragData для получения перетаскиваемых данных.
УВЕДОМЛЕНИЕ_DRAG_ END
NotificationDragEndПоле
public const long NotificationDragEnd = 22;Получено уведомление, когда операция перетаскивания завершена.
Используйте Viewport.GuiIsDragSuccessful, чтобы проверить, успешно ли перетаскивание.
NotificationEditorPostSaveПоле
public const long NotificationEditorPostSave = 9002;Уведомление, полученное сразу после сохранения сцены с сущностью в редакторе. Это уведомление отправляется только в редакторе Reckfell и не будет появляться в экспортированных проектах.
NotificationEditorPreSaveПоле
public const long NotificationEditorPreSave = 9001;Уведомление, полученное непосредственно перед сохранением сцены с сущностью в редакторе. Это уведомление отправляется только в редакторе Reckfell и не будет появляться в экспортированных проектах.
NotificationEnabledПоле
public const long NotificationEnabled = 29;Уведомление получено, когда сущность снова включается после отключения. См. Entity.ProcessModeEnum.Disabled.
УВЕДОМЛЕНИЕ_RESET_Physics_InterpoLATION
NotificationEnterTreeПоле
public const long NotificationEnterTree = 10;Уведомление получено, когда сущность входит в EntityTree. См. Entity._EnterTree.
Это уведомление получено до связанного сигнала Entity.TreeEntered.
УВЕДОМЛЕНИЕ_EXIT_TRIE
NotificationExitTreeПоле
public const long NotificationExitTree = 11;Уведомление, полученное, когда сущность собирается выйти из EntityTree. См. Entity._ExitTree.
Это уведомление получено после соответствующего сигнала Entity.TreeExiting.
Это уведомление отправляется в обратном порядке.
NotificationInternalPhysicsProcessПоле
public const long NotificationInternalPhysicsProcess = 26;Уведомление от дерева получено каждый физический кадр, когда Entity.IsPhysicsProcessingInternal возвращает true.
NotificationInternalProcessПоле
public const long NotificationInternalProcess = 25;Уведомление, полученное от дерева для каждого отрисованного кадра, когда Entity.IsProcessingInternal возвращает true.
УВЕДОМЛЕНИЕ_МЕЖПРАВИТЕЛЬСТВЕННОЕ_ФИЗИЧЕСКИЕ_ПРОКЕСТ
NotificationMovedInParentПоле · Устарело
public const long NotificationMovedInParent = 12;NotificationOsImeUpdateПоле
public const long NotificationOsImeUpdate = 2013;Уведомление, полученное от OS при обновлении Input Метод Engine происходит (например, изменение положения курсора IME или строки композиции). Выполнено на рабочих столах и вебплатформах.
УВЕДОМЛЕНИЕ_ ПРИМЕНИТЕЛЬНО
NotificationOsMemoryWarningПоле
public const long NotificationOsMemoryWarning = 2009;Уведомление, полученное от OS когда приложение превышает предписанную память. Выполнено только на iOS.
УВЕДОМЛЕНИЕ_TRANSLATION_ ИЗМЕНЕНИЕ
NotificationParentedПоле
public const long NotificationParented = 18;Уведомление получено, когда сущность установлен как дочерний для другого сущности (см. Entity.AddChild и Entity.AddSibling).
Примечание: Это не означает, что сущность вошел в EntityTree.
УВЕДОМЛЕНИЕ
NotificationPathRenamedПоле
public const long NotificationPathRenamed = 23;Уведомление получено, когда Entity.Name сущности или одного из его предков Entity.Name изменено. Это уведомление не получено, когда сущность удален из EntityTree.
NotificationPausedПоле
public const long NotificationPaused = 14;Уведомление получено, когда сущность приостановлен. См. Entity.ProcessMode.
УВЕДОМЛЕНИЕ НЕПРАВИТЕЛЬСТВЕННО
NotificationPhysicsProcessПоле
public const long NotificationPhysicsProcess = 16;Уведомление, полученное от дерева в каждом кадре физики, когда Entity.IsPhysicsProcessing возвращает true. См. Entity._PhysicsProcess.
УВЕДОМЛЕНИЕ
NotificationPostEnterTreeПоле
public const long NotificationPostEnterTree = 27;Уведомление получено, когда сущность входит в дерево, непосредственно перед тем, как может быть получено Entity.NotificationReady. В отличие от последнего, оно отправляется каждый раз, когда сущность входит в дерево, а не только один раз.
УВЕДОМЛЕНИЕ
NotificationProcessПоле
public const long NotificationProcess = 17;Уведомление, полученное от дерева для каждого отрисованного кадра, когда Entity.IsProcessing возвращает true. См. Entity._Process.
УВЕДОМЛЕНИЕ
NotificationReadyПоле
public const long NotificationReady = 13;Уведомление получено, когда сущность готов. См. Entity.Ready.
- УВЕДОМЛЕНИЕ*
NotificationResetPhysicsInterpolationПоле
public const long NotificationResetPhysicsInterpolation = 2001;Уведомление получено при вызове Entity.ResetPhysicsInterpolation на сущности или его предках.
УВЕДОМЛЕНИЕ_ЭОДОР_ПРЕ_УВЕДОМЛЕНИЕ
NotificationSceneInstantiatedПоле
public const long NotificationSceneInstantiated = 20;Уведомление получено только вновь созданным корневым сущностью сцены, когда PackedEntity.Instantiate завершен.
УВЕДОМЛЕНИЕ_DRAG_BEGIN
NotificationTextServerChangedПоле
public const long NotificationTextServerChanged = 2018;Получено уведомление при изменении TextServer.
УВЕДОМЛЕНИЕ_ ПРИМЕНЕНИЕ_PIP_MODE_ВЕДЕННОЕ
NotificationTranslationChangedПоле
public const long NotificationTranslationChanged = 2010;Уведомление получено, когда переводы могли измениться. Может быть вызвано изменением пользователем локали, изменением Entity.AutoTranslateMode или когда сущность входит в дерево сцены. Может использоваться для реагирования на изменения языка, например, для изменения строк пользовательского интерфейса на лету. Полезно при работе со встроенной поддержкой перевода, например ReckfellObject.Tr.
Примечание: Это уведомление получено вместе с Entity.NotificationEnterTree, поэтому, если вы создаете сцену, дочерние сущности еще не будут инициализированы. Вы можете использовать его для настройки переводов для этого сущности, дочерних сущностей, созданных из скрипта, или если вы хотите получить доступ к дочерним узлам, добавленным в редакторе, убедитесь, что сущность готов, используя Entity.IsEntityReady.
УВЕДОМЛЕНИЕ
NotificationUnparentedПоле
public const long NotificationUnparented = 19;Уведомление получено, когда родительский сущность вызывает Entity.RemoveChild на этом сущности.
Примечание: Это не означает, что сущность вышел из EntityTree.
NotificationUnpausedПоле
public const long NotificationUnpaused = 15;Уведомление получено, когда сущность снят с паузы. См. Entity.ProcessMode.
NotificationVpMouseEnterПоле
public const long NotificationVpMouseEnter = 1010;Уведомление получено, когда курсор мыши входит в видимую область Viewport, которая не перекрыта другими Control или Window, при условии, что его Viewport.GuiDisableInput имеет значение false и независимо от того, находится ли он в данный момент в фокусе или нет.
УВЕДОМЛЕНИЕ_VP_MOZE_EXIT
NotificationVpMouseExitПоле
public const long NotificationVpMouseExit = 1011;Уведомление получено, когда курсор мыши покидает видимую область Viewport, которая не перекрыта другими Control или Window, при условии, что его Viewport.GuiDisableInput имеет значение false и независимо от того, находится ли он в данный момент в фокусе или нет.
NotificationWMAboutПоле
public const long NotificationWMAbout = 2011;Уведомление, полученное от OS когда направляется просьба о предоставлении информации "отказ". Выполнено только на макосе.
УВЕДОМЛЕНИЕ
NotificationWMCloseRequestПоле
public const long NotificationWMCloseRequest = 1006;Уведомление, полученное от OS при направлении непосредственного запроса (например, закрывающее окно кнопкой "Закрытое" или [kbd]Alt + F4[/kbd]). Выполнено на рабочих столах.
УВЕДОМЛЕНИЕ_WM_GO_BACK_REQUEST
NotificationWMDpiChangeПоле
public const long NotificationWMDpiChange = 1009;Уведомление, полученное от OS когда изменяется шкала точек экрана на дюйм (DPI).
NotificationWMGoBackRequestПоле
public const long NotificationWMGoBackRequest = 1007;Уведомление, полученное от OS при направлении обратного запроса (например, нажатие кнопки "Back" на Android). Выполнено только на Android.
УВЕДОМЛЕНИЕ_WM_SIZE_ ИЗМЕНЕНИЕ
NotificationWMMouseEnterПоле
public const long NotificationWMMouseEnter = 1002;Уведомление получено, когда мышь попадает в окно. Реализовано для встроенных окон и на настольных и веб-платформах.
NotificationWMMouseExitПоле
public const long NotificationWMMouseExit = 1003;Уведомление получено, когда мышь покидает окно. Реализовано для встроенных окон и на настольных и веб-платформах.
NotificationWMOutputMaxLinearValueChangedПоле
public const long NotificationWMOutputMaxLinearValueChanged = 1013;Уведомление будет получено, когда изменено максимальное линейное значение выходного сигнала, возвращаемое методом Window.GetOutputMaxLinearValue.
Это происходит, когда вывод HDR включен или выключен, а также когда изменились какие-либо значения яркости окна, отображаемые в режиме HDR, например, когда плеер регулирует яркость экрана или перемещает окно на другой экран.
УВЕДОМЛЕНИЕ_OS_MEMORY_ ПРЕДУПРЕЖДЕНИЕ
NotificationWMPositionChangedПоле
public const long NotificationWMPositionChanged = 1012;Полученное уведомление при перемещении окна.
УВЕДОМЛЕНИЕ_WM_OUTPUT_MAX_LINEAR_VALUE_ ИЗМЕНЕНИЕ
NotificationWMSizeChangedПоле
public const long NotificationWMSizeChanged = 1008;Уведомление получено при изменении размера окна.
Примечание: Это уведомление получает только сущность Window с измененным размером, и оно не распространяется на дочерние сущности.
УВЕДОМЛЕНИЕ_WM_DPI_ ИЗМЕНЕНИЕ
NotificationWMWindowFocusInПоле
public const long NotificationWMWindowFocusIn = 1004;Уведомление, полученное от OS когда сущность Window Это может быть смена фокуса между двумя окнами одного и того же двигателя или с другой стороны. OS настольное или третье приложение к окну игры (в этом случае) Entity.NotificationApplicationFocusIn также получен).
A Window сущность получает это уведомление, когда он концентрируется.
NotificationWMWindowFocusOutПоле
public const long NotificationWMWindowFocusOut = 1005;Уведомление, полученное от OS когда сущность Window Это может быть изменение фокуса между двумя окнами одного и того же двигателя или с окна игры на окно игры. OS настольное или третье приложение (в этом случае) Entity.NotificationApplicationFocusOut также получен).
A Window Университет получает это уведомление, когда он дефокусируется.
УВЕДОМЛЕНИЕ_WM_CLOSE_RECUEST
Entity.AutoTranslateModeEnum
| Значение | Описание |
|---|---|
Always = 1 | Всегда автоматически переводить. Это обратная |
Disabled = 2 | Никогда не переводите автоматически. |
Inherit = 0 | Наследует |
Entity.DuplicateFlags
| Значение | Описание |
|---|---|
Default = 15 | Дублирование с использованием флагов по умолчанию. Эта константа полезна для добавления или удаления одного флага. ВНУТРЕННИЕ ПРАКТИЧЕСКИЕ ДИСКУССИИ |
Groups = 2 | Дублируйте группы сущностей. |
InternalState = 16 | Дублировать также несериализуемые переменные (т.е. без |
Scripts = 4 | Дублировать скрипт сущности (также переопределяя дублированные дочерние скрипты, если это объединено с |
Signals = 1 | Дублируйте сигнальные соединения сущности, которые связаны с флагом |
UseInstantiation = 8 | Дублировать с помощью |
Entity.InternalMode
| Значение | Описание |
|---|---|
Back = 2 | сущность будет помещен в конец дочерних сущностей родителя, после любого невнутреннего родственного сущности. |
Disabled = 0 | сущность не будет внутренним. |
Front = 1 | сущность будет помещен в начало дочерних сущностей родителя, перед любым невнутренним сущностью-братьем. |
Entity.PhysicsInterpolationModeEnum
| Значение | Описание |
|---|---|
Inherit = 0 | Наследует |
Off = 2 | Отключает интерполяцию физики для этого сущности и для дочерних элементов, для которых задано значение |
On = 1 | Включает интерполяцию физики для этого сущности и для дочерних элементов, заданных как |
Entity.ProcessModeEnum
| Значение | Описание |
|---|---|
Always = 3 | Всегда обрабатывается. Продолжает обработку, игнорируя |
Disabled = 4 | Никогда не обрабатывается. Полностью отключает обработку, игнорируя |
Inherit = 0 | Наследует |
Pausable = 1 | Обрабатывает процесс, когда |
WhenPaused = 2 | Обрабатывает только, когда |
Entity.ProcessThreadGroupEnum
| Значение | Описание |
|---|---|
Inherit = 0 | Обработать этот сущность на основе режима группы потоков первого родительского (или прародительского) сущности, который имеет режим группы потоков, который не наследуется. Для получения дополнительной информации см. |
MainThread = 1 | Обработать этот сущность (и дочерние сущности, настроенные на наследование) в основном потоке. См. |
SubThread = 2 | Обработать этот сущность (и дочерние сущности, настроенные на наследование) в подпотоке. Для получения дополнительной информации см. |
Entity.ProcessThreadMessagesEnum
| Значение | Описание |
|---|---|
Messages = 1 | Позволяет этому сущности обрабатывать потоковые сообщения, созданные с помощью |
MessagesAll = 3 | Позволяет этому сущности обрабатывать потоковые сообщения, созданные с помощью |
MessagesPhysics = 2 | Позволяет этому сущности обрабатывать потоковые сообщения, созданные с помощью |