@yraiv

Как изменить данные из одного скрипта в другом, если они на разных объектах?

У меня есть сцена. На этой сцене есть персонаж. Мне нужно сделать так, чтоб я мог взять данные о количестве коинов, которые собрал персонаж и чтоб они записывались в другой скрипт. Скрипты висят на разных объектах
вот код

public int CoinLvl;
    public Player2DControl Player2DControl;


    void start (){
    Player2DControl = GameObject.Find("player").GetComponent<Player2DControl>();
    CoinLvl = Player2DControl.Coin;  
    }

Ошибки не выдаёт, но коины не приравниваются, остаётся значение равное нулю
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
@roma79737
В скрипте откуда нужно брать значение используйте "public static *тип данных (int/float/string)* *название переменной* и в другом скрипте чтобы использовать это значение пишите *название скрипта*.*название переменной*.

Пример:
MyScript.cs
public static int mynum;
mynum = 1;


UseMyNum.cs
public Text MyText
MyText.text = MyScript.mynum.ToString(); //функция ToString() выводит нужное значение на экран (ее использовать не обязательно)


Надеюсь понятно объяснил и ответил на ваш вопрос.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
DanielMcRon
@DanielMcRon
C# && Unity
Уже задавали такие вопросы... Однообразно у вас всё это. Главный ответ - учить Unity и C#, зачем лезть куда-тои что-то делать, ничего не знаю об инструменте. У вас есть скрипт допустим, вы кидаете его на монету. При вхождении в монету, TriggerEnter2D срабатывает. А в нём вы добавляете к общей переменной 1 коин.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
GD Company Санкт-Петербург
от 120 000 до 150 000 ₽
Mystery Tag Новосибирск
от 80 000 до 110 000 ₽
от 130 000 до 200 000 ₽
02 апр. 2020, в 21:27
600 руб./за проект
02 апр. 2020, в 21:15
3000 руб./за проект
02 апр. 2020, в 21:11
8500 руб./за проект