Форум 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)
-   -   Аналог функция onClipEvent(load) (http://www.flasher.ru/forum/showthread.php?t=85374)

Therion 20.09.2006 22:21

Аналог функция onClipEvent(load)
 
добрый день!
при использовании "on()" (тоесть если писать скрипт в мувики)
есть такая штука "onClipEvent(load)" которая передает что-то муви клипу только один раз, как только он появился на сцене
А есть ли такая штука при написании скрипта в ключевом кадре?

Nirth 20.09.2006 22:26

Написать функцию,которая вызывается однажды.

Therion 20.09.2006 22:27

а не подаш идею как это сделать? please:)

Yuorik 20.09.2006 23:10

Непонял. Что в ключевом кадре должно происходить при написании кода ?
Попробуй повторить вопрос другими буквами ;).

Yuorik 20.09.2006 23:22

Если моя попытка понять правильна то тебе нужен метод (событие) который вызветься когда кадр загружен ? События нету но есть простой метод:

ifFrameLoaded([scene:String], frame) {
statement(s);
}

Но это будет работать только в том случае если будет что-то в интервале проверять а загрузился ли кадр ? А вообще нужно писать в АС-2.0 там много методов есть да и вообще там таких пробем не возникает.

Да и главное не забывать что кадр при запуске сначала выполняет скрипт а потом прорисовывает графику.

Therion 20.09.2006 23:24

ок
повторяю:)
Если код писать в муви клипе, то если написать "onClipEvent(load)" тогда муви клип исполняет те дейсвия, что стоят в скобках один раз, как только он появляется на сцене (с помощю attach или duplicate).

Но так как писать код в муви клипах очень не удобно, то я всё пишу в ключевом кадре, например:
mc.onEnterFrame=function(){}

Вот я и спрашиваю есть ли аналог onClipEvent(load) для ключевого кадра...
надеюст теперь все ясно ,что я хочу.

Nirth 20.09.2006 23:54

код находится в руте, так как ActionScript 1.0 скрипт желательно держать в 1 кадре.

мы манипулируем гипотетическим мувиклипом по имени clip1_mc

Код:

clip1_mc.doOnce = function () {
    this._x += 20;
    this._y += 10;
    delete this.doOnce;
}


Therion 21.09.2006 01:20

во
вроде работает
Спасибо


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

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