Совместное использование переменных данных между сценариями - PullRequest
0 голосов
/ 24 марта 2020

У меня есть один скрипт, вызывающий COINS, получающий coins каждый раз, когда объект сталкивается. Я хочу взять coins и переместить данные в другой скрипт, который называется SHOP. В МАГАЗИНЕ я хочу изменить деньги, например вычесть их. Затем перенесите эти данные обратно в МОНЕТЫ.

1 Ответ

0 голосов
/ 24 марта 2020

Это довольно легко сделать в Unity.

Вам нужно сослаться на сценарии, которые можно сделать с переменными publi c:


public class Shop : Monobehaviour {

  public Coins coins;

}

// ---

public class Coins : Monobehaviour {
  int totalCoins;
}

Затем вы можете использовать редактор перетащить сценарии в переменные. Осторожно, вы не можете (в этом случае) перетащить сценарий из файлов проекта. Вы должны использовать тот, который прикреплен к вашему игровому объекту.

Тогда, если вы хотите, чтобы Shop вычитал монеты, все, что вам нужно было бы сделать, это использовать эту ссылку на переменную сценария Coins.

public class Shop : Monobehaviour {

  public Coins coins;

  public void SubtractCoins(int toSub) {
    coins.totalCoins -= toSub;
  }

}

Если ваши переменные опубликованы c, это действительно просто. Вот так вы можете начать, когда скрипты «общаются» друг с другом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...