Почему у меня высвечивается ошибка с индексом: Array index is out of range.
public int numb;
private void FixedUpdate()
{
Text.text = score + "";
if(dela_buy[numb] < score)
{
dela_emblem[numb].GetComponent<Image>().color = new Сolor(255,100,100,100);//только на этой строчке высвечивается ошибка
dela_emblem[numb].GetComponent<Button>().enabled = true;//если убираю предыдущую строчку,то только на этой.
}
}
Вам ваш компилятор говорит что ваш индекс находиться в не границ массива.
пробуйте поставить <=
либо посчитайте точное число элементов и отнимите 1. больше вариантов никаких я тут не вижу
Я так понал вы хотите делать магазин где кнопка меняет цвет когда денег достаточно чтобы купить вещь. Меняйте ваш скрипт на это.
//создаём новый тип для кнопки
private struct shopButton
{
public int price;
public Button button;
public Text text;
}
//создаём массив из этих кнопок
public shopButton[] buttonsArray;
//теперь пишем функцию которая каждый раз будет проверять доступно ли нам покупка
private void Refresh()
{
//проверяем для каждой кнопки в массиве
for(shopButton currentButton in buttonsArray)
{
if(currentButton.price <= score)
{
currentButton.GetComponent<Image>().color = new Сolor(255,100,100,100);
currentButton.interactible = true;
}
else
{
currentButton.GetComponent<Image>().color = Color.Grey;
currentButton.interactible = false;
}
}
}
Как то вот так. Если что то не понятно, обращайтесь.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть необходимость получить объект типа dynamic из Json наNET Core 3
Проблема в том что DataGrid после удаления из коллекции (ObservableCollection) какого то слова, в DataGrid коллекция остается не измененнымРаботает в другом...