Документирование и небольшой рефакторинг модели.

This commit is contained in:
2025-05-11 00:31:15 +04:00
parent 1a977ee988
commit 3c65274b45
64 changed files with 1960 additions and 554 deletions
+27 -2
View File
@@ -1,28 +1,44 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Pf2eModel.Model.Base;
using Pf2eModel.Model.Enum;
using Pf2eModel.Model.Structure.FeatRelation;
namespace Pf2eModel.Model.Structure;
/// <summary>
/// Способность.
/// </summary>
[EntityOfType(EntityType.Feat)]
public class Feat : 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 = 3)]
public ActionCategory Category { get; set; }
[Comment("Категория способности")]
public FeatCategory Category { get; set; }
/// <summary>
/// Уровень способности.
/// </summary>
[Column(Order = 4)]
[Comment("Уровень способности")]
public int Level { get; set; }
[Column(Order = 5)]
[Comment("Количество действий")]
public int? Actions { get; set; } = null;
[Column(Order = 6)]
@@ -37,11 +53,20 @@ public class Feat : IEntity
[Column(Order = 9)]
public bool IsPassive { get; set; } = false;
/// <summary>
/// Дополнительная информация.
/// </summary>
[Column(Order = 10)]
// ReSharper disable once EntityFramework.ModelValidation.UnlimitedStringLength
[Comment("Дополнительная информация")]
public string? Extra { get; set; }
/// <summary>
/// Архетипы, которые могут использовать эту способность.
/// </summary>
public ICollection<Archetype> Archetypes { get; set; } = [];
/// <summary>
/// Требования к получению способности.
/// </summary>
public ICollection<FeatPrerequisite> FeatPrerequisites { get; set; } = [];
}