Gui.Window
|
|
Valik_Fenko | Дата: Четверг, 21 Января 2016, 22:20 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Проблема такая возникла у меня есть функция BagMenu(int i) и переменная i используется в теле функции(оч важная часть) и проблема заключается в вызове окна этой функции. BagMenu(int); можно написать так и это будет работать,но как тогда нарисовать окно,ведь так его не будет.. Я так понял i -ид функции ,но это нифига не так.У меня не пашет даже если я пишу конкретное число,а не переменную.Внутри функции BagMenu Gui.box'ы есть, они не отображаются ваще
Сообщение отредактировал Valik_Fenko - Пятница, 22 Января 2016, 16:05 |
|
| |
BUFFOMETZ | Дата: Пятница, 22 Января 2016, 21:26 | Сообщение # 2 |
почетный гость
Сейчас нет на сайте
| Код private void Start () { int window = 3; BagMenu(window); } private void BagMenu(int i) { int win = i; if(win == 1); if(win == 2); if(win == 3); //При старте сработает это условие. if(win == 4); }
|
|
| |
Valik_Fenko | Дата: Пятница, 22 Января 2016, 21:43 | Сообщение # 3 |
почетный гость
Сейчас нет на сайте
| Мне нид чтоб когда я вызываю окно(GUI.Window) я мог задать нужное мне значение i,а не при старте.Это и так понятно что ты скинул.Но мне же не просто функцию вызвать надо,а окно.Эт я не особо понятно объяснил так что вот
GUI.Window(id,rect,BagMenu,"");
И мне нид чтоб переменная i указывалась мною. Если написал вот так BagMenu(i); и отдельно окно,то все окно будет поверх боксов.Не важно в каком порядке писать.Если кинуть окно в BagMenu то боксов просто не будет,будет ток окноДобавлено (22 января 2016, 21:43) --------------------------------------------- BUFFOMETZ, Прочитаешь?
Сообщение отредактировал Valik_Fenko - Пятница, 22 Января 2016, 21:38 |
|
| |
BUFFOMETZ | Дата: Пятница, 22 Января 2016, 22:31 | Сообщение # 4 |
почетный гость
Сейчас нет на сайте
| Цитата И мне нид чтоб переменная i указывалась мною. меняй переменную window
Цитата у меня есть функция BagMenu(int i) и переменная i используется в теле функции(оч важная часть) так i и будет меняться в зависимости от переменной window.
Код int window = 3;
public void WindowChange(int i) { // указываешь любое желаемое значение откуда захочешь, хоть из другого скрипта. window = i; }
private void OnGUI() { rect = GUI.Window(window, rect, BagMenu, ""); } private void BagMenu(int i) { //твоя функция с переменной i которую ты указал int win = i; //переменная i которая должна использоваться в теле функции, чтобы изменить вызови WindowChange if(win == 1); if(win == 2); if(win == 3); //твоя оч важная часть. Пока не вызовешь WindowChange, будет равна 3. if(win == 4); }
Я не очень помню легаси ui, но все должно работать. Может все таки я тебя не понял, лучше скинь весь скрипт, и поясни что конкретно тебе нужно и что не получается.
Сообщение отредактировал BUFFOMETZ - Пятница, 22 Января 2016, 22:33 |
|
| |
Valik_Fenko | Дата: Пятница, 22 Января 2016, 23:16 | Сообщение # 5 |
почетный гость
Сейчас нет на сайте
| Тот код что ты скинул не работает if(win == 3); //твоя оч важная часть. Пока не вызовешь WindowChange, будет равна 3. вот так сказать эта часть не вызывается.У меня там проверок i нету,сделал как ты..Хотя смысл? Можно же сразу //указать любое желаемое значение откуда захочешь, хоть из другого скрипта.
rect = GUI.Window(тут, rect, BagMenu, "");
не работает и всё я хз почему.На то что внутри функции даже не думай грешить.Если написать просто BagMenu(int);,то всё отображается,ну правда без окна
Помоему ID при создании окна и int в функции окна ваще никак не взаимосвязаны..
На BagMenu грешить не стоит ибо проверен код.Если просто написать BagMenu(Название скрипта.Название массива[переменная цикла]); Всё работает как часы ,как надо,но окна то не видно.Если вызвать окно и функцию отдельно- борода как не крути,если пихнуть окно в функцию - не лучше.Как вызвать окно и функцию с нужным мне значением в одной строке.Ну не выходит.То что ты пишешь слегка очевидно.Я уже почти всё перепробовал.
Мне нужно именно окно ибо элементов интерфейса много,они друг на друга будут накладываться и нужно между ними как-то перключатьсяДобавлено (22 января 2016, 23:16) --------------------------------------------- !!!!!!!!!!!!!!!!!!!!!!!!!!!!! Всё,спасибо я разобрался ранше цикл считал дистанцию между ячейками и боксами,я совсем забыл что теперь они в окне((но я ещё не до конца разобрался по каким расчетам считаются координаты gui в окне.Ну завтра тогда буду уже разбираться)
Сообщение отредактировал Valik_Fenko - Пятница, 22 Января 2016, 22:56 |
|
| |