public void Init(ITickProcessor tickProcessor, CameraActor mainCamera) { TickProcessor = tickProcessor; Camera = mainCamera.Component; if (_child) { _child.Init(tickProcessor, mainCamera); } foreach (var data in _datas) { _actorDatas.SetAndInitialize(this, Instantiate(data)); } foreach (var behaviour in _behaviours) { _actorBehaviours.SetAndInitialize(this, Instantiate(behaviour)); } OnInitializeComplete?.Invoke(this, null); OnInitializeComplete = null; OnAwake(); }
/// <summary> /// Initialize /// </summary> public void Initialize() { OnPreInitialize?.Invoke(); this.RegisterDependencies(); this.RunStartupTasks(); OnInitializeComplete?.Invoke(this); }