29 lines
590 B
C#
29 lines
590 B
C#
using Chickensoft.Collections;
|
|
|
|
namespace Zennysoft.Ma.Adapter;
|
|
|
|
public interface IExperiencePointsComponent : IEntityComponent
|
|
{
|
|
public IAutoProp<int> CurrentExp { get; }
|
|
|
|
public IAutoProp<int> ExpToNextLevel { get; }
|
|
|
|
public IAutoProp<double> ExpGainRate { get; }
|
|
|
|
public IAutoProp<int> Level { get; }
|
|
|
|
public void ModifyExpGainRate(double newRate);
|
|
|
|
public void Gain(int baseExpGain);
|
|
|
|
public void GainUnmodified(int flateRateExpGain);
|
|
|
|
public void LevelUp();
|
|
|
|
public void LevelDown();
|
|
|
|
public event Action PlayerLevelUp;
|
|
|
|
public event Action PlayerLevelDown;
|
|
}
|