Делаю игру помесь Hearthstone и шахмат для освоению unity и вот дошёл до этапа когда начинается очередь другого игрока ходить.
Реализовано с помощью общего скрипта и глобальной переменной, когда глобальная переменная true то у первого включается скрипт у второго выключается и при false наоборот, всё работает корректно но каждый тик вызывает ошибку: "NullReferenceException: Object reference not set to an instance of an object"
Код:
private void FixedUpdate()
{
if (CurrentHealth <= 0)
{
Destroy(this.gameObject);
}
if(playerChange.player == true)
ChangeCardTwoPlayer();
else if(playerChange.player == false)
ChangeCardOnePlayer();
}
public void ChangeCardTwoPlayer()
{
if (gameObject.tag == "Card")
gameObject.GetComponent<MoveCard>().enabled = false;
else if(gameObject.tag == "CardFrag")
gameObject.GetComponent<MoveCard>().enabled = true;
}
public void ChangeCardOnePlayer()
{
if (gameObject.tag == "Card")
gameObject.GetComponent<MoveCard>().enabled = true;
else if (gameObject.tag == "CardFrag")
gameObject.GetComponent<MoveCard>().enabled = false;
}