Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проверка свойства _visible (http://www.flasher.ru/forum/showthread.php?t=103512)

wvxvw 06.12.2007 22:13

Код:

mc1._visible+mc2._visible+mc3._visible+mc4._visible?[false condition]:[true condition];
если хоть один клип видно - выполнится "false condition", если всех не видно - "true condition".

RealShat 06.12.2007 22:22

FernandoCosta, я вообще запутался!!!
Зачем этот лисенер? Чем плох код
Цитата:

next.onPress = function() {
var loader:MovieClipLoader = new MovieClipLoader();
loader.loadClip("part2.swf", clip);
};
???

wvxvw, false condition функция?

УРААААА!!!!!
Всем спасибо!!!
Проблема решилась дико просто:
изначально я взял код FernandoCosta'ы и с ним после загрузки не работало.
Сейча срешил по эксперементировать и поставил код _etc.
И он заработал!
Типизирование спасает мир!
А сегодня меня!
Еще раз спасибо, больше не буду вас доставать глупыми вопросами.
Учусь на своих ошибках!!!

etc 07.12.2007 09:40

Цитата:

Сообщение от RealShat
Типизирование спасает мир!

Только не в AS2, а типизация в моем коде лишь для галочки, может этот кусок в класс будет вставлен.

wvxvw 07.12.2007 13:16

Цитата:

wvxvw, false condition функция?
нет, место, где писать код, если условие не соблюдается.
Сорь, я не видел, что есть вторая страница. Просто самый быстрый способ (с точки зрения записи, как оно в смысле производительности - не знаю) выяснить соответвствие множественных условий - сложить их все (булевое "тру"=1, булевое "фолс"=0) и проверить результат.
Т.е. "тру"+"тру"+"тру"=3, "фолс"+"тру"+"тру"=2, например.
если нужно именно последовательно проверить - вот вариант:
Код:

var _arr:Array = [true, true, false, true];
var _arr1:Array = [true, true, true, true];
var _arr2:Array = [true, false, false, true];
var _arr3:Array = [false, false, false, false];
function calculate(_a:Array):Number {
        var i:Number = 0;
        var r_num:Number = 1;
        var base:Number = 1;
        while(i<_a.length){
                r_num+=(base<<_a[i]);
                base *=2;
                i++;
        }
        return r_num ^ base;
}
//
trace(calculate(_arr).toString(2)); //1011
trace(calculate(_arr1).toString(2)); //1111
trace(calculate(_arr2).toString(2)); //1001
trace(calculate(_arr3).toString(2)); //0

Т.е. в зависимости от последовательности тру-фолс получим разное значение (всегда уникальное), ну а потом уже проверять как нравится - иф\свитч...


Часовой пояс GMT +4, время: 20:26.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.