public Params(BaseModifierConfig baseModifierConfig, float delayToApply, float projectileAge, Skill parentSkill) { this.baseModifierConfig = baseModifierConfig; this.delayToApply = delayToApply; this.projectileAge = projectileAge; this.parentSkill = parentSkill; }
public ModifierInfo CreateFrom(Skill parentSkill, BaseModifierConfig baseModifierConfig, Environment environment, float projectileAge = 0) { FrameAndSecondsConverter _30fps = FrameAndSecondsConverter._30Fps; float delayToApply = _30fps.FramesToSeconds(baseModifierConfig.delayToApplyInFrames); ModifierType modifierType = baseModifierConfig.ShowModifierType(); if (!subFactories.ContainsKey(modifierType)) { throw new Exception("Missing logic to create modifier info of type " + modifierType); } Params p = new Params( baseModifierConfig, delayToApply, projectileAge, parentSkill ); return(subFactories[modifierType](p)); }