Files
RobustToolbox/Robust.Shared/GameObjects/Components/IComponentDependencyManager.cs
T
AcruidandGitHub f7e8178736 Added new ComponentEvents system in IEventBus. (#1601)
* Added new ComponentEventBus, combined it with IEventBus.

* Removed all traces of IEntity from ComponentDependencies.
Removed IEntityManager dependency from ComponentManager.

* Added entity create/delete events to IEntityManager.

* ComponentEvents now use EntitySystemMessages instead of their custom ComponentEvent class.

* Component events are now just overloads of entity events.

* Removed obsolete EntitySystemMessage, now everything uses the base EntityEventArgs.

* Add a bool argument for if the message should be broadcast as well as directed.
Fix ordering and init issues of events in EntityManager.

* Changed names from Component/Entity events to Directed/Broadcast.

* Fix bugs and unit tests.
2021-03-09 11:02:24 -08:00

19 lines
745 B
C#

namespace Robust.Shared.GameObjects
{
public interface IComponentDependencyManager
{
/// <summary>
/// Called when newComp has just been added into entity.
/// </summary>
/// <param name="eUid">Entity in which newComp was added</param>
/// <param name="newComp">Added component</param>
public void OnComponentAdd(EntityUid eUid, IComponent newComp);
/// <summary>
/// Called when newComp has just been removed from entity.
/// </summary>
/// <param name="eUid">Entity out of which newComp was removed</param>
/// <param name="removedComp">Removed component</param>
public void OnComponentRemove(EntityUid eUid, IComponent removedComp); }
}