namespace AlicizaX { public interface IModule { protected internal void Dispose(); } public interface IModuleAwake { protected internal void Awake(); } public interface IExecuteSystem { abstract int Priority { get; } } public interface IModuleUpdate : IExecuteSystem { protected internal void Update(float elapseSeconds, float realElapseSeconds); } public interface IModuleLateUpdate : IExecuteSystem { protected internal void LateUpdate(); } public interface IModuleFixedUpdate : IExecuteSystem { protected internal void FixedUpdate(); } public interface IModuleDrawGizmos : IExecuteSystem { protected internal void DrawGizmos(); } public interface IModuleGUI : IExecuteSystem { protected internal void OnGUI(); } }