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

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

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

Регистрация: May 2006
Сообщений: 52
По умолчанию play(); после stopDrag();

Есть анимация на таймлайне для экземпляра клипа, на котором стоит этот скрипт

Код AS1/AS2:
on (press) {
	startDrag(this, false, 0, 0, 550, 0);
	this.onMouseMove = function() {
		var targetFrame:Number;
		targetFrame = Math.round(_root.rooms._totalframes*this._x/550);
		_root.rooms.gotoAndPlay(targetFrame);
	};
}
on (release, rollOut, releaseOutside) {;
stopDrag();
delete this.onMouseMove;
this.parent.play();
}
Как после выполнения stopDrag(); возобновить его анимацию? Почему до драга анимация работает, а после - нет, и не запускается снова ни с помощью play(); ни с помощью gotoAndPlay(targetFrame);?

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

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

Старый 08.09.2009, 16:31
unused_name вне форума Посмотреть профиль Отправить личное сообщение для unused_name Посетить домашнюю страницу unused_name Найти все сообщения от unused_name
  № 3  
Ответить с цитированием
unused_name
 
Аватар для unused_name

Регистрация: May 2006
Сообщений: 52
Цитата:
Сообщение от Wolsh Посмотреть сообщение
потому что парент себе плей и уже давно на другом кадре, где этот код не действует, потому что объект, на котором он висит, прошел через десяток кейфреймов.
- если он "себе плей", то где анимация? И почему драг все еще действует, т.е. код вполне благополучно продолжает работать?

Цитата:
Сообщение от Wolsh Посмотреть сообщение
Вобщем, разберитесь, чем отличается мультфильм от программы. Представьте Ворд, написанный как анимацию в кадрах с переходами на нужный?
- спасибо за наводку, буду рыть в этом направлении, а то я не знал чем они отличаются. Лучше начать с Ворда? А где там таймлайн? А если серьезно - бред, лучше молчать чем так умничать.

Цитата:
Сообщение от Wolsh Посмотреть сообщение
Да еще и на мертвом языке-прародителе ActionScript.
- что конкретно тут самое мертвое? Некоторые вещи на ac2 делать гораздо быстрее и проще чем на ас3, тем более мне, дизайнеру.

Старый 08.09.2009, 17:35
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Самое мертвое тут написание кода на кнопках. Мертв не AS2, а устаревшие древние методы, наследованные от AS1. Слушайте, что вам говорят, и думайте. А про AS3 кстати ничего не сказали.
Если у вас спросят как у дизайнера совета, почему неправильно работают фильтры в 4-м Фотошопе, и как это исправить, тогда и карты вам в руки в подобной ситуации.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
- что конкретно тут самое мертвое? Некоторые вещи на ac2 делать гораздо быстрее и проще чем на ас3, тем более мне, дизайнеру.
У вас ac2 и не пахнет, это даже не ac1, а ac0.5
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 08.09.2009, 18:03
unused_name вне форума Посмотреть профиль Отправить личное сообщение для unused_name Посетить домашнюю страницу unused_name Найти все сообщения от unused_name
  № 6  
Ответить с цитированием
unused_name
 
Аватар для unused_name

Регистрация: May 2006
Сообщений: 52
Ок, ас0,5, договорились. Вы тут все крутые и продвинутые, а я в каменном веке. Я наивно полагаю что чем код короче - тем удобнее. Я конечно могу сделать все на ас3, используя, например, ЭТО, но мой ущербный путь позволит мне сделать все намного быстрее. Я придумал как обойти описанную проблему, там и проблемы то никакой не было по сути, убрал я анимацию с таймлайна и прибавляю/отнимаю значения "х" теперь, как и делал до этого всегда. Но вот почему анимация не запускалась все еще интересно, может кто все-таки знает? Драг её убивает как-то?

Старый 08.09.2009, 18:25
NoCD вне форума Посмотреть профиль Отправить личное сообщение для NoCD Найти все сообщения от NoCD
  № 7  
Ответить с цитированием
NoCD
 
Аватар для NoCD

