Add LightFootedEffect and StatusManager for player capabilities management
This commit is contained in:
@@ -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()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3569c07e1bba489d8835de24488cfef8
|
||||
timeCreated: 1765575047
|
||||
Reference in New Issue
Block a user