Files

80 lines
2.3 KiB
C#

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Pf2eModel.Model.Base;
using Pf2eModel.Model.Common;
using Pf2eModel.Model.Enum;
using Pf2eModel.Model.Structure.DeityRelation;
namespace Pf2eModel.Model.Structure;
/// <summary>
/// Божество.
/// </summary>
[EntityOfType(EntityType.Deity)]
public class Deity : IEntity
{
/// <inheritdoc/>
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[Column(Order = 1)]
[Comment("Идентификатор")]
public int Id { get; set; }
/// <inheritdoc/>
public Entity Entity { get; set; } = null!;
/// <summary>
/// Тип божества.
/// </summary>
[Column(Order = 2)]
[Comment("Тип божества")]
public DeityCategory Category { get; set; }
/// <summary>
/// Тип божественный силы.
/// </summary>
[Column(Order = 3)]
[Comment("Тип божественной силы")]
public DeityFonts Fonts { get; set; }
/// <summary>
/// Тип освящения.
/// </summary>
[Column(Order = 4)]
[Comment("Тип освящения")]
public DeitySanctification Sanctification { get; set; }
/// <summary>
/// Обязательное освящение.
/// </summary>
[Column(Order = 5)]
[Comment("Обязательное освящение")]
public bool SanctificationMust { get; set; }
/// <summary>
/// Аттрибуты божества.
/// </summary>
public ICollection<DeityAttribute> DeityAttributes { get; set; } = new List<DeityAttribute>();
/// <summary>
/// Домены божества.
/// </summary>
public ICollection<DeityDomain> DeityDomains { get; set; } = new List<DeityDomain>();
/// <summary>
/// Заклинания божества.
/// </summary>
public ICollection<DeitySpell> DeitySpells { get; set; } = new List<DeitySpell>();
/// <summary>
/// Оружия божества.
/// </summary>
public ICollection<DeityWeapon> DeityWeapons { get; set; } = new List<DeityWeapon>();
/// <summary>
/// Навыки божества.
/// </summary>
public ICollection<Training> Skills { get; set; } = new List<Training>();
}