diff --git a/README-RU.md b/README-RU.md index ff6e9cb..0f21acb 100644 --- a/README-RU.md +++ b/README-RU.md @@ -49,7 +49,7 @@ _pipeline = EcsPipeline.New() .Add(new TestSystem()) .Add(new VelocitySystem()) .Add(new ViewSystem()) - .AutoInject() + .AutoInject() // Активирует автоинъекции .BuildAndInit(); ``` @@ -66,6 +66,9 @@ _pipeline = EcsPipeline.New() * `[Exc]` - кеширует пул и добавит тип компонента в исключающее ограничение субъекта, аналог метода `Exclude`; * `[Opt]` - только кеширует пул, аналог метода `Optional`; +Атрибут для комбинирования субъектов: +* `[Combine(order)]` - кеширует субъект и скомбинирует ограничения субъектов, аналог метода `Combine`, аргумент `order` задает порядок комбинирования, по умлочанию `order = 0`; + Дополнительные атрибуты только для задания ограничений субъекта. Их можно применить к самому субъекту, либо к любому полю внутри. Используйте атрибуты: * `[IncImplicit(type)]` - добавит в включающее ограничение указанный в конструкторе тип `type`, аналог метода `Include`; * `[ExcImplicit(type)]` - добавит в исключающее ограничение указанный в конструкторе тип `type`, аналог метода `Exclude`; @@ -135,6 +138,6 @@ class VelocitySystem : IEcsRunProcess, IEcsInject, IEcsInject Для корректной работы переданный тип должен иметь конструктор без парамтров и быть либо того же типа что и поле, либо производного типа. +> Переданный тип должен иметь конструктор без параметров и быть либо того же типа что и тип поля, либо производного типа. Расширение так же сообщит если по завершению предварительной инъекции, остались не проинициализированные поля с `[EcsInject]`.