Update README-RU.md

This commit is contained in:
Mikhail 2024-03-09 00:03:36 +08:00 committed by GitHub
parent cca7357155
commit 1ea92e8318
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -129,11 +129,8 @@ struct PlayerTag : IEcsTagComponent {}
## System
**Системы** - это основная логика, тут задается поведение сущностей. Существуют в виде пользовательских классов, реализующих как минимум один из интерфейсов процессов. Основные процессы:
```c#
class SomeSystem : IEcsPreInit, IEcsInit, IEcsRun, IEcsDestroy, IEcsPipelineMember
class SomeSystem : IEcsPreInit, IEcsInit, IEcsRun, IEcsDestroy
{
// Получить экземпляр пайплайна к которому принадлежит система.
public EcsPipeline Pipeline { get ; set; }
// Будет вызван один раз в момент работы EcsPipeline.Init() и до срабатывания IEcsInit.Init().
public void PreInit () { }
@ -168,6 +165,16 @@ EcsPipelone pipeline = EcsPipeline.New() //Создает Builder пайплай
.Build();
pipeline.Init(); // Инициализация пайплайна
```
```c#
class SomeSystem : IEcsRun, IEcsPipelineMember
{
// Получить экземпляр пайплайна к которому принадлежит система.
public EcsPipeline Pipeline { get ; set; }
public void Run () { }
}
```
> Для одновременного построения и инициализации есть метод Builder.BuildAndInit();
### Внедрение зависимостей
Фреймворк реализует внедрение зависимостей для систем. это процесс который запускается вместе с инициализацией пайплайна и внедряет данные переданные в Builder.