|
|
|||||
Регистрация: Jun 2010
Сообщений: 97
|
Код паузы звука не работает!
var sound:Sound = new Sound(); sound.loadSound("Van.mp3", true); sound.start(loop); var pausa:Boolean; pause_btn.onRelease = function(){ s_pos = sound.position; pausa = true; sound.stop(); } play_btn.onRelease = function(){ if(pausa){sound.start(s_pos);} else{sound.start();} pausa = false; } |
|
|||||
Модрон-ветеринар
|
1. Ошибка в несоответствии единиц измерения.
secondOffset должен быть в секундах А позиция считывается в миллисекундах: Sound.position property public position : Number [read-only] The number of milliseconds a sound has been playing... var sound:Sound = new Sound(); sound.loadSound("Van.mp3", true); sound.start(); // у вас тут было написано loop - к чему это было? Так ничего не зациклется. var pausa:Boolean ; pause_btn.onRelease = function() { s_pos = sound.position ; pausa = true ; sound.stop(); trace(sound.position); }; play_btn.onRelease = function() { if(pausa) { sound.start(s_pos/1000); //нюанс тут! } else { sound.start(); } pausa = false ; }; 3. Далее, некторые нюансы в использовании методов Sound. 3.1. Это можно не писать: (и даже вредно), еслиу вас true в , то есть звук потоковый. Звук начнет играть сам. Иначе старт может произойти два раза. 3.2. И наконец, если вам нужно зациклить звук, то конечный код будет такой: var sound:Sound = new Sound(); sound.loadSound("Van.mp3", true); sound.onSoundComplete = function () { sound.start(); }; var pausa:Boolean ; pause_btn.onRelease = function() { s_pos = sound.position; pausa = true ; sound.stop(); trace(sound.position); }; play_btn.onRelease = function() { if(pausa) { sound.start(s_pos/1000); } else { sound.start(); } pausa = false ; }; На будущее - не склеивайте уж так ваш код скобочка к скобочке - самим же неудобно, причесывать сперва приходится, чтобы разобраться. По типу Компилятору пофиг такое уплотнение, и производительности это не прибавит, крутизна кода от этого сомнительная, а читабельность кода никакая, тем более для потенциальных советчиков. Если хотите сократить, так иногда тернарный оператор годится:
__________________
Идите первым! Последний раз редактировалось mooncar; 28.03.2011 в 20:23. |
Часовой пояс GMT +4, время: 23:41. |
|
« Предыдущая тема | Следующая тема » |
|
|