public void Construct(LocationJobIcons.Factory locationJobIconsFactory, AvailableWorkers availableWorkers, Player player, JobAssignment.Factory jobAssignmentFactory) { this.locationJobIconsFactory = locationJobIconsFactory; this.availableWorkers = availableWorkers; this.player = player; this.jobAssignmentFactory = jobAssignmentFactory; }
public void Construct( [Inject(Id = "HighlightedJobProvider")] ObjectProvider highlightedJobProvider, GlobalEventManager globalEventManager, AvailableWorkers availableWorkers, Player player) { this.highlightedJobProvider = highlightedJobProvider; this.globalEventManager = globalEventManager; this.availableWorkers = availableWorkers; this.player = player; }
public void Configure(AbstractWorker workerPrefab, BanditWorkerSettings workerSetting, AvailableWorkers availableWorkers, EventDirector eventDirector) { workerPrefab.gameObject.SetActive(false); Worker = Instantiate(workerPrefab); Worker.Init(workerSetting, eventDirector); workerPrefab.gameObject.SetActive(true); Worker.onPlacement.AsObservable().Subscribe(_ => { onPlacement.Invoke(); }); var onReclamation = Worker.onReclaimation.AsObservable(); var onJobComplete = Worker.onJobAssignmentComplete.AsObservable(); var onBanditReturned = onReclamation.Merge(onJobComplete); onBanditReturned.Subscribe(_ => { onReturn.Invoke(); }); this.availableWorkers = availableWorkers; }
public Worker GetWorkerByID(int ID) { return(AvailableWorkers.FirstOrDefault(x => x.ID == ID) ?? new Worker()); }