-
Автор темы
- #1
Код:
[SerializeField] private int k;
Код:
[HideInInspector] public int p;
Код:
[Tooltip("Text")]
Пожалуйста, авторизуйтесь для просмотра ссылки.
Позволяет работать скрипту в редакторе
Код:
[ExecuteInEditMode]
Код:
[TextArea(1,3)]
Пожалуйста, авторизуйтесь для просмотра ссылки.
Продвинутое
Для начало создадим скрипт, который хотим редактировать
Код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class adfs : MonoBehaviour
{
public string MyTextArea;
public string title;
public int id;
public float count;
public bool toggle;
public Sprite icon;
}
Создаем скрипт редактор
C#:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(adfs))] // Вместо adfs, напишите свое названия скрипта
public class EditorAdfs : Editor
{
adfs _adfs;
public override void OnInspectorGUI()
{
var style = new GUIStyle(GUI.skin.button); // добавить стиль для кнопки
style.normal.textColor = Color.red;
style.fontStyle = FontStyle.Bold;
_adfs = target as adfs; // обязательно
GUILayout.BeginVertical("HelpBox"); // контрольная группа
GUILayout.Label("General item settings", EditorStyles.boldLabel); // добавить этикетку
_adfs.id = EditorGUILayout.IntField("ID", _adfs.id); // Сделать текстовое поле для ввода целых чисел.
_adfs.toggle = EditorGUILayout.Toggle("is Trade", _adfs.toggle); // Выбранное состояние переключателя
_adfs.title = EditorGUILayout.TextField("Name", _adfs.title); // Сделать текстовое поле для ввода текста
_adfs.icon = (Sprite)EditorGUILayout.ObjectField("Item icon", _adfs.icon, typeof(Sprite), false); // false - нельзя брать объект со сцены, true - можно брать объект со сцены
if (GUILayout.Button("Button", style)) // style - стиль кнопки
{
}
GUILayout.EndVertical(); // закрыть контрольную группу (Желательно добавить в избежание багов)
}
}
Пожалуйста, авторизуйтесь для просмотра ссылки.
Скрипт редактор перемещать на объект не надо!
Последнее редактирование: