[РЕШЕНО]изменение входных значений функции через эти функции

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

[РЕШЕНО]изменение входных значений функции через эти функции

Сообщение BlackMamba 30 июл 2011, 23:00

помогите, пожалуйста, ламер-программеру:
у меня есть код:
Синтаксис:
Используется javascript
var chouseUpper : boolean;
var upperButton : Vector2;
var chouseButtonSize : int;

function ChouseButton(button : boolean, rec: Vector2, size : int) {
        if(button == false) {
                if(GUI.Button(Rect(rec.x, rec.y, size, size), " "))
                        return(!button);
        }
}

function OnGUI() {
         ChouseButton(chouseUpper, upperButton, chouseButtonSize);
}


смысл скрипта вот в чем: жму на кнопочку, и она исчезает (допустим на ее месте что-то другое появится, не важно)

но это не работает, а конкретно не меняется переменная chouseUpper, как сделать так, чтобы функция взяла значение в обработку, а потом поменяла его же.
P.S. я эти кнопочки могу и без функций написать, но вдруг если мне понадобится их не 4 и 100 штук, каждую писать это (полная Ж)
Последний раз редактировалось BlackMamba 31 июл 2011, 22:57, всего редактировалось 1 раз.
mail: _gdeMoiGusi@gmail.com
skype: Ellseworth
Аватара пользователя
BlackMamba
UNITрон
 
Сообщения: 305
Зарегистрирован: 06 янв 2011, 16:16
Откуда: Москва

Re: изменение входных значений функции через эти функции

Сообщение Zaicheg 30 июл 2011, 23:34

Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: изменение входных значений функции через эти функции

Сообщение BlackMamba 31 июл 2011, 00:32

спасибо.
а вы не знаете, как это можно к unity js прикрутить? (он же должен вообще об этом знать, я полагаю), я пробовал напрямую - ругается, а конвертор работает только в одном направлении
mail: _gdeMoiGusi@gmail.com
skype: Ellseworth
Аватара пользователя
BlackMamba
UNITрон
 
Сообщения: 305
Зарегистрирован: 06 янв 2011, 16:16
Откуда: Москва

Re: изменение входных значений функции через эти функции

Сообщение Zaicheg 31 июл 2011, 00:48

BlackMamba писал(а):спасибо.
а вы не знаете, как это можно к unity js прикрутить? (он же должен вообще об этом знать, я полагаю), я пробовал напрямую - ругается, а конвертор работает только в одном направлении

По-моему, UnityScript не поддерживает подобного.
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: изменение входных значений функции через эти функции

Сообщение waruiyume 31 июл 2011, 05:18

Могу предложить такое извращение:
Синтаксис:
Используется javascript
var upperButton : Vector2;
var chouseButtonSize : int;
var bArr:boolean[]=new boolean[10];

function ChouseButton(button : boolean, rec: Vector2, size : int):boolean
{
        if(button == false) {
        if(GUI.Button(Rect(rec.x, rec.y, size, size), " "))
        button=true;
        }
        return button;
}

function OnGUI()
{
        for (var i:int=0;i<bArr.Length;i++)
        {
                bArr[i]=ChouseButton(bArr[i], upperButton+Vector2(chouseButtonSize*i,0), chouseButtonSize);
        }
}
 

P.S. Кто-нибудь знает где можно почитать о конструкциях (js) ?
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: изменение входных значений функции через эти функции

Сообщение BlackMamba 31 июл 2011, 10:17

мне кажется с массивом - слишком "костыльно" :) , но ваша идея натолкнула на простой вариант, странно, что я до него не додумался:
Синтаксис:
Используется javascript
var chouseUpper : boolean;
var upperButton : Vector2;
var chouseButtonSize : int;

function ChouseButton(button : boolean, rec: Vector2, size : int) {
        if(button == false) {
                if(GUI.Button(Rect(rec.x, rec.y, size, size), " "))
                        button = true;
        }
       return button;
}

function OnGUI() {
        chouseUpper = ChouseButton(chouseUpper, upperButton, chouseButtonSize);
}

вечером опробую
mail: _gdeMoiGusi@gmail.com
skype: Ellseworth
Аватара пользователя
BlackMamba
UNITрон
 
Сообщения: 305
Зарегистрирован: 06 янв 2011, 16:16
Откуда: Москва

Re: изменение входных значений функции через эти функции

Сообщение BlackMamba 31 июл 2011, 22:56

всем спасибо за участие, последний вариант пашет, как надо
mail: _gdeMoiGusi@gmail.com
skype: Ellseworth
Аватара пользователя
BlackMamba
UNITрон
 
Сообщения: 305
Зарегистрирован: 06 янв 2011, 16:16
Откуда: Москва


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 21