protected virtual void Start() { SaveDataBaseClass[] saveDataComponents = gameObject.GetComponents <SaveDataBaseClass>(); foreach (var dataComponent in saveDataComponents) { if (dataComponent.data != null) { data = dataComponent.data; break; } } if (data == null) { data = new DataHolder(); } if (saveHandler == null) { saveHandler = FindObjectOfType <SaveHandler>(); if (saveHandler == null) { Debug.LogError("You need a SaveHandler in the world!"); } } saveHandler.AddSaveData(this); }