using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; using Pf2e.Database.Model.Base; using Pf2e.Database.Model.Enum; using Pf2e.Database.Model.Structure.AncestryRelation; namespace Pf2e.Database.Model.Structure; /// /// Родословная. /// [EntityOfType(EntityType.Ancestry)] public class Ancestry : 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 SizeEnum[] Size { get; set; } = []; /// /// Количество очков здоровья. /// [Column(Order = 3)] [Comment("Количество очков здоровья")] public int Hp { get; set; } /// /// Скорость передвижения. /// [Column(Order = 4)] [Comment("Скорость передвижения")] public int Speed { get; set; } /// /// Тип зрения. /// [Column(Order = 5)] [Comment("Тип зрения")] public VisionEnum VisionEnum { get; set; } = VisionEnum.Normal; /// /// Коллекция повышениий аттрибутов. /// public ICollection AncestryBoosts { get; set; } = []; /// /// Коллекция сущностей родословной. /// public ICollection AncestryItems { get; set; } = []; /// /// Коллекция языков родословной. /// public ICollection AncestryLanguages { get; set; } = []; /// /// Коллекция наследий. /// public ICollection Heritages { get; set; } = []; }