using System; using System.Collections.Generic; using System.Numerics; public interface IHasBuff { IReadOnlyList Buffs { get; } } public interface IBytesConverter { byte[] GetBytes(); void SetBytes(byte[] bytes, int offset = 0); int GetSize(); } public interface IOnPropertyChanged { event Action OnPropertyChanged; } public interface IOnCreate { void OnCreate(T effect); } public interface IUpdatable { void Update(float deltaTime); } public interface IBattleEntity { bool IsBattleAvail(); void GetDamage(BigInteger atk, float critDmgRate, int critRate, int testID = -1); } public interface IOwnedComponent { T Owner { get; } void Initialize(T owner); }