public AilmentTriggerSubDefinition ToAilmentTrigger(GameData gameData) { if (gameData == null) { throw new ArgumentNullException(nameof(gameData)); } var newAT = new AilmentTriggerSubDefinition(); newAT.triggerType = TriggerType; newAT.focusMatters = FocusMatters; newAT.onUnfocused = OnUnfocused; newAT.exhaustionMatters = ExhaustionMatters; newAT.onExhausted = OnExhausted; newAT.upsetMatters = UpsetMatters; newAT.onUpset = OnUpset; newAT.thresholdValue = ThresholdValue; newAT.thresholdPersistent = ThresholdPersistent; newAT.perentChance = PerentChance; newAT.executeLimit = ExecuteLimit; newAT.defaultDisabled = DefaultDisabled; newAT.audibalized = Audibalized; newAT.verbalized = Verbalized; newAT.verbalizedIndex = VerbalizedIndex; newAT.stepsProcessType = StepsProcessType; newAT.steps = StepInfos.Select(x => x.ToAilmentStep(gameData)).ToList(); return(newAT); }
public AilmentTriggerInfo(AilmentTriggerSubDefinition ailmentTrigger) { TriggerType = ailmentTrigger.triggerType; FocusMatters = ailmentTrigger.focusMatters; OnUnfocused = ailmentTrigger.onUnfocused; ExhaustionMatters = ailmentTrigger.exhaustionMatters; OnExhausted = ailmentTrigger.onExhausted; UpsetMatters = ailmentTrigger.upsetMatters; OnUpset = ailmentTrigger.onUpset; ThresholdValue = ailmentTrigger.thresholdValue; ThresholdPersistent = ailmentTrigger.thresholdPersistent; PerentChance = ailmentTrigger.perentChance; ExecuteLimit = ailmentTrigger.executeLimit; DefaultDisabled = ailmentTrigger.defaultDisabled; Audibalized = ailmentTrigger.audibalized; Verbalized = ailmentTrigger.verbalized; VerbalizedIndex = ailmentTrigger.verbalizedIndex; StepsProcessType = ailmentTrigger.stepsProcessType; if (ailmentTrigger.steps != null) { StepInfos = ailmentTrigger.steps.Select(x => new AilmentStepInfo(x)).ToList(); } }