Я делаю многопользовательскую игру-викторину, и я использовал Scriptableobject для хранения данных своей викторины. Теперь я хотел бы изменить его и использовать Firebase, но я упал с ним.
У меня есть скриптовый объект для хранения моих вопросов: Код (CSharp):
[CreateAssetMenu(fileName = "QuestionsTF", menuName = "QuestionTF")]
public class QuestionTF : ScriptableObject
{
public List<Question> questionstf;
}
И Gamemanager сценарий для обработки этого:
[SerializeField]
private List<QuestionTF> quizDB;
void Startgame(int index)
{
//int index =0;
unAnswered = new List<Question>();
for (int i = 0; i < quizDB[index].questionstf.Count; i++)
{
unAnswered.Add(quizDB[index].questionstf[i]);
}
SetCurrentquestion();
}
Я также использую управление категориями: Код (CSharp):
void Awake()
{
for (int i = 0; i < categorybtn.Count; i++)
{
Button localbtn = categorybtn[i];
localbtn.onClick.AddListener(() => Click(localbtn));
}
}
private void Click(Button btn)
{
switch (btn.name)
{
case "Kategoria 1":
Startgame(0);
Debug.Log("start");
categoryPanel.SetActive(false);
break;
case "Kategoria 2":
Startgame(1);
categoryPanel.SetActive(false);
break;
case "Kategoria 3":
Startgame(2);
categoryPanel.SetActive(false);
break;
}
Я уже установил соединение с БД - я могу добавить новый вопросы, но у меня проблема с их отображением. Есть ли способ напрямую заменить ScriptableObject? Я попытался использовать JsonUtility.From.JsonOverwritte, но я не могу использовать JSON и список ... Я думаю, что это довольно просто, но после столь длительного использования этого я просто не вижу, как это сделать сейчас (кстати, могу Я использую это также для создания новых вопросов в SO? Я нигде не мог найти эту информацию)
Спасибо