using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; using Pf2eModel.Model.Base; using Pf2eModel.Model.Enum; using Pf2eModel.Model.Structure.ClassRelation; namespace Pf2eModel.Model.Structure; /// /// Класс. /// [EntityOfType(EntityType.Class)] public class Class : IEntity { /// [Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] [Column(Order = 1)] [Comment("Идентификатор")] public int Id { get; set; } /// public Entity Entity { get; set; } = null!; /// /// Количество очков здоровья. /// [Column(Order = 2)] [Comment("Количество очков здоровья")] public int Hp { get; set; } /// /// Флаг, указывающий на то, что класс является заклинательным. /// [Column(Order = 3)] [Comment("Заклинатель?")] public bool Spellcasting { get; set; } /// /// Традиция заклинаний класса. /// [Column(Order = 6)] [Comment("Традиция заклинаний")] public SpellTradition? Tradition { get; set; } = null; /// /// Количество дополнительных навыков. /// [Column(Order = 7)] [Comment("Дополнительные навыки")] public int AdditionalTrainedSkills { get; set; } /// /// Аттрибуты класса. /// public virtual ICollection ClassKeyAbilities { get; set; } = []; /// /// Прогрессия класса. /// public virtual ICollection ClassProgressions { get; set; } = []; /// /// Навыки класса. /// public virtual ICollection ClassTrainings { get; set; } = []; /// /// Группы подклассов. /// public virtual ICollection SubclassGroups { get; set; } = []; }