Unity. Данные кнопки присваиваются всем кнопкам
Скажу сразу, я только начинаю изучать юнити и C#, прошу не кидайтесь камнями) буду очень благодарна за любую помощь! Пишу игру в которой есть магазин скинов. На каждом скине есть три кнопки: купить, надеть, снять. Изначально активна только кнопка "купить", после покупки "снять" и тд. Сохраняются данные через PlayerPrefs. Столкнулась с проблемой, что после перезапуска или выхода на другую сцену и захода обратно, значение присваивается всем кнопкам(например купили первый скин и у него активна кнопка "снять", после перезахода у всех скинов активна кнопка "снять"). Нужно как-то перебирать скины и сохранять значение кнопки только для конкретного скина. Помогите пожалуйста с данной проблемой. Код прикладываю
public void Start()
{
PlayerPrefs.SetInt("mint", 100);
if (PlayerPrefs.GetInt("BuyButton") == 0)
{
BuyButton.SetActive(true);
TakeOff.SetActive(false);
Take.SetActive(false);
}
else if (PlayerPrefs.GetInt("BuyButton") == 1)
{
BuyButton.SetActive(false);
if (PlayerPrefs.GetInt("TakeOff") == 1)
{
TakeOff.SetActive(false);
Take.SetActive(true);
}
else
{
TakeOff.SetActive(true);
Take.SetActive(false);
}
}
}
public void Buy()
{
int mint = PlayerPrefs.GetInt("mint");
if (mint >= Price)
{
PlayerPrefs.SetInt("mint", PlayerPrefs.GetInt("mint") - Price);
TakeOff.SetActive(true);
Take.SetActive(false);
BuyButton.SetActive(false);
PlayerPrefs.SetInt("BuyButton", 1);
}
}
public void TakeOFF()
{
BuyButton.SetActive(false);
TakeOff.SetActive(false);
Take.SetActive(true);
PlayerPrefs.SetInt("TakeOff", 1);
}
public void TAKE()
{
BuyButton.SetActive(false);
TakeOff.SetActive(true);
Take.SetActive(false);
PlayerPrefs.SetInt("TakeOff", 0);
}