Для классов, наследующих от MonoBehaviour, лучше не использовать конструктор. Во-первых, он будет вызываться и в инспекторе до запуска игры. Во-вторых, после запуска он вызовется дважды, я не знаю, с чем это связано, но не суть. Как вам уже подсказали, надо использовать Start/Awake. А для создания наследников класса MonoBehaviour использовать AddComponent для "прикрепления" на объект и Instantiate для создания объектов. Сами по себе, не используясь на сцене, эти классы не должны существовать.