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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

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

Регистрация: Aug 2005
Сообщений: 56
По умолчанию Привязка звука к событиям onEnerFrame

Имеется мувик, вся анимация сделана полностью на as с помощью события onEnterFrame ...
Требуется вставить в разных местах разные звуковые фрагменты ..
Вставляю прямо в код с помощью attachSound, при этом естесственно при каждом переходе кадра звук вызывается снова и накладывется сам на себя ..
Что придумать ?
Привязать звук нужно именно к событиям, генерируемым скриптом ..

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

Регистрация: Aug 2005
Сообщений: 26
проверять, звучит ли этот звук? если да, то либо выключить его, чтобы только второй звучал, либо вообще не включать во второй раз.

Старый 08.09.2005, 17:44
Жень Шень вне форума Посмотреть профиль Отправить личное сообщение для Жень Шень Найти все сообщения от Жень Шень
  № 3  
Ответить с цитированием
Жень Шень
 
Аватар для Жень Шень

блогер
Регистрация: Feb 2004
Адрес: Украина
Сообщений: 1,180
Записей в блоге: 3
Отправить сообщение для Жень Шень с помощью ICQ
а такой вариант подойдет?
Вложения
Тип файла: zip ginseng21.zip (75.6 Кб, 132 просмотров)

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

Регистрация: Aug 2005
Сообщений: 56
Нормальный такой вариант ))
Правда я читал, что скрипты на клипы вешать не рекомендуется, то есть весь скрипт в одном месте писать лучше, на первом кадре первого слоя ...
а что это за параметры у start и stop ?
которые 0,1 и 1,0 ?
я так понял на них все и замешано ..


Последний раз редактировалось Smirnoff; 08.09.2005 в 18:18.
Старый 09.09.2005, 11:13
Жень Шень вне форума Посмотреть профиль Отправить личное сообщение для Жень Шень Найти все сообщения от Жень Шень
  № 5  
Ответить с цитированием
Жень Шень
 
Аватар для Жень Шень

блогер
Регистрация: Feb 2004
Адрес: Украина
Сообщений: 1,180
Записей в блоге: 3
Отправить сообщение для Жень Шень с помощью ICQ
Привет!
Если нельзя, а сильно хочется, то можно!
Это относительно скриптов.
И, второе, не в обиду сказаное - научись работать с ХЭЛПом
Смотри, что там написано
Sound.start
Доступность
Flash Player 5.
Синтаксис
mySound.start([secondOffset, loop])
Параметры
secondOffset Необязательный параметр, который позволит Вам начать проигрывание звука с указанной точки. Например, если у Вас есть 30-и секундный звук и Вы хотите, чтобы он начал играть посредине, укажите 15 для параметра secondOffset. Звук не остановиться на 15 секунд, а сразу начнет играть с 15-и секундной метки.

loop Необязательный параметр, который позволит Вам указать, сколько раз нужно проиграть звук в цикле.

Если б сразу прочитал, то не получил дубляжей звука.
Успехов.

Старый 09.09.2005, 11:39
Smirnoff вне форума Посмотреть профиль Отправить личное сообщение для Smirnoff Найти все сообщения от Smirnoff
  № 6  
Ответить с цитированием
Smirnoff

Регистрация: Aug 2005
Сообщений: 56
Ок, сажусь за изучение хелпа ..
А вообще вот мой скрипт ..
Почему не работает спрашивается ??

// Задаю переменную для проверки играет ли звук

var p:Boolean = false;

// Запускаю 1-й звук
var s1:Sound = new Sound(h);
s1.attachSound("s1");
s1.start();

// Пошло движение объекта
onEnterFrame = function () {
ob._x--;

// Когда объект доезжает до нужной точки останавливаю 1-й и запускаю 2-й, причем 2-й проверяю,
//чтоб не запускался еще раз если он уже играет
if (ob._x<100) {
s1.stop();
if (p=false) {
s2.attachSound("s2");
s2.start();
p = true;
} else {
s2.stop();
}
}
};


Последний раз редактировалось Smirnoff; 09.09.2005 в 12:29.
Старый 09.09.2005, 11:48
Smirnoff вне форума Посмотреть профиль Отправить личное сообщение для Smirnoff Найти все сообщения от Smirnoff
  № 7  
Ответить с цитированием
Smirnoff

