Как создать автоматическую прокрутку для параллакса, а затем переключиться на управление мышью по событию? - PullRequest
0 голосов
/ 09 февраля 2012
stage.addEventListener(Event.ENTER_FRAME, loop, false);
function loop(e:Event): void
{

if(scene.x <= -10 && scene.x >= -9200)
    scene.x -= (this.mouseX - 490) * speed;

{
    if(scene.x > -10) scene.x = -10;
    if(scene.x < -9200) scene.x = -9200;
}

}

Итак, это весь код, который запускает событие Parallax. Я использую код от Laysmagazine.com от Ли Бримелоу.

Эффект параллакса прекрасно прокручивается, когда вы перемещаете мышь влево или вправо от сцены, но я хотел бы, чтобы он автоматически запускал эффект Параллакса при нагрузке, прокручивал немного вперед, затем останавливался и переключался на управление мышью.

События MouseOver не очень эффективны, так как с ним плохо работает прокрутка.

1 Ответ

0 голосов
/ 09 февраля 2012

Создать таймер для переключения с автоматической прокрутки на мышь. Добавьте прослушиватель событий к событию Enter Frame, который немного настраивает прокрутку каждого кадра. Когда таймер достигнет своего времени, удалите прослушиватель событий Enter Frame и запустите код прокрутки мыши.

Что-то вроде ...

stage.addEventListener(Event.ENTER_FRAME, intro, false);
var myTimer:Timer = new Timer(5000, 1); // 5 seconds (5000 milliseconds)
myTimer.addEventListener(TimerEvent.TIMER, switchToMouse);
myTimer.start();
function intro(e:Event):void
{
    scene.x += 15; // Or whatever value scrolls nicely.
}
function switchToMouse(e:Event):void
{
    stage.removeEventListener(Event.ENTER_FRAME, intro);
    stage.addEventListener(Event.ENTER_FRAME, loop);
}
function loop(e:Event): void
{
    // mouse code here
}
...