public void AddNewQuestion(QuestionDataBase dataBase, Question newQuestion) { QuestionDataBase dataBaseToEdit = QuestionDataBases.Find(dbase => dbase.Name == dataBase.Name); int index = QuestionDataBaseNames.FindIndex(name => name == dataBaseToEdit.Name); if (dataBaseToEdit.Questions.Exists(q => q.QuestionName == newQuestion.QuestionName)) { int existingQuestionIndex = dataBaseToEdit.Questions.FindIndex(q => q.QuestionName == newQuestion.QuestionName); dataBaseToEdit.Questions[existingQuestionIndex] = newQuestion; } else { dataBaseToEdit.Questions.Add(newQuestion); } PlayerPrefsManager.SaveQuestionState(index, newQuestion); LocalDataManager.SaveQuestion(dataBaseToEdit, newQuestion); }