Понедельник, 11 Ноября 2024, 09:13

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Диалоговое окно
CmaujlukДата: Четверг, 11 Июня 2015, 22:21 | Сообщение # 1
участник
Сейчас нет на сайте
Всем привет!
Встал вопрос реализации диалогового окна (например окно с вопросом и 2мя кнопками "ок" и "отмена") на юнити.
Казалось бы мелочь, логика понятна, но вот реализовать не хватает скила.
Если точнее то не могу допереть как сделать так, что это окно вызывалось бы хоть откуда и возвращало значение туда откуда было вызвано.
Т.е. например есть меню, и кнопка выход, нажали, открывается окно, вы хотите выйти? если да - то выход, нет - нет.
Покупаешь что-то в магазине: вы хотите купить? Да или нет. Пилить под каждую операцию своё окно не выгодно.
Нужно какой-то шаблон создать и в него закидывать все, ну и чтобы он возвращал true false в зависимости от нажатой кнопки.
Сталкивался кто? Мб примерчик есть? Гугл позитивных результатов не выдал только костыли понять которые мне к сож. не удалось.


Не жадный на плюсы.
Наши проекты:
Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft
Angry Bee Evolution - Эволюция с элементами кликера
Чего не хватает? - Викторина на логику"
TymonrДата: Четверг, 11 Июня 2015, 22:33 | Сообщение # 2
With OpenSource forever
Сейчас нет на сайте
Ну емае.. Что за тупые вопросы? Вы хотя бы один учебник по программированию видели? Врятли..

Итак. Функция. Она умеет принимать и возвращать значение. Принимаемое нас не интересует. Нам нужно возвращаемое. В данном случае это bool - 1 или 0
Вызываем функцию окна, та возвращает значение. Мы его обрабатываем. В чем проблема-то?


Если вы решили обратиться к нам за помощью, не становитесь в позицию неудачника. И не ведите себя как неудачник. Лучший способ получить быстрый и чуткий ответ, - спрашивать как победитель — спрашивать как человек умный, уверенный в себе и знающий, которому просто понадобилась помощь при решении одной конкретной проблемы.
Как правильно задавать вопросы в технических форумах
CmaujlukДата: Четверг, 11 Июня 2015, 22:54 | Сообщение # 3
участник
Сейчас нет на сайте
Цитата Tymonr ()
Итак. Функция. Она умеет принимать и возвращать значение. Принимаемое нас не интересует. Нам нужно возвращаемое. В данном случае это bool - 1 или 0

С принципами работы методов я знаком класса так с 8го, вопрос не в этом.
Из любого скрипта создаем объект NameObject с отрисовкой кнопок, скорее всего GUI, но возможно и UI. При нажатии кнопки нам нужно return'уть результат в тот скрипт откуда мы вызвали, так понятнее?)
С# начал изучать относительно недавно, возможно придется подключать события или делегаты (с ними пока не знаком), с сессией времени не особо много, поэтому решил спросить совета у гуру.


Не жадный на плюсы.
Наши проекты:
Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft
Angry Bee Evolution - Эволюция с элементами кликера
Чего не хватает? - Викторина на логику"


Сообщение отредактировал Cmaujluk - Четверг, 11 Июня 2015, 22:55
FumleadДата: Четверг, 11 Июня 2015, 23:10 | Сообщение # 4
участник
Сейчас нет на сайте
Cmaujluk, а на кой черт создавать именно объект? Вызваем функцию Dialog, которая все рисует, ждет нажатия, возвращает результат.

Параноик с гениальным планом по захвату мира.
berilДата: Четверг, 11 Июня 2015, 23:14 | Сообщение # 5
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Чето вообще ничего не понятно, ч то автор хочет....



Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
CmaujlukДата: Пятница, 12 Июня 2015, 15:25 | Сообщение # 6
участник
Сейчас нет на сайте
Цитата beril ()
Вызваем функцию Dialog, которая все рисует, ждет нажатия, возвращает результат

Пробовал, для этого всего требуется
Код
using UnityEditor;

Проблема в том что я пилю под андроид и с такой библиотекой приложение не компилится, по этому кроме как через объект ничего придумать не могу.
Есть ещё идейки?
Цитата beril ()
Чето вообще ничего не понятно, ч то автор хочет....

Хочу вот такое окно


Не жадный на плюсы.
Наши проекты:
Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft
Angry Bee Evolution - Эволюция с элементами кликера
Чего не хватает? - Викторина на логику"
berilДата: Пятница, 12 Июня 2015, 15:54 | Сообщение # 7
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Цитата Cmaujluk ()
Проблема в том что я пилю под андроид и с такой библиотекой приложение не компилится,

Нужно директивы использовать #if UNITY_EDITOR

Цитата Cmaujluk ()
Из любого скрипта создаем объект NameObject с отрисовкой кнопок, скорее всего GUI, но возможно и UI. При нажатии кнопки нам нужно return'уть результат в тот скрипт откуда мы вызвали, так понятнее?)

Ну что то вроде этого, если я правильно понял

Код
Button btn;

void Start
btn.onClick.AddListener(clickeventMethod);

private void clickeventMethod()
{
     var у = true;  
}




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
CmaujlukДата: Пятница, 12 Июня 2015, 16:35 | Сообщение # 8
участник
Сейчас нет на сайте
Цитата beril ()
Нужно директивы использовать #if UNITY_EDITOR

Смысла нету т.к. без этой библиотеки само окно не работает =)
Цитата beril ()
Button btn;

void Start
btn.onClick.AddListener(clickeventMethod);

private void clickeventMethod()
{
     var у = true;  
}

Вот это уже что-то очень похожее, можешь прокомментировать?


Не жадный на плюсы.
Наши проекты:
Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft
Angry Bee Evolution - Эволюция с элементами кликера
Чего не хватает? - Викторина на логику"
berilДата: Пятница, 12 Июня 2015, 17:18 | Сообщение # 9
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Button btn; кнопка
btn.onClick.AddListener(clickeventMethod); подписываемся

private void clickeventMethod() метод который сработает при нажатии на кнопку btn
{
var у = true;
}




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
CmaujlukДата: Пятница, 12 Июня 2015, 19:03 | Сообщение # 10
участник
Сейчас нет на сайте
beril, Это реализация клика, не самого алгоритма.
Вообщем разобрался, если кто столкнется с такой же проблемой гуглите StartCoroutine, путем нехитрых манипуляций создаем Coroutine передавая в него всю нужную инфу и делегат с нужным методом.


Не жадный на плюсы.
Наши проекты:
Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft
Angry Bee Evolution - Эволюция с элементами кликера
Чего не хватает? - Викторина на логику"
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг