@uriy99

Как реализовать шаблон SingleTon для сбора монет?

В скрипте PlayerInventory реализовать (шаблон) Singleton.Cделать начисление монеток путем обращения к Instance этого класса. Сбор монет реализовать в скрипте Player.
Ниже мой код:
public int CoinsCount;
private void Awake() 
{
	Debug.Log(Player.Instance.CoinsCount);
	
}
public static Player Instance {get;set;}

 
 }

А вот скрипт Player:
public class Coin
{
int CoinsCount;
public  void OnTriggerEnter2D(Collider2D col) 
{
	if(col.gameObject.CompareTag("Coin"))
	{
		CoinsCount++;
		Destroy(col.gameObject);
	}
 }
}

Можете подсказать пожалуйста как реализовать это верно.Буду благодарен.
  • Вопрос задан
  • 215 просмотров
Решения вопроса 1
@fan92rus
Можно использовать Di container - тут конфиги https://habr.com/ru/post/302240/
Для autofac конфиг instaneType https://autofaccn.readthedocs.io/en/latest/lifetim...
можно использовать другой контейнер, синглтон есть везде.
создаешь добавляешь в контейнер инвентарь как Singleton
инжектишь в обьект Player и вызываешь добавление монеток..

Или по класике описание синглтона тут https://metanit.com/sharp/patterns/2.3.php
Создаем через статичесский конструктор а в обьеккте player получаем через статичесский GetInstance
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы