public CharacterClass(ClassType classType, int level, IClassModifier modifier) { ClassType = classType; Level = level; Modifier = modifier; Saves = new ClassSaves(modifier.FortitudeSaveType, modifier.ReflexSaveType, modifier.WillSaveType, Level); Attack = new Attack(_attackBonusses[modifier.AttackBonusType], level); }
public void AcceptOnMultiClass(IClassModifier modifier) { if (Experience.Level <= Experience.MaxLevel) { modifier.ModifyOnMultiClass(this); } else { throw new InvalidOperationException("The character must be able to level to be modified by ModifyOnMultiClass"); } }