private void InstantiateSystemsManager() { SystemsManager = Instantiate(new GameObject()); SystemsManager.name = "SystemsManager"; movementSystem = SystemsManager.AddComponent <MovementSystem>(); keyboardInputSystem = SystemsManager.AddComponent <KeyboardInputSystem>(); mouseInputSystem = SystemsManager.AddComponent <MouseInputSystem>(); factorySystem = SystemsManager.AddComponent <FactorySystem>(); lSystemSystem = SystemsManager.AddComponent <LSystemSystem>(); lSystemFactorySystem = SystemsManager.AddComponent <LSystemFactorySystem>(); entityPool = SystemsManager.AddComponent <EntityPool>(); entityPool.InitialiseEntitiesList(); movementSystem.entityPool = entityPool; keyboardInputSystem.entityPool = entityPool; mouseInputSystem.entityPool = entityPool; factorySystem.entityPool = entityPool; lSystemSystem.entityPool = entityPool; lSystemFactorySystem.entityPool = entityPool; }