Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.06.2012, 18:30
dkart01 вне форума Посмотреть профиль Отправить личное сообщение для dkart01 Найти все сообщения от dkart01
  № 1  
Ответить с цитированием
dkart01

Регистрация: Apr 2012
Сообщений: 80
По умолчанию Можно ли вывести Label зная слой и кадр?

Здравствуйте, есть ли команда, по которой можно узнать Label кадра, если знаю на каком слое он расположен.
Что-то типа trace(НазваниеМувиклипа.Слойклипа.НомерКадра);

Хочется реализовать скриптик с логикой: если лейбл кадра = Отметка1, то остановить на этом кадре.

Старый 05.06.2012, 18:41
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
В AS2 нельзя. Можно с помощью ассоциативного массива реализовать задачу. Т.е. получать метку по номеру кадра.
И слои только во Flash IDE существуют.

Старый 07.06.2012, 11:30
dkart01 вне форума Посмотреть профиль Отправить личное сообщение для dkart01 Найти все сообщения от dkart01
  № 3  
Ответить с цитированием
dkart01

Регистрация: Apr 2012
Сообщений: 80
Цитата:
Сообщение от udaaff Посмотреть сообщение
Т.е. получать метку по номеру кадра.
Могли бы в подсказать как?

Старый 07.06.2012, 12:13
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 4  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
var frameLabels = {};
frameLabels.my_frame_label_1 = 2; // это значит, что метка "my_frame_label_1" соответствует второму кадру
frameLabels.my_frame_label_2 = 20; 
frameLabels.my_frame_label_3 = 52; 
frameLabels.my_frame_label_4 = 75; 
frameLabels.my_frame_label_5 = 122;
Как-то так. Обращаться можно следующим образом:

Код AS1/AS2:
this.gotoAndStop(frameLabels.my_frame_label_2)
Узнать, соответствует ли текущий кадр метке можно так:
Код AS1/AS2:
trace(this._currentframe == frameLabels.my_frame_label_4)
Узнать, какой метке принадлежит текущий кадр можно так:
Код AS1/AS2:
var curFrame = this._currentframe;
for(var i in frameLabels){
    if(frameLabels[i] == curFrame){
        trace("Текущий кадр соответствует метке " + i);
        break;
    }
}
Добавлено через 4 часа 4 минуты
Ах да. Можно еще и наоборот сделать:

Код AS1/AS2:
var frameLabels = []
frameLabels[2] = "my_frame_label_1" // это значит, что метка "my_frame_label_1" соответствует второму кадру
И т.д.

Но в любом случае каким-либо образом связать метки и номера кадров нужно будет.
__________________
hauts.ru

Старый 09.06.2012, 11:03
dkart01 вне форума Посмотреть профиль Отправить личное сообщение для dkart01 Найти все сообщения от dkart01
  № 5  
Ответить с цитированием
dkart01

Регистрация: Apr 2012
Сообщений: 80
Большое вам спасибо, Hauts, за замечательный и подробно расписанный урок. То, что необходимо!

Создать новую тему Ответ Часовой пояс GMT +4, время: 11:02.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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