Форум 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)
-   -   не срабатывает unloadMovie() при повторном проигрывании (http://www.flasher.ru/forum/showthread.php?t=119342)

liza_anyway 18.12.2008 12:26

не срабатывает unloadMovie() при повторном проигрывании
 
что есть:

Код AS1/AS2:

function init() {
  var clip:MovieClip = _root.attachMovie("ball", "ball_mc", this.getNextHighestDepth(), {_x:100, _y:10});
  //действия
  var flag:Number = 0;
clip.onEnterFrame = function() {
  flag += 1;
  //действия
  if (flag==60) {
          this.unloadMovie();
          flag = 0;
  }
}
}

что хотелось бы:

это баннер, посему проигрывается он зацикленно. При втором и далее проигрывании событие this.unloadMovie() не срабатывает. А хотелось бы =) Не смотря на то, что в условие if (flag==60) он заходит и flag обнуляет

Можно ли как-нибудь этот косяк исправить, или мож есть другие пути, как выгрузить мувик на определеном кадре?

Спасибо

iNils 18.12.2008 13:08

Код:

clip.flag = 0;

liza_anyway 18.12.2008 13:10

вместо flag = 0;?
не помогло, в любом случае флаг обнуляется, а клип остается на месте

chingachgoog 18.12.2008 13:19

Можно вместо
Код:

var flag:Number = 0;
написать
Код:

flag = 0;

liza_anyway 18.12.2008 13:24

можно. можно вообще ничего не писать. толку-то от этого. Отладчик говорит, что при любом варианте флаг успешно обнуляется

Вы считаете проблема именно из-за флага?

iNils 18.12.2008 13:57

Аааа.
Замените unloadMovie на removeMovieClip.
unloadMovie выгружает содержимое клипа, а не сам клип.

И не пишите никогда
Код:

_root.attachMovie("ball", "ball_mc", this.getNextHighestDepth()
Либо везде _root, но лучше this, иначе это может привести к ошибке.

liza_anyway 18.12.2008 14:02

iNils, спасибо большое, заработало как надо =)

skald 18.12.2008 14:27

iNils, а можно после выгрузки именно удалить этот клип??
даже если после unloadMovie прописать removeMovieClip, то несмотря на отсудствие содержимого, клип остается ...
не то, чтобы это мне как-то мешало, просто интересно ...

iNils 18.12.2008 14:35

Конечно можно. Но... учитывайте тот факт, что в данном коде клипы создаются с одним и тем же именем. Поэтому обращение по ссылке всегда ведет к тому клипу, чья глубина ниже.
То есть, если вы создали 3 клипа ball_mc на глубинах 5, 10, 15, то обращение к ball_mc всегда будет давать тот клип, который на глубине 5, а до двух других можно будет достучаться только после удаления 5-ки (для 10) и 10-ки (для 15)


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

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