Создаем объект и добавяем ему скрипт PlayerDetails.cs:
using UnityEngine;
[System.Serializable]
public class PlayerDetails
{
public int myInt;
public float myFloat;
public GameObject myGO;
public Transform myTransform;
}
public class GenericListsExample : MonoBehaviour
{
public PlayerDetails[] players;
}
Если теперь посмотреть на него в окне Инспектора, то в этот скрипт будет выглядеть так:
Как видно на скриншоте, список элементов массива Players отображается как Element 0, Element 1 и т.д.
Можно немного изменить скрипт и добавить public string Name:
using UnityEngine;
[System.Serializable]
public class PlayerDetails
{
public string Name;
public int myInt;
public float myFloat;
public GameObject myGO;
public Transform myTransform;
}
public class GenericListsExample : MonoBehaviour
{
public PlayerDetails[] players;
}
В Инспекторе будет добавлено поле Name, сейчас оно пустое, а элементы массива все также именуются как Element 0, Element 1 и т.д.:
Если в поле Name вписать текст, то автоматически изменится и название элемента массива:
Необходимо, чтобы public string Name было в начале списка!
Точно также можно изменять название элементов списка (System.Collections.Generic) List, код будет таким:
using System.Collections.Generic;
using UnityEngine;
[System.Serializable]
public class PlayerDetails
{
public string Name;
public int myInt;
public float myFloat;
public GameObject myGO;
public Transform myTransform;
}
public class GenericListsExample : MonoBehaviour
{
public List<PlayerDetails> playersList;
}
DenTNT недавно публиковал (посмотреть все)
- EVE-Online: Фильтры каналов - 23.11.2024
- Не приходит СМС для авторизации на сайте Госуслуги - 01.11.2024
- VSCode: Найти и удалить элементы xml - 29.10.2024