Страница 1 из 2

Болванка для редактора-чего-нибудь

СообщениеДобавлено: 13 янв 2010, 23:23
gnoblin
Синтаксис:
Используется csharp
using UnityEngine;
using UnityEditor;
using System.Collections;
using System.Collections.Generic;

public class ScreenListItem
{
    public string name;
    public List<ScreenButton> button_list;

    public ScreenListItem()
    {
        button_list = new List<ScreenButton>();
    }
    public ScreenListItem(string screen_name):this()
    {
        name = screen_name;
    }

}

public class ScreenButton
{
    public string name;
    public ScreenButton()
    {
    }

    public ScreenButton(string _name)
    {
        name = _name;
    }
}

public class UI_LogicWindow : EditorWindow
{

   
    [MenuItem("UserInterface/UI_LogicWindow")]
    static void Init()
    {

        UI_LogicWindow window = (UI_LogicWindow)EditorWindow.GetWindow(typeof(UI_LogicWindow));
        window.Show();
    }

   

    public static List<ScreenListItem> screen_list = new List<ScreenListItem>();
    ScreenListItem screen;
    void OnGUI()
    {
        if (GUILayout.Button("Сохранить"))
        {
           
        }

        if(GUILayout.Button("Добавить Экран"))
        {
            screen_list.Add(new ScreenListItem("Экран "+screen_list.Count));
        }

        for (int i = 0; i < screen_list.Count; i++)
        {
            GUILayout.BeginHorizontal();
           
            if (GUILayout.Button(screen_list[i].name))
            {
            }
            if (GUILayout.Button("Добавить кнопку"))
            {
                screen_list[i].button_list.Add(new ScreenButton("Кнопка"));
            }
            if (GUILayout.Button("X"))
            {
                screen_list.Remove(screen_list[i]);
                continue;
            }
            GUILayout.EndHorizontal();

            for (int j = 0; j < screen_list[i].button_list.Count; j++)
            {
                GUILayout.BeginHorizontal();
                if (GUILayout.Button(screen_list[i].button_list[j].name))
                {

                }
                if (GUILayout.Button("x"))
                {
                    screen_list[i].button_list.Remove(screen_list[i].button_list[j]);
                }
                GUILayout.EndHorizontal();
            }
        }
       
    }
}

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 14 янв 2010, 01:00
Neodrop
Нифига не понятно. А скрин ?

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 14 янв 2010, 13:26
ffinder
мне понравилось

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 14 янв 2010, 13:35
Neodrop
Уф.. Ну очень нестандартный интерфейс...

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 14 янв 2010, 18:21
gnoblin
Это ж проверка концепции! :-$

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 14 янв 2010, 19:08
Sef
Для понятия основ - полезно :-bd

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 29 мар 2011, 14:09
jackfrost
дайте подсказку плз куда совать код этого редактора?

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 29 мар 2011, 14:19
gnoblin
в папку Assets\Editor

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 29 мар 2011, 18:22
jackfrost
Спасибо, положил.
а запускать как?

... вообще есл честно, у меня просто есть потребность сделать отдельный от юнити редактор уровней для игрухи....
этот скрипт то что я думаю? или просто плагин для юнити-редактора?

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 29 мар 2011, 22:56
Paul Siberdt
Ха.. спасибо... пост послужил толчком таки заняться кастом-баром с парой жизненно важных кнопок ( млин... под конец проекта :D )

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 30 мар 2011, 13:25
jackfrost
Ну может быть все-таки кто-нибудь из адептов снизойдет до моего вопроса?

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 30 мар 2011, 13:57
Zaicheg
jackfrost писал(а):Спасибо, положил.
а запускать как?

[MenuItem("UserInterface/UI_LogicWindow")]
По всей видимости, в строке меню UserInterface -> UI_LogicWindow

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 30 мар 2011, 16:38
jackfrost
Спасибо теперь понял...
А гдеб почитать подробности пользования классом UnityEditor ?
можноли его в standalone проекте как-нибудь прикрутить?

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 30 мар 2011, 16:49
Zaicheg
А гдеб почитать подробности пользования классом UnityEditor ?

Попробуйте посмотреть код творения Неодропа -- Antares.
viewtopic.php?f=12&t=1162
viewforum.php?f=99

можноли его в standalone проекте как-нибудь прикрутить?

По-моему, нет.

Re: Болванка для редактора-чего-нибудь

СообщениеДобавлено: 30 мар 2011, 21:43
Paul Siberdt
Ура! Наконец, сделал себе четыре такие нужные кнопочки:
- копипаст трансформаций
- рандомное вращение вокруг up-axis
- ориентация up-axis "от мирового нуля"

Всем спасибо за атмосферу :ymparty:

Нео, а можно заменить в окне редактирования поста тек на upload-кнопке? Вместо "добавить файл" поставить "загрузить файл".
Постоянно жму сначала "Добавить", ожидая, что откроется как раз меню выбора файла для загрузки. :)