Делаю для игры перевод на разные языки. В первом скрипте есть публичный класс с публичными переменными
public static lang lng = new lang();
public class lang
{
public string language;
public string[] trainingTap;
}
Стал делать второй скрипт "Translator", который вешается на каждый обьект с текстом. Подскажите, как сделать так, что бы в инспекторе можно было из этого скрипта сделать выпадающий список с публичными переменными другого скрипта? Что то вроде того, как на прилагающейся картинке. Пытался связаться с автором видео, безуспешно
тот дропдаун который ты прилепил на скриншоте -- это банальный Enum. Энамы в инспекторе отображаются именно так.
enum myEnum
{
Item1,
Item2,
Item3
};
public myEnum DropDown = myEnum.Item1;//будет отображатся как дропдаун
Но раз уж ты затронул вопрос о переводе, то я бы советовал не лепить собственные велосипеды, а погуглить ассеты платные или бесплатные которые это реализуют по запросу "unity localization"
Вот в этом вопросе я давал пару полезных линков по теме: Локализация игрового меню
Для этих целей вам нужно написать кастомный скрипт для инспектора вашего компонента(скрипта), а в нем использовать EditorGUILayout.Popup()
метод, который позволяет сделать выпадающий список и принимает как параметр массив строк.
Пример из документации по этому методу выглядит похожим на то, что вы хотите:
using UnityEditor;
using UnityEngine;
using System.Collections;
public class EditorGUILayoutPopup : EditorWindow
{
//Массив строк, которые хотим видеть в выпадающем списке
public string[] options = new string[] {"Cube", "Sphere", "Plane"};
public int index = 0;
[MenuItem("Examples/Editor GUILayout Popup usage")]
static void Init()
{
EditorWindow window = GetWindow(typeof(EditorGUILayoutPopup));
window.Show();
}
void OnGUI()
{
index = EditorGUILayout.Popup(index, options);
if (GUILayout.Button("Create"))
InstantiatePrimitive();
}
}
Что будет выглядеть вот так:
Как назначить определенному элементу массива UI объекта (контент в scrollview) соответствующий спрайт из массива спрайта?
Модель NewModel приходит на контроллер, нужно ее поместить в сессию:
Здравствуйте начал искать информацию как вытаскивать обычные текстовые логи из Docker контейнера и ничего не нашелИз этого я сделал вывод что...