Add LightFootedEffect and StatusManager for player capabilities management

This commit is contained in:
2025-12-12 22:35:39 +01:00
parent 3774fb9900
commit 1cfcd09928
11 changed files with 140 additions and 2 deletions

View File

@@ -0,0 +1,33 @@
namespace Core.Domain.Status.Effects
{
public class LightFootedEffect : IStatusEffect
{
private float _duration;
public bool IsExpired => _duration <= 0;
public LightFootedEffect(float duration)
{
_duration = duration;
}
public void Tick(float deltaTime)
{
_duration -= deltaTime;
}
public void ModifyCapabilities(ref PlayerCapabilities caps)
{
caps.CanTriggerDecay = false;
caps.SpeedMultiplier = 1.2f;
}
public void OnApply()
{
}
public void OnRemove()
{
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 3569c07e1bba489d8835de24488cfef8
timeCreated: 1765575047