using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
namespace Pf2eModel.Model.Structure.AncestryRelation;
///
/// Элемент набора повышений атрибутов для родословной.
///
public class AncestryBoost
{
///
/// Идентификатор элемента.
///
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column(Order = 1)]
public int Id { get; set; }
///
/// Идентификатор родословной, к которой относится этот элемент.
///
[Column(Order = 2)]
[Comment("Идентификатор родословной")]
public int AncestryId { get; set; }
///
/// Указывает, является ли этот элемент повышением атрибута. Если false - это снижение атрибута.
///
[Column(Order = 3)]
[Comment("Флаг повышения/снижения")]
public bool Boost { get; set; } = true;
///
/// Значение атрибута, которое повышается или понижается в этом элементе набора повышений атрибутов.
///
[Column(Order = 4)]
[Comment("Значение атрибута")]
public Enum.AttributeValues Value { get; set; }
///
/// Родословная, к которой относится этот элемент набора повышений атрибутов.
///
[JsonIgnore]
public Ancestry Ancestry { get; set; } = null!;
}