Большая пачка обновлений

This commit is contained in:
2025-04-21 08:36:46 +04:00
parent be8963a073
commit beb61b7449
39 changed files with 1068 additions and 301 deletions
+6 -2
View File
@@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Pf2eModel.Model.Common;
@@ -12,5 +13,8 @@ public partial class Training
[Column(Order = 2)]
[MaxLength(Pf2eDbContext.NameLength)]
public string Key { get; set; } = null!;
public string Name { get; set; } = null!;
[Column(Order = 3)]
public TrainingType Type { get; set; }
}
-24
View File
@@ -1,24 +0,0 @@
using NpgsqlTypes;
namespace Pf2eModel.Model.Enum;
public enum ActionType
{
[PgName("none")]
None,
[PgName("1_action")]
SingleAction,
[PgName("2_actions")]
TwoActions,
[PgName("3_actions")]
ThreeActions,
[PgName("1-3_actions")]
SingleToThreeActions,
[PgName("1-2_actions")]
SingleToTwoActions,
}
+3
View File
@@ -16,6 +16,9 @@ public enum EntityType
[PgName("ancestry")]
Ancestry,
[PgName("archetype")]
Archetype,
[PgName("background")]
Background,
+24
View File
@@ -0,0 +1,24 @@
using NpgsqlTypes;
namespace Pf2eModel.Model.Enum;
public enum SpellTradition
{
[PgName("none")]
None,
[PgName("divine")]
Divine,
[PgName("occult")]
Occult,
[PgName("arcane")]
Arcane,
[PgName("primal")]
Primal,
[PgName("all")]
All,
}
+23
View File
@@ -0,0 +1,23 @@
using NpgsqlTypes;
namespace Pf2eModel.Model.Enum;
public enum TrainingType
{
[PgName("perception")]
Perception,
[PgName("skill")]
Skill,
[PgName("lore")]
Lore,
[PgName("weapon")]
Weapon,
[PgName("armor")]
Armor,
[PgName("save")]
Save,
}
-3
View File
@@ -12,9 +12,6 @@ public partial class Action : IEntity
[Column(Order = 1)]
public int Id { get; set; }
[Column(Order = 2)]
public ActionType Type { get; set; }
[Column(Order = 3)]
public int? Actions { get; set; } = null;
@@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Newtonsoft.Json;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Pf2eModel.Model.Structure.AncestryRelation;
@@ -19,5 +20,6 @@ public partial class AncestryBoost
[Column(Order = 4)]
public Enum.AttributeValues Value { get; set; }
[JsonIgnore]
public virtual Ancestry Ancestry { get; set; } = null!;
}
+32
View File
@@ -0,0 +1,32 @@
using Pf2eModel.Model.Base;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Pf2eModel.Model.Structure;
public class Archetype : IEntity
{
[Key]
[Column(Order = 1)]
public int Id { get; set; }
public Entity Entity { get; set; } = null!;
[Column(Order = 2)]
public int Level { get; set; }
[Column(Order = 3)]
public int DedicationFeatId { get; set; }
[Column(Order = 4)]
public string? Extra { get; set; }
public Feat DedicationFeat { get; set; } = null!;
public virtual ICollection<Feat> Feats { get; set; } = [];
}
@@ -1,4 +1,5 @@
using Pf2eModel.Model.Enum;
using Newtonsoft.Json;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
@@ -7,7 +8,7 @@ namespace Pf2eModel.Model.Structure.BackgroundRelation;
public partial class BackgroundBoost
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column(Order = 1)]
public int Id { get; set; }
@@ -17,5 +18,6 @@ public partial class BackgroundBoost
[Column(Order = 3)]
public AttributeValues Attribute { get; set; }
[JsonIgnore]
public virtual Background Background { get; set; } = null!;
}
@@ -1,4 +1,5 @@
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
using Pf2eModel.Model.Base;
using System.ComponentModel.DataAnnotations.Schema;
@@ -16,6 +17,7 @@ public partial class BackgroundItem
[Column(Order = 3)]
public int? Level { get; set; }
[JsonIgnore]
public virtual Background Background { get; set; } = null!;
public virtual Entity Entity { get; set; } = null!;
@@ -1,4 +1,5 @@
using Pf2eModel.Model.Common;
using Newtonsoft.Json;
using Pf2eModel.Model.Common;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
@@ -21,6 +22,7 @@ public partial class BackgroundTraining
[Column(Order = 4)]
public TrainingStage Level { get; set; }
[JsonIgnore]
public virtual Background Background { get; set; } = null!;
public virtual Training Training { get; set; } = null!;
+3 -1
View File
@@ -13,7 +13,6 @@ public partial class Class : IEntity
[Column(Order = 1)]
public int Id { get; set; }
[Column(Order = 2)]
public Entity Entity { get; set; } = null!;
[Column(Order = 3)]
@@ -26,6 +25,9 @@ public partial class Class : IEntity
public bool Spellcasting { get; set; }
[Column(Order = 6)]
public SpellTradition Tradition { get; set; }
[Column(Order = 7)]
public int AdditionalTrainedSkills { get; set; }
public virtual ICollection<ClassKeyAbility> ClassKeyAbilities { get; set; } = [];
@@ -1,4 +1,5 @@
using Pf2eModel.Model.Enum;
using Newtonsoft.Json;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
@@ -17,5 +18,6 @@ public partial class ClassKeyAbility
[Column(Order = 3)]
public AttributeValues Value { get; set; }
[JsonIgnore]
public virtual Class Class { get; set; } = null!;
}
@@ -1,4 +1,5 @@
using Pf2eModel.Model.Base;
using Newtonsoft.Json;
using Pf2eModel.Model.Base;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
@@ -23,6 +24,7 @@ public partial class ClassProgression
[Column(Order = 5)]
public int? EntityId { get; set; }
[JsonIgnore]
public virtual Class Class { get; set; } = null!;
public virtual Entity? Entity { get; set; }
@@ -1,4 +1,6 @@
using Pf2eModel.Model.Common;
using Newtonsoft.Json;
using Pf2eModel.Model.Common;
using Pf2eModel.Model.Enum;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
@@ -22,8 +24,9 @@ public partial class ClassTraining
public string? Name { get; set; }
[Column(Order = 5)]
public int Stage { get; set; }
public TrainingStage Stage { get; set; }
[JsonIgnore]
public virtual Class Class { get; set; } = null!;
public virtual Training? Training { get; set; }
+12 -11
View File
@@ -16,33 +16,34 @@ public partial class Feat : IEntity
public Entity Entity { get; set; } = null!;
[Column(Order = 2)]
public ActionType Type { get; set; }
[Column(Order = 3)]
public ActionCategory Category { get; set; }
[Column(Order = 4)]
public int? Actions { get; set; }
[Column(Order = 5)]
public int Level { get; set; }
[Column(Order = 5)]
public int? Actions { get; set; } = null;
[Column(Order = 6)]
public int? LevelTaken { get; set; }
public int? MaxActions { get; set; } = null;
[Column(Order = 7)]
public int? MaxTakable { get; set; }
public bool IsReaction { get; set; } = false;
[Column(Order = 8)]
[MaxLength(255)]
public string? Location { get; set; }
public bool IsFreeAction { get; set; } = false;
[Column(Order = 9)]
public bool? OnlyLevel1 { get; set; }
public bool IsPassive { get; set; } = false;
[Column(Order = 10)]
public int ArchetypeId { get; set; }
[Column(Order = 11)]
public string? Extra { get; set; }
public Archetype Archetype { get; set; } = null!;
public virtual ICollection<FeatPrerequisite> FeatPrerequisites { get; set; } = [];
}