namespace TEngine { /// /// 实体接口。 /// public interface IEntity { /// /// 获取实体编号。 /// int Id { get; } /// /// 获取实体资源名称。 /// string EntityAssetName { get; } /// /// 获取实体实例。 /// object Handle { get; } /// /// 获取实体所属的实体组。 /// IEntityGroup EntityGroup { get; } /// /// 实体初始化。 /// /// 实体编号。 /// 实体资源名称。 /// 实体所属的实体组。 /// 是否是新实例。 /// 用户自定义数据。 void OnInit(int entityId, string entityAssetName, IEntityGroup entityGroup, bool isNewInstance, object userData); /// /// 实体回收。 /// void OnRecycle(); /// /// 实体显示。 /// /// 用户自定义数据。 void OnShow(object userData); /// /// 实体隐藏。 /// /// 是否是关闭实体管理器时触发。 /// 用户自定义数据。 void OnHide(bool isShutdown, object userData); /// /// 实体附加子实体。 /// /// 附加的子实体。 /// 用户自定义数据。 void OnAttached(IEntity childEntity, object userData); /// /// 实体解除子实体。 /// /// 解除的子实体。 /// 用户自定义数据。 void OnDetached(IEntity childEntity, object userData); /// /// 实体附加子实体。 /// /// 被附加的父实体。 /// 用户自定义数据。 void OnAttachTo(IEntity parentEntity, object userData); /// /// 实体解除子实体。 /// /// 被解除的父实体。 /// 用户自定义数据。 void OnDetachFrom(IEntity parentEntity, object userData); /// /// 实体轮询。 /// /// 逻辑流逝时间,以秒为单位。 /// 真实流逝时间,以秒为单位。 void OnUpdate(float elapseSeconds, float realElapseSeconds); } }