Esempio n. 1
0
 public BaseEncounter(IEnumerable <Agent> importantAgents, IEnumerable <Event> events, PhaseSplitter phaseSplitter,
                      IResultDeterminer resultDeterminer, IEncounterNameProvider nameProvider)
 {
     ImportantEnemies      = importantAgents.ToArray();
     this.phaseSplitter    = phaseSplitter;
     this.resultDeterminer = resultDeterminer;
     this.nameProvider     = nameProvider;
     this.events           = events as Event[] ?? events.ToArray();
 }
Esempio n. 2
0
 public BaseEncounterData(
     Encounter encounter,
     IEnumerable <Agent> importantAgents,
     PhaseSplitter phaseSplitter,
     IResultDeterminer resultDeterminer,
     IModeDeterminer modeDeterminer,
     IReadOnlyList <IPostProcessingStep> processingSteps)
 {
     Targets          = importantAgents.ToList();
     Encounter        = encounter;
     PhaseSplitter    = phaseSplitter;
     ResultDeterminer = resultDeterminer;
     ModeDeterminer   = modeDeterminer;
     ProcessingSteps  = processingSteps;
 }
Esempio n. 3
0
 public EncounterIdentifierBuilder(
     Encounter defaultEncounter,
     List <Agent> defaultTargets,
     PhaseSplitter defaultPhaseSplitter,
     IResultDeterminer defaultResultDeterminer,
     IModeDeterminer defaultModeDeterminer,
     IEnumerable <IPostProcessingStep> defaultProcessingSteps = null
     )
 {
     Encounter        = defaultEncounter;
     Targets          = defaultTargets ?? throw new ArgumentNullException(nameof(defaultTargets));
     PhaseSplitter    = defaultPhaseSplitter ?? throw new ArgumentNullException(nameof(defaultPhaseSplitter));
     ResultDeterminer = defaultResultDeterminer ?? throw new ArgumentNullException(nameof(defaultResultDeterminer));
     ModeDeterminer   = defaultModeDeterminer ?? throw new ArgumentNullException(nameof(defaultModeDeterminer));
     ProcessingSteps  = (defaultProcessingSteps ?? Enumerable.Empty <IPostProcessingStep>()).ToList();
 }
Esempio n. 4
0
 public EncounterIdentifierBuilder WithPhases(PhaseSplitter splitter)
 {
     PhaseSplitter = splitter;
     return(this);
 }