Basic projectile implementation (put sample version in FilthEaterModelView)

This commit is contained in:
2025-10-23 18:50:05 -07:00
parent bc161a58b3
commit f5360adbf1
36 changed files with 1124 additions and 106 deletions

View File

@@ -8,10 +8,6 @@ public interface IAttackComponent
public IAutoProp<int> MaximumAttack { get; }
public IAutoProp<int> BonusAttack { get; }
public int TotalAttack { get; }
public void Restore(int restoreAmount);
public void Reduce(int reduceAmount);
@@ -19,8 +15,4 @@ public interface IAttackComponent
public void SetAttack(int attack);
public void RaiseMaximumAttack(int raiseAmount);
public void RaiseBonusAttack(int raiseAmount);
public void ResetBonusAttack();
}

View File

@@ -8,10 +8,6 @@ public interface IDefenseComponent
public IAutoProp<int> MaximumDefense { get; }
public IAutoProp<int> BonusDefense { get; }
public int TotalDefense { get; }
public void Restore(int restoreAmount);
public void Reduce(int reduceAmount);
@@ -19,8 +15,4 @@ public interface IDefenseComponent
public void SetDefense(int attack);
public void RaiseMaximumDefense(int raiseAmount);
public void RaiseBonusDefense(int raiseAmount);
public void ResetBonusDefense();
}

View File

@@ -1,4 +1,5 @@
using Chickensoft.Collections;
using Zennysoft.Ma.Adapter.Entity;
namespace Zennysoft.Ma.Adapter;
public interface IEquipmentComponent
@@ -25,4 +26,6 @@ public interface IEquipmentComponent
public int BonusLuck { get; }
public ElementalResistanceSet ElementalResistance { get; }
}

View File

@@ -18,5 +18,15 @@
{ 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]);
}
}
}

View File

@@ -1,4 +1,5 @@
using Chickensoft.Introspection;
using Zennysoft.Ma.Adapter.Entity;
namespace Zennysoft.Ma.Adapter;
@@ -14,4 +15,6 @@ public abstract partial class EquipableItem : InventoryItem
public virtual int BonusVT { get; }
public virtual int BonusLuck { get; }
public virtual ElementalResistanceSet ElementalResistance { get; } = new ElementalResistanceSet(0, 0, 0, 0, 0);
}