public virtual IEnumerator ProcessRoutine() { bool first = true; inputEntities.SetLocked(true); while ((first || Loop) && CanGetStarted()) { status = ProcessStatus.Running; first = false; startTime = Time.time; duration = CalculateDuration(); OnStartProgressEvent?.Invoke(); yield return(new WaitForSeconds(duration)); ClearConsumeablesFromInput(); status = ProcessStatus.NotRunning; nonHumanEntities.Add(SpawnResultsAndReturnLocalOnes()); OnFinishProgressEvent?.Invoke(); } inputEntities.SetLocked(false); }
internal void Add(UseableEntity[] useableEntities) { dockList.Add(useableEntities); }
public void Receive(T source) { connectedList.Add(source as object); }