public override void OnLevelLoaded(LoadMode mode) { base.OnLevelLoaded(mode); if (_container != null && _menusInstaller == null) { _menusInstaller = _container.AddComponent<MenusInstaller>(); _menusInstaller.InstallationCompleted += MenusInstallationCompleted; } }
public override void OnReleased() { base.OnReleased(); if (_isReleased) { return; } if (_initializer != null) { Object.Destroy(_initializer); _initializer = null; } if (_localizationInstaller != null) { Object.Destroy(_localizationInstaller); _localizationInstaller = null; } if (_assetsInstaller != null) { Object.Destroy(_assetsInstaller); _assetsInstaller = null; } if (_roadsInstaller != null) { Object.Destroy(_roadsInstaller); _roadsInstaller = null; } if (_menusInstaller != null) { Object.Destroy(_menusInstaller); _menusInstaller = null; } if (_newRoads != null) { Object.Destroy(_newRoads); _newRoads = null; } if (_container != null) { Object.Destroy(_container); _container = null; } _isReleased = true; }
private void MenusInstallationCompleted() { Loading.QueueAction(() => { if (_menusInstaller != null) { Object.Destroy(_menusInstaller); _menusInstaller = null; } }); }