Как передать аргумент сцене в Unity?

В Unity есть несколько способов передать аргументы между сценами. Я расскажу о наиболее распространенных способах.

1. Передача данных через статические переменные:
Создайте статическую переменную в классе, которую можно использовать для хранения значения, которое нужно передать между сценами. Например:

   public static int myArgument;

В сцене, откуда вы отправляете значение, установите его:

   MyScript.myArgument = 10;

В сцене, куда вы хотите передать значение, прочитайте его:

   int receivedArgument = MyScript.myArgument;

2. Передача данных через PlayerPrefs:
PlayerPrefs - это класс, который позволяет вам сохранять и получать данные между сеансами игры. Вы можете использовать его для передачи аргумента.
В сцене, откуда вы отправляете значение, установите его:

   PlayerPrefs.SetInt("myArgument", 10);

В сцене, куда вы хотите передать значение, прочитайте его:

   int receivedArgument = PlayerPrefs.GetInt("myArgument");

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

   public class ArgumentHolder : MonoBehaviour
   {
       public int myArgument;
     
       private void Awake()
       {
           DontDestroyOnLoad(gameObject);
       }
   }

В сцене, откуда вы отправляете значение, найдите объект и установите его:

   ArgumentHolder argumentHolder = FindObjectOfType<ArgumentHolder>();
   argumentHolder.myArgument = 10;

В сцене, куда вы хотите передать значение, найдите объект и прочитайте его:

   ArgumentHolder argumentHolder = FindObjectOfType<ArgumentHolder>();
   int receivedArgument = argumentHolder.myArgument;

Это лишь некоторые способы передачи аргументов между сценами в Unity с использованием C#. В зависимости от ваших потребностей и архитектуры проекта, может быть другое решение более подходящим.