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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.08.2007, 02:16
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 11  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Хорошо, в таком случае, донеси до меня смысл заложенный в этой стоке:
Цитата:
Только знаешь, delete this.onEnterFrame из прототипа похоже не работае
Цитата:
У меня на фирме я один дизайнер. И пять программистов (питон, С++ и т.д.)
Все нормально понимают что я говорю.
Они у тебя экстросенсы просто, наверное.

Старый 20.08.2007, 02:45
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 12  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Цитата:
Сообщение от Wolsh
delete this.onEnterFrame из прототипа похоже не работает
По идее должно работать, если вдруг почему-то не хочет удаляться, всегда можно сказать так:
Код:
this.onEnterFrame = null;

Старый 20.08.2007, 11:34
altyr вне форума Посмотреть профиль Отправить личное сообщение для altyr Найти все сообщения от altyr
  № 13  
Ответить с цитированием
altyr

Регистрация: Aug 2007
Сообщений: 13
С вашего позволения вернусь к основной теме
Спасибо за советы, но как-то сложновато и неэлегантно.

А нельзя реализовать такой вариант (извините если говорю что-то не то, просто я в AS пока не очень-то разбираюсь, а мыслю категориями сиплюсплюса):
Отнаследоваться от movieclip'а и создавать все клипы на основе этого класса. У него определить свойство isStopped, соответственно добавить методы что-то типа:

Код:
MyStop
{
isStopped=true;
stop();
}

MyPlay
{
isStopped=false;
play();
}
ну и т.д.

А вообще мне описанная задача кажется очень естественной, наверное каждый второй с ней сталкивается. Неужели нет стандартных решений?

Старый 20.08.2007, 13:07
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 14  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
ОК, а как Вы будете определять значение isStopped?
---------------------------------------
2 udaaf >>Хорошо, в таком случае, донеси до меня смысл

Тебе объяснить почему я сказал "из прототипа" ? Потому что в коде есть другая onEnterFrame, и я [попытался] указать на ту, что в прототипе.

Или объяснить, что я имею в виду под "не работает"
Здесь я могу ошибаться, поэтому и выразился неуверенно - "похоже не работает". Я вообще-то предположил, что после того как клип выполнил doInit() один раз и записался в листенеры, больше он этого делать не должен (простите за отсутствие слэнга), так как удаляется обработчик события, в котором и записан вызов этой функции doInit(). На деле же все клипы на каждый свой "кадр" посылают крики о помощи.
__________________
Reality.getBounds(this);

Старый 20.08.2007, 13:18
altyr вне форума Посмотреть профиль Отправить личное сообщение для altyr Найти все сообщения от altyr
  № 15  
Ответить с цитированием
altyr

Регистрация: Aug 2007
Сообщений: 13
Цитата:
ОК, а как Вы будете определять значение isStopped?
Ифом.
Не понял вопроса...

Старый 20.08.2007, 13:36
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 16  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Как Вы узнаете, играет клип или нет?
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 20.08.2007 в 13:38.
Старый 20.08.2007, 14:06
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 17  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Сообщение от Wolsh
Только знаешь, delete this.onEnterFrame из прототипа похоже не работает
Я бы с радостью не использовал бы onEnterFrame вобще. А на текущий могу предложить такую замену:
Код:
 
MovieClip.prototype.onEnterFrame = function () {
 if (!this.flag) {
  trace (this)
  this.flag = true;
  this.doInit ();
 }
};
И удалить this.onEnterFrame.
Или вариант Kikasso с this.onEnterFrame = null. Чтобы понять, почему этот работает, стоит прочитать http://www.flash-mx.ru/forum/topic_show.pl?tid=1819
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.08.2007, 16:22
altyr вне форума Посмотреть профиль Отправить личное сообщение для altyr Найти все сообщения от altyr
  № 18  
Ответить с цитированием
altyr

Регистрация: Aug 2007
Сообщений: 13
Код:
Как Вы узнаете, играет клип или нет?
По умолчанию играет (isStopped==false)
Когда делаем ему MyStop - уже не играет (isStopped==true)
Когда надо узнать - ифом ( if(someClip.isStopped ... ) )

Или я опять не понял вопроса?

А как клипам назначить, что они, мол, другого класса (производного)?

Старый 20.08.2007, 16:34
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 19  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Да ведь Вы же сами описали проблему - вовсе не все клипы по-умолчанию играют. Я бы даже сказал, что в обычном проекте, не мультфильме, большинство-то как раз изначально не играет, а запускается при определенных условиях. Клипы-кнопки просто наилучший пример. И если Вы все их запустите, получите невероятный хаос.
__________________
Reality.getBounds(this);

Старый 20.08.2007, 17:30
altyr вне форума Посмотреть профиль Отправить личное сообщение для altyr Найти все сообщения от altyr
  № 20  
Ответить с цитированием
altyr

Регистрация: Aug 2007
Сообщений: 13
Цитата:
Сообщение от Wolsh
Да ведь Вы же сами описали проблему - вовсе не все клипы по-умолчанию играют. Я бы даже сказал, что в обычном проекте, не мультфильме, большинство-то как раз изначально не играет, а запускается при определенных условиях. Клипы-кнопки просто наилучший пример. И если Вы все их запустите, получите невероятный хаос.
Спасибо большое за помощь!

Хорошо, наследуем от movieclip'a - в этом классе объявляем злосчастное свойство isStopped
Уже от этого класса наследуем ещё - для кнопок (в конструкторе по умолчанию остановлен), для клипов (соответственно, запущен). Не вижу проблемы или я чего-то не учёл?

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

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

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


 


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


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