public override void Produce(ProduceCapability capability) { if (Resource != null || capability.Resources.Count == 0 || capability.Tasks.Any(task => task.IsResourceInProduction)) { return; } Resource = capability.Resources[0]; capability.Resources.RemoveAt(0); Resource.Task.IsResourceInProduction = true; Robot.ProduceWorkpiece(Resource.Workpiece); Resource.OnCapabilityApplied(); }
public override void Produce(ProduceCapability capability) { if (Resource != null || capability.Resources.Count == 0 || capability.Tasks.Any(task => task.IsResourceInProduction)) return; Resource = capability.Resources[0]; capability.Resources.RemoveAt(0); Resource.Task.IsResourceInProduction = true; Robot.ProduceWorkpiece(Resource.Workpiece); Resource.OnCapabilityApplied(); }
public virtual void Produce(ProduceCapability capability) { }