Restructure Sigil implementation, add all sigils to debug menu

This commit is contained in:
2026-06-04 14:59:35 -07:00
parent 6b7bbd71af
commit b9c1058566
8 changed files with 171 additions and 79 deletions
+92 -2
View File
@@ -1,4 +1,6 @@
using Zennysoft.Ma;
using Godot;
using Zennysoft.Ma;
using Zennysoft.Ma.Adapter;
public class SigilComponent : ISigilComponent
{
@@ -6,6 +8,94 @@ public class SigilComponent : ISigilComponent
public void Reset()
{
Sigil = new Sigil();
Sigil = new NoneSigil();
}
}
public partial class NoneSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.None;
}
public partial class AeolicSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Aeolic;
}
public partial class IgneousSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Igneous;
}
public partial class TelluricSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Telluric;
}
public partial class HydricSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Hydric;
}
public partial class FerrumSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Ferrum;
}
public partial class SanktaSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Sankta;
}
public partial class ShuraSigil : ISigil
{
public double AttackModifier { get; set; }
public double DefenseModifier { get; set; }
public int HealthModifier { get; set; }
public int VTModifier { get; set; }
public double LuckModifier { get; set; }
public double ElementalModifier { get; set; }
public ElementType ElementType { get; } = ElementType.Shura;
}