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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.08.2008, 21:34
BBOY Ильич вне форума Посмотреть профиль Отправить личное сообщение для BBOY Ильич Найти все сообщения от BBOY Ильич
  № 11  
Ответить с цитированием
BBOY Ильич
 
Аватар для BBOY Ильич

Регистрация: Nov 2007
Сообщений: 256
Записей в блоге: 1
Отправить сообщение для BBOY Ильич с помощью ICQ
При наведении/убиранни курсора с кнопки лучше использовать continueTo

Старый 25.08.2008, 19:35
Maxson вне форума Посмотреть профиль Отправить личное сообщение для Maxson Найти все сообщения от Maxson
  № 12  
Ответить с цитированием
Maxson

Регистрация: Jun 2008
Сообщений: 14
Спасибо. Посмотрел:

- немогу остановить анимацию. На стоп(отдельно) реагирует летально. Внутри сего кода никак не реагирует.

- не вижу что бы она лупилась, просто зум.

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

Регистрация: Aug 2008
Адрес: 53 E
Сообщений: 60
-объясните, что для Вас означает "лупится"?
- не можете остановить анимацию где? Конкретно в том коде, который я привел ранее?

Старый 26.08.2008, 01:24
Maxson вне форума Посмотреть профиль Отправить личное сообщение для Maxson Найти все сообщения от Maxson
  № 14  
Ответить с цитированием
Maxson

Регистрация: Jun 2008
Сообщений: 14
-Лупится всмысле "loop" - идет по кругу.
-Ну я свою всунул анимацию, фреймы проще говоря.

Старый 26.08.2008, 01:27
Maxson вне форума Посмотреть профиль Отправить личное сообщение для Maxson Найти все сообщения от Maxson
  № 15  
Ответить с цитированием
Maxson

Регистрация: Jun 2008
Сообщений: 14
А вы подумали лупится типа увеличивается?

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

Регистрация: Aug 2008
Адрес: 53 E
Сообщений: 60
Раз всунули фреймы, значит создаете анимацию непрограммно. Ну ладно, коли так нравится, значит даю пример с минимумом ActionScript.

1. Открываем новый документ во Flash.
2. Рисуем красный квадратик (пусть он будет кнопкой)
3. Жмем F8 и сохраняем этот квадратик, как "мувик"
4. Заходим в этом "мувик" и создаем анимацию. Что Вы будете делать - Ваше дело. Я просто взял и стал вращать квадрат каждые 20 кадров на 45 градусов. В итоге - 81 фрейм. Учитывая первый фрейм бездействия кнопки (стоповый, когда никаких событий не происходит)
5. Когда анимацию закончили. Пропишем в первом фрейме мувиклипа команду "stop". В последнем - gotoAndPlay(2). Думаю не нужно объяснять для чего?
6. Помещаем муви клип на главную сцену. Даем ему имя в (Instance Of) button.
7. В первом кадре сцены прописываем код:

Код:
_root.button.onRollOver=function(){
_root.button.gotoAndPlay(2);
}

_root.button.onRollOut=function(){
st = setInterval(frm,20); // Устанавливаем интервал с которым будем вызывать //
//нужную функцию.
}

//Функция, которая определяет номер текущего фрейма, отнимает от 
//него единицу, до тех пор пока головка таймлайна не вернется в первый 
//кадр. 
function frm(){	
if (_root.button._currentframe!=1){
_root.button.gotoAndPlay(_root.button._currentframe - 1);
}
else{
clearInterval(st); // Убиваем интервал, когда головка вернулась в 
//первыйкадр таймлайна. 
}
}

_root.button.onRelease=function(){
getURL("http://flasher.ru", "GET");
}
Можете скачать мой исходник, если я здесь что-то непонятно объяснил.
Вложения
Тип файла: rar loop.rar (4.5 Кб, 61 просмотров)

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

Регистрация: Jun 2008
Сообщений: 14
Яснее быть и неможет. Но что бы ваш метод был без изъяна и новые поколения нупов вам были признательны, нам нужно как то решить проблему "срывания" анимации и последующего ее игнорирования на события ( во время анимации отведите резко курсор и опять наведите - поймете о чем я говорю )

Старый 26.08.2008, 22:37
skald вне форума Посмотреть профиль Отправить личное сообщение для skald Найти все сообщения от skald
  № 18  
Ответить с цитированием
skald
[+4 12.09.08]

Регистрация: Oct 2002
Адрес: SPb
Сообщений: 151
Отправить сообщение для skald с помощью ICQ
жесткач ... че проще нарисовать кнопку ?? и анимации к ней .... и вставить их в соответствующие поля. и наглядней и качественней результат ))))))))))))))

Старый 28.08.2008, 20:24
Maxson вне форума Посмотреть профиль Отправить личное сообщение для Maxson Найти все сообщения от Maxson
  № 19  
Ответить с цитированием
Maxson

Регистрация: Jun 2008
Сообщений: 14
skald, почисти клаву под кнопкой ноль, мне кажется она заедает.

Старый 14.02.2009, 21:44
pyatifan вне форума Посмотреть профиль Отправить личное сообщение для pyatifan Найти все сообщения от pyatifan
  № 20  
Ответить с цитированием
pyatifan

Регистрация: Mar 2007
Сообщений: 37
По умолчанию ненадежно

Пример пригодился, было очень радостно, только он ненадежный оказался на больших скоростях.

Понадобилось сделать вращение шестеренок (это в логотипе). При наведении мышки на клип, проигрываются кадры зацикленно. Но! При отведении курсора нужно чтобы анимация проигралась один раз до конца без зацикливания.

Если время вызова функции setInterval поставить больше 20, то возникают ошибки. Вот код:
Код:
_root.button.onRollOver=function(){
_root.button.gotoAndPlay(2);
}

_root.button.onRollOut=function(){
st = setInterval(frm,20); // Устанавливаем интервал с которым будем вызывать //
//нужную функцию.
}

//Функция, которая определяет номер текущего фрейма, отнимает от 
//него единицу, до тех пор пока головка таймлайна не вернется в первый 
//кадр. 
function frm(){	
if (_root.button._currentframe!=80){
_root.button.gotoAndPlay(_root.button._currentframe + 1);
}
else{
clearInterval(st); // Убиваем интервал, когда головка вернулась в 
//первыйкадр таймлайна.
_root.button.gotoAndStop(1); 
}
}

_root.button.onRelease=function(){
getURL("http://flasher.ru", "GET");
}
Может другой способ есть? Делитесь опытом, жду советов

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

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

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


 


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


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