Регистрация: Aug 2005
Сообщений: 56
Скопировал твой скрипт один в один - все равно если он вставляется до onEnterFrame воспроизводится один раз как и положено ..
А если после - зацикливается ..
Разница только в том, что у тебя оно висит на клипе (на событии onClipEvent (enterFrame)), а у меня на кадре ..

==================================================
Soun = new Sound();
Soun.attachSound("s1");
Soun.start();
onEnterFrame = function () {
ob._x--;
if (ob._x<100) {
Soun.attachSound("s2");
Soun.start();
}
};


Последний раз редактировалось Smirnoff; 09.09.2005 в 12:41.
Старый 09.09.2005, 12:33
Жень Шень вне форума Посмотреть профиль Отправить личное сообщение для Жень Шень Найти все сообщения от Жень Шень
  № 8  
Ответить с цитированием
Жень Шень
 
Аватар для Жень Шень

блогер
Регистрация: Feb 2004
Адрес: Украина
Сообщений: 1,180
Записей в блоге: 3
Отправить сообщение для Жень Шень с помощью ICQ
var p:Boolean = false;
// Запускаю 1-й звук
var s1:Sound = new Sound(h);
// лучше var s1:Sound = new Sound(); тип параметра должен быть Number
s1.attachSound("s1");
s1.start();

// Пошло движение объекта
onEnterFrame = function () {
ob._x--;

// Когда объект доезжает до нужной точки останавливаю 1-й и запускаю 2-й, причем 2-й проверяю,
//чтоб не запускался еще раз если он уже играет
if (ob._x<100) {
s1.stop();
if (p=false) {
//if (p==false) { оператор сравнения ==, а не присвоения =
var s2:Sound = new Sound(p);// Аналогично Sound(h);
s2.attachSound("s2");
s2.start();
p = true;
} else {
s2.stop();
}
}
};[/quote]

А второй звук просто не успеет проиграться: р присвоена ИСТИНА при выполнении неравенства ob._x<100, а onEnterFrame сработает быстрее, чем проиграется второй звук. А тут его и стопишь: s2.stop();!!!
Далее, в s1.start(); нет параметров. Если звук короткий, то проиграет всего раз

Старый 09.09.2005, 12:38
Жень Шень вне форума Посмотреть профиль Отправить личное сообщение для Жень Шень Найти все сообщения от Жень Шень
  № 9  
Ответить с цитированием
Жень Шень
 
Аватар для Жень Шень

блогер
Регистрация: Feb 2004
Адрес: Украина
Сообщений: 1,180
Записей в блоге: 3
Отправить сообщение для Жень Шень с помощью ICQ
Цитата:
Сообщение от Smirnoff
Скопировал твой скрипт один в один - все равно если он вставляется до onEnterFrame воспроизводится один раз как и положено ..
А если после - зацикливается ..
Кинь исходник - на досуге посмотрю

Старый 09.09.2005, 13:04
Smirnoff вне форума Посмотреть профиль Отправить личное сообщение для Smirnoff Найти все сообщения от Smirnoff
  № 10  
Ответить с цитированием
Smirnoff

Регистрация: Aug 2005
Сообщений: 56
Исходник бы дал с удовольствием, но в нем картинок 10 штук и весит он 6 метров ..
А без картинок скрипт не работает, на них все условия завязаны ..
Могу только дать полный текст скрипта ...

Цитата:
Сообщение от Жень Шень
А второй звук просто не успеет проиграться: р присвоена ИСТИНА при выполнении неравенства ob._x<100, а onEnterFrame сработает быстрее, чем проиграется второй звук. А тут его и стопишь: s2.stop();!!!
И как же тогда можно условие поставить ?

Цитата:
Сообщение от Жень Шень
Далее, в s1.start(); нет параметров. Если звук короткий, то проиграет всего раз
Тут все нормально, один раз он и должен проигрываться ...

Боюсь показаться назойливым, но ситуация у меня такая ..
Нужно сделать ролик именно сегодня, причем не важно что за код у него внутри - лишь бы работал ...
А разбирать код по косточкам, когда над душой стоят и требуют результата - не сахар ..
Так что если не трудно - объясни ..
Вложения
Тип файла: txt код.txt (3.3 Кб, 45 просмотров)


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

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

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


 


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


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