void Update() { List <int> removedindexes = new List <int>(); int index = 0; foreach (WorkerItem workerItem in WorkerItems) { Worker w = workerItem.Worker; float timetolearn = TimeToLearnSkill * w.GetLevel(Type); float time = (float)DateTime.Now.Subtract(workerItem.WorkerTimeOfArrival).TotalSeconds; CircleBar.SetPercentage(time / timetolearn); if (time >= timetolearn) { w.SwitchState(Worker.States.WalkingToPlayer); w.AddLevel(Type); CircleBar.SetPercentage(0); removedindexes.Add(index); } index++; } foreach (int i in removedindexes) { WorkerItems.RemoveAt(i); } }
private void FinishTask() { foreach (WorkerItem w in WorkerItems) { w.Worker.SwitchState(Worker.States.WalkingToPlayer); } WorkerItems.Clear(); IsCompleted = true; Destroy(gameObject); }
public void CreateAppDomains() { if (WorkerItems.Any()) { return; } WorkerItems.Add(CreateWorkerItem(1)); WorkerItems.Add(CreateWorkerItem(2)); WorkerItems.Add(CreateWorkerItem(3)); Console.WriteLine("MessageHandler CreateAppDomain Method. Invoking Test Method...."); foreach (var workerItem in WorkerItems) { workerItem.WorkerAppDomain.Test(); } }