public void MarkItemsUnderway(IJobCallStructure structure, Item item) { foreach (var jobCall in JobCalls) { if (jobCall.originStructure.Equals(structure) && jobCall.itemToBeDelivered.getName().Equals(item.getName())) jobCall.itemsInTransit += item.getAmount(); } }
public void successJobCall(IJobCallStructure jobCallStructure, Item item) { foreach (var call in JobCalls) { if (call.targetStructure.Equals(jobCallStructure) && call.itemToBeDelivered.GetType() == item.GetType()) { call.itemToBeDelivered.addAmount(-item.getAmount()); if (call.itemToBeDelivered.getAmount() == 0) JobCalls.Remove(call); return; } } }
public JobCallInventory(IJobCallStructure structure) { this.structure = structure; }
public List<JobCall> getItemsUnderway(IJobCallStructure structure) { return JobCalls.Where(jobCall => jobCall.targetStructure == structure).ToList(); }