Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как передать переменную в функцию? (http://www.flasher.ru/forum/showthread.php?t=143823)

In8Finity 26.08.2010 17:16

как передать переменную в функцию?
 
У меня есть следующая функция, в которой используется некая переменная kk:

Код AS3:

function checkHit(evt:Event):void {
    for (var kk:Number = 0; kk < level.numChildren; ++kk){
          if ((level.getChildAt(kk) is Exit){
                level.getChildAt(kk).gotoAndPlay(2);
                addEventListener(Event.ENTER_FRAME, checkEnd)
                }
      }
}

И есть вызываемая из первой функция checkEnd, в которой мне нужно задействовать эту переменную kk.

Код AS3:

function checkEnd(evt:Event):void {
    if (level.getChildAt(kk).currentFrame == 15){
        removeEventListener(Event.ENTER_FRAME, checkEnd)
        }
}

Но вот вторая функция, насколько я разобрался, не понимает, что это за переменная такая kk и требует, чтобы я эту переменную как-то в эту функцию передал.
И выдаёт ошибку: 1120: Access of undefined property kk.

Как мне передать переменную в эту функцию?

bebop 26.08.2010 17:29

Код AS3:

function checkHit(evt:Event):void {
    for (var kk:Number = 0; kk < level.numChildren; ++kk){
          if ((level.getChildAt(kk) is Exit){
                level.getChildAt(kk).gotoAndPlay(2);
                level.getChildAt(kk).addEventListener(Event.ENTER_FRAME, checkEnd)
                }
      }
}
 
function checkEnd(evt:Event):void {
    if ((e.currentTarget as MovieClip).currentFrame == 15){
        e.currentTarget.removeEventListener(Event.ENTER_FRAME, checkEnd)
        }
}


zuxul 26.08.2010 17:30

http://www.flasher.ru/forum/showthread.php?t=136030

-De- 26.08.2010 17:31

Это называется "передать параметр в слушатель". Ищется в поиске. Кучу раз подымалось, в FAQ бы добавить...

In8Finity 26.08.2010 18:01

Спасибо! Разобрался вроде.


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

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