using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
///
/// Поставляет описания настроек по ID настройки
///
public class SettingDescriptionProvider : MonoBehaviour
{
public List settingDescriptions;
public GameObject defaultDescription;
public GameObject GetDescription(string id)
{
//Проверки заполнения
if (settingDescriptions == null)
{
Debug.LogError("Не заданы описания настроек"); return null;
}
if (defaultDescription == null)
{
Debug.LogError("Не задано описание настройки по умолчанию"); return null;
}
//поиск по id
GameObject foundDescription = null;
for (int i = 0; i < settingDescriptions.Count; i++)
{
if (settingDescriptions[i].id == id)
{
foundDescription = settingDescriptions[i].descriptionPrefab;
break;
}
}
//возврат
if(foundDescription == null)
{
Debug.LogError($"Описание настройки с id: {id} не найдено. Возврат дефолтного значения");
return defaultDescription;
}
return foundDescription;
}
[Serializable]
public class SettingDescription
{
public string id;
public GameObject descriptionPrefab;
}
}