示例#1
0
 public static double ComputeEffect(AugmentorType AttachedType, int AttachedQuantity, bool RequiresInput, int ProcessingTime = 60)
 {
     if (AttachedType == AugmentorType.Output)
     {
         return(OutputAugmentor.ComputeEffect(AttachedQuantity, RequiresInput));
     }
     else if (AttachedType == AugmentorType.Speed)
     {
         return(SpeedAugmentor.ComputeEffect(AttachedQuantity, RequiresInput));
     }
     else if (AttachedType == AugmentorType.Efficiency)
     {
         return(EfficiencyAugmentor.ComputeEffect(AttachedQuantity, RequiresInput));
     }
     else if (AttachedType == AugmentorType.Quality)
     {
         return(QualityAugmentor.ComputeEffect(AttachedQuantity, RequiresInput));
     }
     else if (AttachedType == AugmentorType.Production)
     {
         return(ProductionAugmentor.ComputeEffect(AttachedQuantity, RequiresInput));
     }
     else if (AttachedType == AugmentorType.Duplication)
     {
         return(DuplicationAugmentor.ComputeEffect(AttachedQuantity, RequiresInput, ProcessingTime));
     }
     else
     {
         throw new NotImplementedException(string.Format("Unrecognized AugmentorType: {0}", AttachedType.ToString()));
     }
 }