Изучаю .Проблема переменной id_player, не обновляется внутри массива. Просьба подсказать
- Есть одномерный массив int инициализируемый при старте в пустом gameobjecte на сцене.testArray.sc
void Start()
{
test_list = new int[3];
for (int i = 0; i < 3; i++)
{
test_list[i] = 0;
print(testlist[i]);
}
}
- Так же на сцене есть три объекта test_1, test_2, test_3 - объекты префабы, на каждом висит скрипт обрабатывающий клик мышью по объекту.
public class test_cell : MonoBehaviour
{
public GameObject test;
public int id_player;
public int id_test;
void Start()
{
id_player = Random.Range(1, 2);
id_test = 0;
}
public void swap()
{
if (id_player == 1)
{
id_player = 2;
}
else id_player = 1;
}
public void OnMouseDown()
{
for (int i = 0; i < 3; i++)
{
{
id_test++;
if (test.name == "test_" + id_test)
{
testArray.test_list[i] = id_player; // **вот этот id_player не обновляется.**
print("ЗНАЧЕНИЕ ЯЧЕЙКИ____" + testArray.test_list[i]);
swap();
}
}
}
При условии что совпадает имя объекта по которому кликнули с заданным шаблоном, то пытаюсь записать переменную id_player в соответствующий индекс массива. И после того как записал переменную пытаюсь поменять её значение. И вот тут возникает загвоздка. Когда кликаю по следующему объекту то переменная то значение переменной не обновляется при присвоении значения другой ячейки массива. То есть постоянно записывается значение присвоенное id_player указанное при инициализации.
Прошу подсказать, где совершаю ошибку? и сорян за нубские вопросы