Просмотр полной версии : Панорама 360', зацикливание
windrider
17.01.2013, 02:48
Возникли проблемы с "зацикливанием" обычной линейной панорамы. Помогите плииииз!! :)
/*
Я создал 3 совершенно одинаковых мувика r.mc, r.mc1, r.mc2
а для движения всей панорамы я поместил их в один мувик - r.
*/
_root.onLoad = function() {
r.mc._x = 0;
r.mc1._x -= r.mc1._width;
r.mc2._x += r.mc1._width;
}
// 0,5 ширины ролика
var a = 300;
// прокрутка панорамы
if (_xmouse > a) {
var b = (_xmouse-300) /30;
r._x -= b;
}
if (_xmouse < a) {
var b = 10 -(_xmouse /30);
r._x += b;
}
// условия зацикливания
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
http://www.flasher.ru/forum/picture.php?albumid=140&pictureid=333
windrider
17.01.2013, 03:15
А в чем проблема-то?
// условия зацикливания
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
Вот эти условия не работают(((
windrider, "HELP" и прочие выкрики писать в заголовке темы нельзя. Здесь всем нужна помощь.
А вот раскрыть содержание вопроса нужно. Это не рекомендация, это правило.
windrider
17.01.2013, 20:41
windrider, "HELP" и прочие выкрики писать в заголовке темы нельзя. Здесь всем нужна помощь.
А вот раскрыть содержание вопроса нужно. Это не рекомендация, это правило.
Sorry...
Добавлено через 20 минут
Уважаемые пользователи данного форума, кто-нибудь мне подскажет как решить эту проблему? Не думаю, что бы она относилась к разряду сложных;)
alex_195
18.01.2013, 01:35
Тебе необходимо отслеживать положение r.mc каким-то методом: onEnterFrame или setInteval
windrider
18.01.2013, 03:18
Тебе необходимо отслеживать положение r.mc каким-то методом: onEnterFrame или setInteval
Этого разве недостаточно? :)
r.mc._x
alex_195
18.01.2013, 14:23
Проверка условия
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
должна произойти по какому-то событию, которое должно отслеживаться, например:
r.mc.onEnterFrame = function() {
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
}
В таком случае в любой момент проигрывания ролика будет определяться положение твоего r.mc и в момент, когда r.mc._x > 1 сработает твое r._x -= r.mc._width.
windrider
18.01.2013, 17:23
Проверка условия
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
должна произойти по какому-то событию, которое должно отслеживаться, например:
r.mc.onEnterFrame = function() {
if (r.mc._x > 1) {
r._x -= r.mc._width;
}
if (r.mc2._x < 1) {
r._x += r.mc._width;
}
}
В таком случае в любой момент проигрывания ролика будет определяться положение твоего r.mc и в момент, когда r.mc._x > 1 сработает твое r._x -= r.mc._width.
не помогло :(
sasha88886
18.01.2013, 20:01
Условие ни когда не сроботает потому что ты в коде указал его параметры
_root.onLoad = function() {
r.mc._x = 0;
r.mc1._x -= r.mc1._width;
r.mc2._x += r.mc1._width;
}
И больше их не изменял потому. Как r.mc._x может быть больше 1 если ты указал что она 0. Потом как r.mc2._x может быть меньше 1 если ты указал что клип должен стоять на ширене r.mc1 что кдето 4800 так що условие не сроботает никогда. Единственный параметр который можеш приминить для проверка позиции это r._x только он изменяется по ходу прокрутки ролика и то с большим зазором в 30 пикселей
Эти все параметры переменных можно лигко проверть с помощу функции trace();
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.