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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.11.2005, 21:35
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 1  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
По умолчанию Последовательность инициализации клипов

Смотрим аттач.
Создаем два класса Сlass1 и Class2 и два мувиклипа (экземляров этих классов).
Помещаем мувиклип класса Class1 в мувиклип класса Class2.
Но, Class2 инициализируется раньше Class1. Поэтому внутри #initclip обратиться к методом экземляра класса Class1 не получается (это при том что порядок в #initclip для Class1 стоит 1, а для Class2 - 2).

Можно приаттачить из библиотеки клип первого класса
this.attachMovie ("lib1", "mc", 0); (в примере закоментирован), тогда все работает.

Попытка вызвать Class1.apply (this.mc); (в примере закоментирован) вызывает только функцию описывающую Class1. Вызов внутри нее метода init() не работает.

Вопрос. Как заставить экземляр класса Class1 инициализироваться первым?
Вложения
Тип файла: zip initclip.zip (2.6 Кб, 11 просмотров)
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 13.11.2005, 02:36
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 2  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
сейчас нет возможности протестить. но вот выходы.

1)
поставить галочку на import in first frame

2) если у тебя будет прелоадер, то следовать советам Колина Мука насчет АС2 классов.
в первый кадр вставляешь прелоадер, в пятый кадр за пределами сцены вставляешь свои классы, после чего уже на десятом кадре начинаешь их юзать(можно обойтись в три кадра, но кто знает какие могут быть глюки)

3) попробуй юзать order в #initclip,
Код:
#initclip 1
//your class1
лично я юзаю второй способ. ибо юзаю АС2 и инитклипом пользовался лиш трижды, и ито в туторах
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 13.11.2005, 02:42
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 3  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
1-2. Это точно тут не причем
3. Стоит order.

Все сделано на as1. Вариант на as2 не подходит. Но решение просто должно быть. Раз c attachMovie все работает, значит должна быть возможность вызвать и вручную. Мне так кажется.

А зипе есть наглядный пример.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 13.11.2005, 05:02
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Вроде нашел решение.
Надо внутри _global.Class2 = function () {
написать
this.mc.__proto__ = new Class1 ();

Спасибо Nirth, за попытку помочь разобраться.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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