From a14f5b95d18953af6b5eb75f5929357a5fe37f63 Mon Sep 17 00:00:00 2001 From: Mikhail <99481254+DCFApixels@users.noreply.github.com> Date: Sun, 28 May 2023 22:26:32 +0800 Subject: [PATCH] Update README.md --- README.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ee2b961..2a3f657 100644 --- a/README.md +++ b/README.md @@ -40,19 +40,21 @@ _pipeline = EcsPipeline.New() ``` # Инъекция зависимостей -Аттрибут `[EcsInject]` убирает необходимость использования интерфейса `IEcsInject`, поля помеченные таким атрибутом автоматически подхватят зависимости внедренные в Pipeline. +Аттрибут `[EcsInject]` убирает необходимость использования интерфейса `IEcsInject`, поля помеченные таким атрибутом автоматически подхватят зависимости внедренные в Pipeline. Пример: +```csharp +[EcsInject] EcsDefaultWorld _world; +``` +# Фабрика субъектов +Так же AutoInjections упрощает построение субъектов. Для начала наследуйте субъект не от `EcsSubject`, а от `EcsSubjectDI`, а далее добавтье специальные атрибуты. -# Фабрикаа субъектов -Так же AutoInjections упрощает построение субъектов. Для работы наследйте субъекты не от `EcsSubject`, а от `EcsSubjectDI`. - -Есть специальные атрибуты для инициализации полей с пулами: +Атрибуты для инициализации полей с пулами: * `[Inc]` - закеширует пул и добавит тип компонента в включающее ограничение субъекта, аналог метода `Include`; * `[Exc]` - закеширует пул и добавит тип компонента в исключающее ограничение субъекта, аналог метода `Exclude`; * `[Opt]` - только кеширует пул, аналог метода `Optional`; Дополнительные аттрибуты только для задания ограничений субъекта. Их можно применить к самому субъекту, либо к любому полю внутри. Используйте аттрибуты: -* `[IncImplicit(type)]` - добавит в включающее ограничение тип указанный в конструкторе `type`, аналог метода `Include`; -* `[ExcImplicit(type)]` - добавит в исключающее ограничение тип указанный в конструкторе `type`, аналог метода `Exclude`; +* `[IncImplicit(type)]` - добавит в включающее ограничение указанный в конструкторе тип `type`, аналог метода `Include`; +* `[ExcImplicit(type)]` - добавит в исключающее ограничение указанный в конструкторе тип `type`, аналог метода `Exclude`; # Пример кода ```csharp