Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Помогите сделать паузу корректно работающей (http://www.flasher.ru/forum/showthread.php?t=77086)

Vensky_Hor 17.03.2006 21:24

Помогите сделать паузу корректно работающей
 
Граждане, нужна помощь.
У меня есть нечто похожее на проигрыватель swf-роликов, так сказать "player". На нем расположены кнопки, в том числе и Pause(по нажатию - подгружаемый ролик то останавливается, то продолжает проигрываться с того места, на котором он остановился).
С остановкой содержимого проблем не возникло, а вот с продолжением воспроизведения - одна мука. Представьте, что у подгружаемого ролика 2 кадра: на каждом stop(). На первом из этих кадров кнпочка, по нажатию на которую фильм переходит на второй кадр.
Я загружаю ролик и он останавливается на своём первом кадре. Я жму на паузу (остановить) и жму опять (продолжить).
Так вот, если я из проигрывателя при прекращении паузы отдаю команду ролик.play(), то я проскакиваю stop() первого кадра и перехожу ко второму (а должна бы перейти только нажав на специальную кнопочку в этом ролике).

Может кто-то сталкивался? Как сие действо разрешить? :confused:

silin 17.03.2006 22:11

Цитата:

..если я из проигрывателя при прекращении паузы отдаю команду ролик.play(), то я проскакиваю stop() первого кадра..
не проскакиваешь: на самом деле команда stop() первого кадра уже выполнена, когда мувик на этот кадр попал..
Как сие разрешить?
для этого частного случая: при 'снятии c паузы' не давать команду play()
в общем виде все выглядит как-то нелепо: зачем дублировать внутреннее управление мувика во внешнем плеере? полюбому непонятки обеспечены, нужно знать/учесть все расклады..

Vensky_Hor 17.03.2006 22:16

К сожалению, дублирование управления и все другие нелепости - это данность. Частный случай мне не совсем подходит, поскольку у меня подгружаются разные ролики, я даже их всех не знаю. Мне прислали описанный пример и расстроились: "мол, не работает, а надо, чтоб на всём работало".
Всё равно, спасибо за ответ :)

PIRIS 18.03.2006 13:44

а если запомнить, на каком кадре остановился и сделать gotoAndPlay(n);, если не получиться то gotoAndPlay(n-1);

Vensky_Hor 18.03.2006 14:33

Запомнить и gotoAndPlay(n) - не помогло (может, у меня руки кривоваты, но я честно пыталась)
А вот с n-1 никак нельзя. Там не всегда плавная анимация (напимер, загружен фотоальбом с кнопками и в нем на каждом кадре своя фотка)

Madasan 18.03.2006 15:50

Есть же свойства _totalframes , _currentframe . Можно всегда определить на каком мы кадре сейчас, и перейти на нужный кадр.

Vensky_Hor 18.03.2006 16:38

Madasan! Я заранее не знаю на каких кадрах расставлены стопы, в том-то и гвоздь.

Madasan 18.03.2006 16:47

Сделай функцию, которая будет определять меняется ли текущий кадр, если нет, значит на кадре висит стоп.

silin 18.03.2006 20:35

дада, Madasan прав: так можно попробовать..
в 'плеере' смотрим стоит/игает мувик, ну и даем play или нет:
Код:

var targStop;
var cf=targ_mc._currentframe;
this.onEnterFrame=function(){
        targStop=targ_mc._currentframe==cf;
        cf=targ_mc._currentframe;
};
function targPlay(){
        if(!targStop) targ_mc.play();
}


Vensky_Hor 18.03.2006 20:51

Спасибо:)


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

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