private void Initialize() { _gameEnvironmentSetRepository = selectedGameEnvironmentRepositoryProvider.Provide(); _tileHoldersFetchingService = tileHoldersFetchingServiceProvider.Provide(); _unitHoldersFetchingService = unitHoldersFetchingServiceProvider.Provide(); _constructHoldersFetchingService = constructsHoldersFetchingServiceProvider.Provide(); _strongholdHoldersFetchingService = strongholdHolderFetchingServiceProvider.Provide(); _messageService = messageServiceProvider.Provide(); }
private IObservable <Unit> GetRecycleHoldersObservable <T>(IBoardItemHoldersFetchingService <T> holdersFetchingService) where T : IBoardItemHolder { return(holdersFetchingService.Fetch() .Select( holders => { foreach (var holder in holders) { holder.ReturnToPool(); } return Unit.Default; } )); }
public ClosestTileHolderFromPositionService(IWorldConfigRepository loadedWorldConfigRepository, IBoardItemHoldersFetchingService <TileHolder> holderFetchingService, ILoadBoardItemsHolderService tileHolderLoadService) { _holderFetchingService = holderFetchingService; _currentTileHolders = new List <TileHolder>(); _compositeDisposable = new CompositeDisposable { loadedWorldConfigRepository.GetObservableStream() .SubscribeOn(Scheduler.ThreadPool) .ObserveOn(Scheduler.MainThread) .Subscribe(config => _currentWorldConfig = config), tileHolderLoadService.FinishedLoadingEventStream .SubscribeOn(Scheduler.ThreadPool) .ObserveOn(Scheduler.MainThread) .Subscribe(_ => UpdateCurrentTileHolders()) }; }
private void OnEnable() { _setupStrongholdGameObjectsInternalPositionService = serviceProvider.Provide(); _strongholdsHolderFetchingService = strongholdHoldersFetchingServiceProvider.Provide(); }
public TilesHolderService(IBoardItemHoldersFetchingService <TileHolder> tileHoldersFetchingService, IMapConfigRepository loadedMapConfigRepository) { _tileHoldersFetchingService = tileHoldersFetchingService; _loadedMapConfigRepository = loadedMapConfigRepository; }
public IBoardItemHoldersFetchingService <TileHolder> Provide() => _cache ?? (_cache = new BoardItemHoldersFetchingService <TileHolder>( fetcherRepositoryProvider.Provide() ));