33 lines
1.4 KiB
C#
33 lines
1.4 KiB
C#
namespace Zennysoft.Ma.Adapter.Entity
|
|
{
|
|
public record ElementalResistanceSet
|
|
{
|
|
public Dictionary<ElementType, double> ElementalResistance { get; }
|
|
|
|
public static ElementalResistanceSet None => new ElementalResistanceSet(0, 0, 0, 0, 0);
|
|
|
|
public ElementalResistanceSet(double aeolicResistance, double hydricResistance, double igneousResistance, double ferrumResistance, double telluricResistance)
|
|
{
|
|
ElementalResistance = new Dictionary<ElementType, double>
|
|
{
|
|
{ ElementType.None, 0 },
|
|
{ ElementType.Aeolic, aeolicResistance },
|
|
{ ElementType.Hydric, hydricResistance },
|
|
{ ElementType.Igneous, igneousResistance },
|
|
{ ElementType.Ferrum, ferrumResistance },
|
|
{ ElementType.Telluric, telluricResistance },
|
|
};
|
|
}
|
|
|
|
public static ElementalResistanceSet operator +(ElementalResistanceSet left, ElementalResistanceSet right)
|
|
{
|
|
return new ElementalResistanceSet(
|
|
left.ElementalResistance[ElementType.Aeolic] + right.ElementalResistance[ElementType.Aeolic],
|
|
left.ElementalResistance[ElementType.Hydric] + right.ElementalResistance[ElementType.Hydric],
|
|
left.ElementalResistance[ElementType.Igneous] + right.ElementalResistance[ElementType.Igneous],
|
|
left.ElementalResistance[ElementType.Ferrum] + right.ElementalResistance[ElementType.Ferrum],
|
|
left.ElementalResistance[ElementType.Telluric] + right.ElementalResistance[ElementType.Telluric]);
|
|
}
|
|
}
|
|
}
|