using UnityEngine;
using UnityEngine.UI;
public class WeaponPick : MonoBehaviour
{
[SerializeField] private Image[] weaponIcons;
[SerializeField] private Sprite[] weaponSprites;
private const byte weaponCount = 7;
private byte[] weaponSlots = new byte[4];
[SerializeField] private string[] weaponKeys = new string[4];
[SerializeField] private string[] weaponAvailabilityKeysNames;
private void Awake()
{
for (int i = 0; i < 4; i++)
{
weaponSlots[i] = (byte)PlayerPrefs.GetInt(weaponKeys[i], 0);
UpdateWeaponIcon((byte)i);
}
}
public void increment(int slotNumber)
{
for (int i = 0; i < weaponCount; i++)
{
weaponSlots[slotNumber] = (byte)((weaponSlots[slotNumber] + 1) % weaponCount);
if (WeaponAvailabilityCheck((byte)slotNumber))
{
break;
}
}
UpdateWeaponIcon((byte)slotNumber);
SavePick((byte)slotNumber);
}
public void decrement(int slotNumber)
{
for (int i = 0; i < weaponCount; i++)
{
weaponSlots[slotNumber] = (byte)((weaponSlots[slotNumber] - 1 + weaponCount) % weaponCount);
if (WeaponAvailabilityCheck((byte)slotNumber))
{
break;
}
}
UpdateWeaponIcon((byte)slotNumber);
SavePick((byte)slotNumber);
}
private bool WeaponAvailabilityCheck(byte slotNumber)
{
return PlayerPrefs.GetInt(weaponAvailabilityKeysNames[weaponSlots[slotNumber]]) == 1;
}
private void SavePick(byte slotNumber)
{
PlayerPrefs.SetInt(weaponKeys[slotNumber], weaponSlots[slotNumber]);
PlayerPrefs.Save();
}
private void UpdateWeaponIcon(byte slotNumber)
{
weaponIcons[slotNumber].sprite = weaponSprites[weaponSlots[slotNumber]];
weaponIcons[slotNumber].SetNativeSize();
}
}
5 months ago
Само изящество
Next up
Профессору кислых щей раздробили анус на зоне за педофилию
Гусеницы нарядились на похороны бабы Капры
Копатыч - медовые булочки это прозвище Копатыча в гей-клубе?
Вы тоже в детстве боялись этого изображения?
> Moonzy X: How It Started - New Poster_
Смотрите, что смастерил!
)))))
Судьба Night Roof Run
[Артикль]
Жучков распидорасило на СВО
5 comments