public void Save() { if (this is IStorable controller) { Prefs.AddGameController(controller); } else { throw new InvalidOperationException($"Failed to save {GetType()}"); } }