Регистрация: Jan 2006
Адрес: Novosibirsk
Сообщений: 353
Тебе нужно анимированный клип перетащить с одного места на другой, с помощью драг? Во время переноса, анимация клипа должна останавливаться, а после драга запускаться снова?

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
а я в каменном веке. Я наивно полагаю что чем код короче - тем удобнее. Я конечно могу сделать все на ас3
Глаза откройте. От вас не требуют ас3, а говорят про банальный ас1, который такой же короткий, но удобнее по написанию и идеологии, чем код на кнопках. Многие просто игнорируют вопросы с кодом на кнопках, они не хотят в это копаться и создавать для себя проблемы.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 08.09.2009, 18:28
unused_name вне форума Посмотреть профиль Отправить личное сообщение для unused_name Посетить домашнюю страницу unused_name Найти все сообщения от unused_name
  № 9  
Ответить с цитированием
unused_name
 
Аватар для unused_name

Регистрация: May 2006
Сообщений: 52
Цитата:
Сообщение от NoCD Посмотреть сообщение
Тебе нужно анимированный клип перетащить с одного места на другой, с помощью драг? Во время переноса, анимация клипа должна останавливаться, а после драга запускаться снова?
- да, именно так. UPD Сорри, не совсем так, анимация этого клипа происходит на таймлайне родительского клипа, т.е. сам он статичен, а вот запустить снова анимацию родителя не удается.

Добавлено через 9 минут
Цитата:
Сообщение от iNils Посмотреть сообщение
Глаза откройте. От вас не требуют ас3, а говорят про банальный ас1, который такой же короткий, но удобнее по написанию и идеологии, чем код на кнопках. Многие просто игнорируют вопросы с кодом на кнопках, они не хотят в это копаться и создавать для себя проблемы.
- если убрать код со слайдера придется делать задержку при изменении координаты, и еще изменение этой задержки, что-бы получить движение с замедлением. Не то что-бы это очень сложно, но от этого код радувается раза в 3, и у меня больше шансов в нем запутаться. Я прекрасно воспринимаю логику програмирования, но у меня постоянно возникают проблемы с синтаксисом, поэтому так (через скрипты на кнопках и в кадрах) у меня получается все быстрее. Конечно это плохо, но пока это так.


Последний раз редактировалось unused_name; 08.09.2009 в 18:41.
Старый 08.09.2009, 18:41
NoCD вне форума Посмотреть профиль Отправить личное сообщение для NoCD Найти все сообщения от NoCD
  № 10  
Ответить с цитированием
NoCD
 
Аватар для NoCD

Регистрация: Jan 2006
Адрес: Novosibirsk
Сообщений: 353
так пойдет:
Код AS1/AS2:
attachMovie("mc","mc",100,{_x:100,_y:100})
mc.onPress = function(){this.stop();this.startDrag()}
mc.onRelease = function(){this.play();stopDrag();}
в клипе mc сделана простая анимация, которая во время драга останавливается, а в состоянии покоя продолжает воспроизводить анимацию.

Цитата:
UPD Сорри, не совсем так, анимация этого клипа происходит на таймлайне родительского клипа, т.е. сам он статичен, а вот запустить снова анимацию родителя не удается.
Если тебе нужно так же как в указанной ссылке, то я бы сделал так:

1.Сделал бы общий контейнер, где будут крутиться картинки. cont_c = createEmptyMovieClip("cont_c",1)
2.Для каждой картинки (внутри созданного общего контейнера) делал бы отдельный пустой клип, вставил бы анимированный бэкграунд туда. Назвал бы их как нибудь box_0, box_1, box_2 ... box_n
3. Прикрепил бы соответствующую картинку к этому box_n.
4. Двигал бы эти box через цикл.
А обратиться к box ничего сложного не составит.
например: cont_c.box_n.play() или cont_c.box_n.stop()
Вложения
Тип файла: zip drag.zip (4.9 Кб, 318 просмотров)


Последний раз редактировалось NoCD; 08.09.2009 в 19:08.
Создать новую тему Ответ Часовой пояс GMT +4, время: 13:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
stopdrag
Опции темы
Опции просмотра

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

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


 


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


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