public EventTables(IEntityManager entMan)
            {
                _entMan = entMan;
                _comFac = entMan.ComponentManager.ComponentFactory;

                _entMan.EntityAdded   += OnEntityAdded;
                _entMan.EntityDeleted += OnEntityDeleted;

                _entMan.ComponentManager.ComponentAdded   += OnComponentAdded;
                _entMan.ComponentManager.ComponentRemoved += OnComponentRemoved;

                _eventTables      = new();
                _subscriptions    = new();
                _subscriptionLock = false;
            }
 /// <summary>
 /// Constructs a new instance of <see cref="EntityEventBus"/>.
 /// </summary>
 /// <param name="entMan">The entity manager to watch for entity/component events.</param>
 public EntityEventBus(IEntityManager entMan)
 {
     _entMan      = entMan;
     _eventTables = new EventTables(_entMan);
 }
Exemplo n.º 3
0
 public void Dispose()
 {
     _eventTables.Dispose();
     _eventTables = null !;
     _entMan      = null !;
 }