Форум 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)
-   -   Как "заморозить" функцию? (http://www.flasher.ru/forum/showthread.php?t=68108)

ZЭТ 19.08.2005 13:49

Как "заморозить" функцию?
 
есть ли какое нить действие, чтоб функция при условии не работала??

motor4ik 19.08.2005 13:51

поставь внутри нее if с твоим условием :)

ZЭТ 19.08.2005 14:00

Цитата:

Сообщение от motor4ik
поставь внутри нее if с твоим условием :)

* if (i<3) {
this._x += 10;
if (this._x>450) {
this.unloadMovie();
i--;
}
}
* - это условие я вставил, но функция ваще перстает работать, а мне надо, чтоб она не работала, пока i не станет меньше 3 .

motor4ik 19.08.2005 14:10

просто с переменная i должна быть объявлена выше if :) или если она ваще снаружи фуекции то обращаться к ней через _root или ваще глобальной ее сделай :)

ZЭТ 19.08.2005 15:32

блин все, я башку сломал, не знаю как сделать - мне надо, чтоб максимум патронов(которые выстреливает корабль), сколько могло находиться на экране было три, не больше :
i = 0;
_root.onMouseDown = function() {
i++;
_root.attachMovie("blam", "blam_"+i, i);
_root["blam_"+i]._x = _root.ship._x;
_root["blam_"+i]._y = _root.ship._y;
_root["blam_"+i].onEnterFrame = function() {
this._x += 10;
if (this._x>450) {
this.unloadMovie();
i--;
}
If(i>3){

_root["blam_"+i].unloadMovie;
}

};
};

motor4ik 19.08.2005 15:56

Цитата:

Сообщение от ZЭТ
блин все, я башку сломал, не знаю как сделать - мне надо, чтоб максимум патронов(которые выстреливает корабль), сколько могло находиться на экране было три, не больше :

Код:

i = 0;
_root.onMouseDown = function() {
        if (i<3){              i++;
        _root.attachMovie("blam", "blam_"+i, i);
        _root["blam_"+i]._x = _root.ship._x;
        _root["blam_"+i]._y = _root.ship._y;

        _root["blam_"+i].onEnterFrame = function() {
                this._x += 10;
                if (this._x>450) {
                        this.unloadMovie();
                                      i--;
                          }                       
               
        };
};

чето я не понял в чем сложность то?

Whatsername 19.08.2005 17:03

а не проще ли не вызывать функцию в зависимости от условия?

ZЭТ 19.08.2005 17:08

Цитата:

чето я не понял в чем сложность то?
Ага... Что это только дает?? Мышку можно нажать - много раз, а i не успеет удалиться и тогда вылетать будет всего по одному патрону в независимости от щелкания по мыше . А надо чтоб : 1 клик - 1 патрон, но всего их может быть 3 на раб. поле(щелкай хоть сколько, но пока 1 не удалиться, другой не вылетет)...


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

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