Форум 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=101234)

drobinkin 13.09.2007 20:47

Как получить значение метки кадра?
 
Т.е. по аналогии с

Код:

_currentframe (MovieClip._currentframe property)
только на выходе имеем строку, содержащую имя метки текущего кадра
Возможно ли такое?

Kikasso 13.09.2007 21:02

Можно, только если кое-что сделать.
Код:

function getLabel():String{
if( this._currentframe < 10 )return 'label1';
if( this._currentframe < 11 )return 'label2';
if( this._currentframe < 15 )return 'label3';
if( this._currentframe < 20 )return 'label4';
if( this._currentframe < 30 )return 'label5';
return 'label100';
}
my_mc.addProperty('_currentlabel', getLabel, null);

Сами понимаете, ценность метода стремится к нулю.

drobinkin 13.09.2007 21:20

Цитата:

Сообщение от Kikasso
Можно, только если кое-что сделать.
Код:

function getLabel():String{
if( this._currentframe < 10 )return 'label1';
if( this._currentframe < 11 )return 'label2';
if( this._currentframe < 15 )return 'label3';
if( this._currentframe < 20 )return 'label4';
if( this._currentframe < 30 )return 'label5';
return 'label100';
}
my_mc.addProperty('_currentlabel', getLabel, null);

Сами понимаете, ценность метода стремится к нулю.


Типа, да :)
С таким же успехом можно и паралельно в кадрах с метками расставить текстовую переменную с разными значениями и использовать ее, типа, как метку :) Но если таких меток дофига, то туповато получается, вроде как двойная работа :)


Я тут нарыл в хэлпе кое-что

The following example sets the name of the first frame, top layer to "First Frame" and then stores the name value in the frameLabel variable:

Код:

fl.getDocumentDOM().getTimeline().layers[0].frames[0].name = 'First Frame';
var frameLabel = fl.getDocumentDOM().getTimeline().layers[0].frames[0].name;


Только, если я правильно понимаю, все равно надо сначала метке что-то присвоить?

Ибо конструкция
Код:

myvar = fl.getDocumentDOM().getTimeline().layers[0].frames[_currentframe].name;
у меня пока не работает, правда, сделал я ее больше интуитивно :)

Kikasso 13.09.2007 21:50

Это jsfl, то есть язык для среды разработки. Ничем это вам не поможет. Хотя.. Может переменную в кадр засадить.

drobinkin 13.09.2007 22:05

Цитата:

Сообщение от Kikasso
Это jsfl, то есть язык для среды разработки. Ничем это вам не поможет. Хотя.. Может переменную в кадр засадить.

Ы-ы-х, ото-ж :( Наверное, так и придется

CorC 14.09.2007 11:03

Нельзя заранее массив меток-кадров создать?

drobinkin 14.09.2007 15:00

Цитата:

Сообщение от CorC
Нельзя заранее массив меток-кадров создать?

Поясни, пожалуста?

CorC 17.09.2007 10:06

Да хоть через тот же JSFL создать массивчик, в котором будет дано соответствие: номер кадра - метка.


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

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