public static ISystem CreateSystem(this Pools pools, IMultiReactiveSystem system) { throw new EntitasException( "pools.CreateSystem(" + system + ") can not infer which pool to use to create a ReactiveSystem!", "pools.CreateSystem(system) only supports IInitializeSystem, IExecuteSystem, ICleanupSystem, ITearDownSystem and IEntityCollectorSystem." ); }
/// Recommended way to create systems in general: pool.CreateSystem<RenderPositionSystem>(); public ReactiveSystem(Pool pool, IMultiReactiveSystem subSystem) : this(pool, subSystem, subSystem.triggers) { }
/// Recommended way to create systems in general: /// pool.CreateSystem(new MySystem()); public ReactiveSystem(Pool pool, IMultiReactiveSystem subSystem) : this(subSystem, createEntityCollector(pool, subSystem.triggers)) { }
public ReactiveSystem(Pool pool, IMultiReactiveSystem subSystem) : this(pool, subSystem, subSystem.triggers, subSystem.eventTypes) { }
/// Recommended way to create systems in general: pool.CreateSystem<RenderPositionSystem>(); public ReactiveSystem(Pool pool, IMultiReactiveSystem subSystem) : this(subSystem, createGroupObserver(pool, subSystem.triggers)) { }
/// Recommended way to create systems in general: pool.CreateSystem(new MySystem()); public ReactiveSystem(Pool pool, IMultiReactiveSystem subSystem) : this(subSystem, createGroupObserver(pool, subSystem.triggers)) { }
/// Recommended way to create systems in general: pool.CreateSystem(new MySystem()); public ReactiveSystem(Pool <T> pool, IMultiReactiveSystem <T> subSystem) : this(subSystem, CreateGroupObserver(pool, subSystem.Triggers)) { }